|
LLVM
4.0.0
|
This class provides the information for the target register banks. More...
#include <AArch64LegalizerInfo.h>
Public Member Functions | |
| AArch64LegalizerInfo () | |
Public Member Functions inherited from llvm::LegalizerInfo | |
| LegalizerInfo () | |
| void | computeTables () |
| Compute any ancillary tables needed to quickly decide how an operation should be handled. More... | |
| void | setAction (const InstrAspect &Aspect, LegalizeAction Action) |
| More friendly way to set an action for common types that have an LLT representation. More... | |
| void | setScalarInVectorAction (unsigned Opcode, LLT ScalarTy, LegalizeAction Action) |
| If an operation on a given vector type (say <M x="" in>="">) isn't explicitly specified, we proceed in 2 stages. More... | |
| std::pair< LegalizeAction, LLT > | getAction (const InstrAspect &Aspect) const |
| Determine what action should be taken to legalize the given generic instruction opcode, type-index and type. More... | |
| std::tuple< LegalizeAction, unsigned, LLT > | getAction (const MachineInstr &MI, const MachineRegisterInfo &MRI) const |
| Determine what action should be taken to legalize the given generic instruction. More... | |
| LLT | findLegalType (const InstrAspect &Aspect, std::function< LLT(LLT)> NextType) const |
| Iterate the given function (typically something like doubling the width) on Ty until we find a legal type for this operation. More... | |
| LLT | findLegalType (const InstrAspect &Aspect, LegalizeAction Action) const |
| Find what type it's actually OK to perform the given operation on, given the general approach we've decided to take. More... | |
| std::pair< LegalizeAction, LLT > | findLegalAction (const InstrAspect &Aspect, LegalizeAction Action) const |
| LegalizeAction | findInActions (const InstrAspect &Aspect) const |
Find the specified Aspect in the primary (explicitly set) Actions table. More... | |
| bool | isLegal (const MachineInstr &MI, const MachineRegisterInfo &MRI) const |
Additional Inherited Members | |
Public Types inherited from llvm::LegalizerInfo | |
| enum | LegalizeAction : std::uint8_t { Legal, NarrowScalar, WidenScalar, FewerElements, MoreElements, Lower, Libcall, Custom, Unsupported, NotFound } |
This class provides the information for the target register banks.
Definition at line 25 of file AArch64LegalizerInfo.h.
| AArch64LegalizerInfo::AArch64LegalizerInfo | ( | ) |
Definition at line 27 of file AArch64LegalizerInfo.cpp.
References llvm::LegalizerInfo::computeTables(), llvm::LegalizerInfo::Legal, llvm::LegalizerInfo::Libcall, llvm::LegalizerInfo::Lower, llvm::LLT::pointer(), llvm::LLT::scalar(), llvm::LegalizerInfo::setAction(), llvm::LLT::vector(), and llvm::LegalizerInfo::WidenScalar.
1.8.6