diff options
Diffstat (limited to 'llvm/lib/Target/AArch64/AArch64InstructionSelector.h')
-rw-r--r-- | llvm/lib/Target/AArch64/AArch64InstructionSelector.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64InstructionSelector.h b/llvm/lib/Target/AArch64/AArch64InstructionSelector.h index 3f38c9fcd1a..6c9339e05d6 100644 --- a/llvm/lib/Target/AArch64/AArch64InstructionSelector.h +++ b/llvm/lib/Target/AArch64/AArch64InstructionSelector.h @@ -15,6 +15,7 @@ #define LLVM_LIB_TARGET_AARCH64_AARCH64INSTRUCTIONSELECTOR_H #include "llvm/CodeGen/GlobalISel/InstructionSelector.h" +#include "llvm/CodeGen/MachineOperand.h" namespace llvm { @@ -23,6 +24,7 @@ class AArch64RegisterBankInfo; class AArch64RegisterInfo; class AArch64Subtarget; class AArch64TargetMachine; +class MachineOperand; class MachineFunction; class MachineRegisterInfo; @@ -45,11 +47,20 @@ private: /// the patterns that don't require complex C++. bool selectImpl(MachineInstr &I) const; + bool selectArithImmed(MachineOperand &Root, MachineOperand &Result1, + MachineOperand &Result2) const; + const AArch64TargetMachine &TM; const AArch64Subtarget &STI; const AArch64InstrInfo &TII; const AArch64RegisterInfo &TRI; const AArch64RegisterBankInfo &RBI; + +// We declare the temporaries used by selectImpl() in the class to minimize the +// cost of constructing placeholder values. +#define GET_GLOBALISEL_TEMPORARIES_DECL +#include "AArch64GenGlobalISel.inc" +#undef GET_GLOBALISEL_TEMPORARIES_DECL }; } // end namespace llvm |