diff options
Diffstat (limited to 'contrib/llvm/lib/Target/X86/X86.h')
-rw-r--r-- | contrib/llvm/lib/Target/X86/X86.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/contrib/llvm/lib/Target/X86/X86.h b/contrib/llvm/lib/Target/X86/X86.h index 2cb80a4..91201d1 100644 --- a/contrib/llvm/lib/Target/X86/X86.h +++ b/contrib/llvm/lib/Target/X86/X86.h @@ -21,7 +21,10 @@ namespace llvm { class FunctionPass; class ImmutablePass; +class InstructionSelector; class PassRegistry; +class X86RegisterBankInfo; +class X86Subtarget; class X86TargetMachine; /// This pass converts a legalized DAG into a X86-specific DAG, ready for @@ -80,6 +83,9 @@ FunctionPass *createX86WinEHStatePass(); /// the MachineInstr to MC. FunctionPass *createX86ExpandPseudoPass(); +/// This pass converts X86 cmov instructions into branch when profitable. +FunctionPass *createX86CmovConverterPass(); + /// Return a Machine IR pass that selectively replaces /// certain byte and word instructions by equivalent 32 bit instructions, /// in order to eliminate partial register usage, false dependences on @@ -92,6 +98,10 @@ void initializeFixupBWInstPassPass(PassRegistry &); /// encoding when possible in order to reduce code size. FunctionPass *createX86EvexToVexInsts(); +InstructionSelector *createX86InstructionSelector(const X86TargetMachine &TM, + X86Subtarget &, + X86RegisterBankInfo &); + void initializeEvexToVexInstPassPass(PassRegistry &); } // End llvm namespace |