|
LLVM
4.0.0
|
#include "X86.h"#include "X86CallingConv.h"#include "X86InstrBuilder.h"#include "X86InstrInfo.h"#include "X86MachineFunctionInfo.h"#include "X86RegisterInfo.h"#include "X86Subtarget.h"#include "X86TargetMachine.h"#include "llvm/Analysis/BranchProbabilityInfo.h"#include "llvm/CodeGen/FastISel.h"#include "llvm/CodeGen/FunctionLoweringInfo.h"#include "llvm/CodeGen/MachineConstantPool.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/IR/CallSite.h"#include "llvm/IR/CallingConv.h"#include "llvm/IR/DebugInfo.h"#include "llvm/IR/DerivedTypes.h"#include "llvm/IR/GetElementPtrTypeIterator.h"#include "llvm/IR/GlobalAlias.h"#include "llvm/IR/GlobalVariable.h"#include "llvm/IR/Instructions.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/IR/Operator.h"#include "llvm/MC/MCAsmInfo.h"#include "llvm/MC/MCSymbol.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Target/TargetOptions.h"#include "X86GenFastISel.inc"#include "X86GenCallingConv.inc"Go to the source code of this file.
Namespaces | |
| llvm | |
| Compute iterated dominance frontiers using a linear time algorithm. | |
Functions | |
| static std::pair < X86::CondCode, bool > | getX86ConditionCode (CmpInst::Predicate Predicate) |
| static std::pair< unsigned, bool > | getX86SSEConditionCode (CmpInst::Predicate Predicate) |
| static unsigned | X86ChooseCmpOpcode (EVT VT, const X86Subtarget *Subtarget) |
| static unsigned | X86ChooseCmpImmediateOpcode (EVT VT, const ConstantInt *RHSC) |
| If we have a comparison with RHS as the RHS of the comparison, return an opcode that works for the compare (e.g. More... | |
| static unsigned | computeBytesPoppedByCalleeForSRet (const X86Subtarget *Subtarget, CallingConv::ID CC, ImmutableCallSite *CS) |
|
static |
Definition at line 3096 of file X86FastISel.cpp.
References llvm::CallSiteBase< FunTy, BBTy, ValTy, UserTy, UseTy, InstrTy, CallTy, InvokeTy, IterTy >::arg_empty(), llvm::CallingConv::Fast, llvm::X86Subtarget::getTargetTriple(), llvm::CallingConv::GHC, llvm::CallingConv::HiPE, llvm::X86Subtarget::is64Bit(), llvm::Triple::isOSMSVCRT(), llvm::X86Subtarget::isTargetMCU(), and llvm::CallSiteBase< FunTy, BBTy, ValTy, UserTy, UseTy, InstrTy, CallTy, InvokeTy, IterTy >::paramHasAttr().
|
static |
Definition at line 184 of file X86FastISel.cpp.
References llvm::X86::COND_A, llvm::X86::COND_AE, llvm::X86::COND_B, llvm::X86::COND_BE, llvm::X86::COND_E, llvm::X86::COND_G, llvm::X86::COND_GE, llvm::X86::COND_INVALID, llvm::X86::COND_L, llvm::X86::COND_LE, llvm::X86::COND_NE, llvm::X86::COND_NP, llvm::X86::COND_P, llvm::CmpInst::FCMP_OEQ, llvm::CmpInst::FCMP_OGE, llvm::CmpInst::FCMP_OGT, llvm::CmpInst::FCMP_OLE, llvm::CmpInst::FCMP_OLT, llvm::CmpInst::FCMP_ONE, llvm::CmpInst::FCMP_ORD, llvm::CmpInst::FCMP_UEQ, llvm::CmpInst::FCMP_UGE, llvm::CmpInst::FCMP_UGT, llvm::CmpInst::FCMP_ULE, llvm::CmpInst::FCMP_ULT, llvm::CmpInst::FCMP_UNE, llvm::CmpInst::FCMP_UNO, llvm::CmpInst::ICMP_EQ, llvm::CmpInst::ICMP_NE, llvm::CmpInst::ICMP_SGE, llvm::CmpInst::ICMP_SGT, llvm::CmpInst::ICMP_SLE, llvm::CmpInst::ICMP_SLT, llvm::CmpInst::ICMP_UGE, llvm::CmpInst::ICMP_UGT, llvm::CmpInst::ICMP_ULE, llvm::CmpInst::ICMP_ULT, and LLVM_FALLTHROUGH.
|
static |
Definition at line 222 of file X86FastISel.cpp.
References llvm::CmpInst::FCMP_OEQ, llvm::CmpInst::FCMP_OGE, llvm::CmpInst::FCMP_OGT, llvm::CmpInst::FCMP_OLE, llvm::CmpInst::FCMP_OLT, llvm::CmpInst::FCMP_ONE, llvm::CmpInst::FCMP_ORD, llvm::CmpInst::FCMP_UEQ, llvm::CmpInst::FCMP_UGE, llvm::CmpInst::FCMP_UGT, llvm::CmpInst::FCMP_ULE, llvm::CmpInst::FCMP_ULT, llvm::CmpInst::FCMP_UNE, llvm::CmpInst::FCMP_UNO, LLVM_FALLTHROUGH, and llvm_unreachable.
|
static |
If we have a comparison with RHS as the RHS of the comparison, return an opcode that works for the compare (e.g.
CMP32ri) otherwise return 0.
Definition at line 1393 of file X86FastISel.cpp.
References llvm::ConstantInt::getSExtValue(), llvm::EVT::getSimpleVT(), llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, llvm::isInt< 32 >(), llvm::isInt< 8 >(), and llvm::MVT::SimpleTy.
|
static |
Definition at line 1373 of file X86FastISel.cpp.
References llvm::MVT::f32, llvm::MVT::f64, llvm::EVT::getSimpleVT(), llvm::X86Subtarget::hasAVX(), llvm::X86Subtarget::hasSSE1(), llvm::X86Subtarget::hasSSE2(), llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, and llvm::MVT::SimpleTy.
1.8.6