LLVM: lib/Target/Lanai/LanaiISelLowering.cpp File Reference (original) (raw)

Go to the source code of this file.

Macros
#define DEBUG_TYPE "lanai-lower"
Functions
static bool CC_Lanai32_VarArg (unsigned ValNo, MVT ValVT, MVT LocVT, CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags, Type *OrigTy, CCState &State)
static LPCC::CondCode IntCondCCodeToICC (SDValue CC, const SDLoc &DL, SDValue &RHS, SelectionDAG &DAG)
static bool isZeroOrAllOnes (SDValue N, bool AllOnes)
static bool isConditionalZeroOrAllOnes (SDNode *N, bool AllOnes, SDValue &CC, bool &Invert, SDValue &OtherOp, SelectionDAG &DAG)
static SDValue combineSelectAndUse (SDNode *N, SDValue Slct, SDValue OtherOp, TargetLowering::DAGCombinerInfo &DCI, bool AllOnes)
static SDValue combineSelectAndUseCommutative (SDNode *N, TargetLowering::DAGCombinerInfo &DCI, bool AllOnes)
static SDValue PerformSUBCombine (SDNode *N, TargetLowering::DAGCombinerInfo &DCI)
Variables
static cl::opt< int > LanaiLowerConstantMulThreshold ("lanai-constant-mul-threshold", cl::Hidden, cl::desc("Maximum number of instruction to generate when lowering constant " "multiplication instead of calling library function [default=14]"), cl::init(14))

DEBUG_TYPE

#define DEBUG_TYPE "lanai-lower"

CC_Lanai32_VarArg()

combineSelectAndUse()

combineSelectAndUseCommutative()

IntCondCCodeToICC()

Definition at line 785 of file LanaiISelLowering.cpp.

References llvm::cast(), DL, llvm::dyn_cast(), llvm::SelectionDAG::getConstant(), llvm::LPCC::ICC_EQ, llvm::LPCC::ICC_GE, llvm::LPCC::ICC_GT, llvm::LPCC::ICC_LE, llvm::LPCC::ICC_LT, llvm::LPCC::ICC_MI, llvm::LPCC::ICC_NE, llvm::LPCC::ICC_PL, llvm::LPCC::ICC_UGE, llvm::LPCC::ICC_UGT, llvm::LPCC::ICC_ULE, llvm::LPCC::ICC_ULT, llvm_unreachable, RHS, llvm::ISD::SETEQ, llvm::ISD::SETGE, llvm::ISD::SETGT, llvm::ISD::SETLE, llvm::ISD::SETLT, llvm::ISD::SETNE, llvm::ISD::SETO, llvm::ISD::SETOEQ, llvm::ISD::SETOGE, llvm::ISD::SETOGT, llvm::ISD::SETOLE, llvm::ISD::SETOLT, llvm::ISD::SETONE, llvm::ISD::SETUEQ, llvm::ISD::SETUGE, llvm::ISD::SETUGT, llvm::ISD::SETULE, llvm::ISD::SETULT, llvm::ISD::SETUNE, and llvm::ISD::SETUO.

Referenced by llvm::LanaiTargetLowering::LowerBR_CC(), LowerBR_CC(), llvm::LanaiTargetLowering::LowerSELECT_CC(), LowerSELECT_CC(), and llvm::LanaiTargetLowering::LowerSETCC().

isConditionalZeroOrAllOnes()

isZeroOrAllOnes()

PerformSUBCombine()

LanaiLowerConstantMulThreshold

cl::opt< int > LanaiLowerConstantMulThreshold("lanai-constant-mul-threshold", cl::Hidden, cl::desc("Maximum number of instruction to generate when lowering constant " "multiplication instead of calling library function [default=14]"), cl::init(14)) ( "lanai-constant-mul-threshold" , cl::Hidden , cl::desc("Maximum number of instruction to generate when lowering constant " "multiplication instead of calling library function [default=14]") , cl::init(14) ) static