LLVM
8.0.1
|
#include "llvm/CodeGen/TargetLowering.h"
Public Member Functions | |
DAGCombinerInfo (SelectionDAG &dag, CombineLevel level, bool cl, void *dc) | |
bool | isBeforeLegalize () const |
bool | isBeforeLegalizeOps () const |
bool | isAfterLegalizeDAG () const |
CombineLevel | getDAGCombineLevel () |
bool | isCalledByLegalizer () const |
void | AddToWorklist (SDNode *N) |
SDValue | CombineTo (SDNode *N, ArrayRef< SDValue > To, bool AddTo=true) |
SDValue | CombineTo (SDNode *N, SDValue Res, bool AddTo=true) |
SDValue | CombineTo (SDNode *N, SDValue Res0, SDValue Res1, bool AddTo=true) |
void | CommitTargetLoweringOpt (const TargetLoweringOpt &TLO) |
Public Attributes | |
void * | DC |
CombineLevel | Level |
bool | CalledByLegalizer |
SelectionDAG & | DAG |
Definition at line 3011 of file TargetLowering.h.
|
inline |
Definition at line 3019 of file TargetLowering.h.
void TargetLowering::DAGCombinerInfo::AddToWorklist | ( | SDNode * | N | ) |
Definition at line 651 of file DAGCombiner.cpp.
References CombineTo(), and DC.
Referenced by combineGatherScatter(), combineVSelectToBLENDV(), distributeOpThroughSelect(), llvm::PPCTargetLowering::expandVSXLoadForLE(), llvm::PPCTargetLowering::expandVSXStoreForLE(), foldFreeOpFromSelect(), PerformARMBUILD_VECTORCombine(), PerformBUILD_VECTORCombine(), PerformInsertEltCombine(), llvm::AMDGPUTargetLowering::performMulhsCombine(), llvm::AMDGPUTargetLowering::performMulhuCombine(), PerformSTORECombine(), llvm::AMDGPUTargetLowering::performTruncateCombine(), llvm::TargetLowering::SimplifyDemandedBits(), llvm::TargetLowering::SimplifyDemandedVectorElts(), llvm::TargetLowering::SimplifySetCC(), and llvm::AMDGPUTargetLowering::splitBinaryBitConstantOpImpl().
SDValue TargetLowering::DAGCombinerInfo::CombineTo | ( | SDNode * | N, |
ArrayRef< SDValue > | To, | ||
bool | AddTo = true |
||
) |
Definition at line 656 of file DAGCombiner.cpp.
References DC, and llvm::ArrayRef< T >::size().
Referenced by AddToWorklist(), combineADC(), CombineBaseUpdate(), combineLoad(), combineMaskedLoad(), combineMaskedLoadConstantMask(), CombineTo(), CombineVLDDUP(), PerformAddcSubcCombine(), PerformANDCombine(), performBRCONDCombine(), llvm::RISCVTargetLowering::PerformDAGCombine(), llvm::PPCTargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::performLoadCombine(), PerformMULCombine(), performNEONPostLDSTCombine(), PerformORCombineToBFI(), performPostLD1Combine(), PerformVMOVRRDCombine(), and reduceMaskedLoadToScalarLoad().
Definition at line 661 of file DAGCombiner.cpp.
References CombineTo(), and DC.
SDValue TargetLowering::DAGCombinerInfo::CombineTo | ( | SDNode * | N, |
SDValue | Res0, | ||
SDValue | Res1, | ||
bool | AddTo = true |
||
) |
Definition at line 666 of file DAGCombiner.cpp.
References CommitTargetLoweringOpt(), and DC.
void TargetLowering::DAGCombinerInfo::CommitTargetLoweringOpt | ( | const TargetLoweringOpt & | TLO | ) |
Definition at line 671 of file DAGCombiner.cpp.
References DC, llvm::SelectionDAG::DeleteNode(), llvm::SDValue::getNode(), llvm::SDNode::getNumValues(), llvm::SDNode::hasOneUse(), and llvm::SDNode::ops().
Referenced by CombineTo(), combineVSelectToBLENDV(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::AMDGPUTargetLowering::PerformDAGCombine(), performTBISimplification(), llvm::TargetLowering::SimplifyDemandedBits(), and llvm::TargetLowering::SimplifyDemandedVectorElts().
|
inline |
Definition at line 3027 of file TargetLowering.h.
Referenced by llvm::AMDGPUTargetLowering::combineFMinMaxLegacy(), and llvm::AMDGPUTargetLowering::PerformDAGCombine().
|
inline |
Definition at line 3024 of file TargetLowering.h.
References llvm::AfterLegalizeDAG.
Referenced by combineShiftRightLogical(), and llvm::PPCTargetLowering::PerformDAGCombine().
|
inline |
Definition at line 3022 of file TargetLowering.h.
References llvm::BeforeLegalizeTypes.
Referenced by AddCombineBUILD_VECTORToVPADDL(), CombineANDShift(), combineBitcast(), combineCMov(), combineMul(), combineOrCmpEqZeroToCtlzSrl(), combineShuffle(), combineVSelectToBLENDV(), combineVSelectWithAllOnesOrZeros(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), PerformADDECombine(), llvm::RISCVTargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::PerformDAGCombine(), llvm::SITargetLowering::PerformDAGCombine(), llvm::PPCTargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::performLoadCombine(), PerformMULCombine(), performNEONPostLDSTCombine(), performSelectCombine(), PerformSHLSimplify(), llvm::AMDGPUTargetLowering::performStoreCombine(), performTBISimplification(), PerformVLDCombine(), llvm::TargetLowering::SimplifyDemandedBits(), llvm::TargetLowering::SimplifyDemandedVectorElts(), and llvm::TargetLowering::SimplifySetCC().
|
inline |
Definition at line 3023 of file TargetLowering.h.
References llvm::AfterLegalizeVectorOps.
Referenced by combineAnd(), combineCastedMaskArithmetic(), combineCMov(), combineExtractSubvector(), combineExtractWithShuffle(), combineGatherScatter(), combineInsertSubvector(), combineLoad(), combineOr(), combineSelect(), combineSext(), combineShuffle(), combineToExtendBoolVectorInReg(), combineToExtendVectorInReg(), combineVSelectToBLENDV(), combineXor(), combineZext(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::TargetLowering::isExtendedTrueVal(), performADDCombine(), performAddSubLongCombine(), performANDCombine(), performBitcastCombine(), performCMovFPCombine(), performConcatVectorsCombine(), llvm::R600TargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::PerformDAGCombine(), performDivRemCombine(), performExtendCombine(), performFDivCombine(), performFpToIntCombine(), performMulCombine(), performORCombine(), performPostLD1Combine(), performSELECTCombine(), performSHLCombine(), performSUBCombine(), performTBISimplification(), performXorCombine(), llvm::TargetLowering::SimplifyDemandedBits(), llvm::TargetLowering::SimplifyDemandedVectorElts(), llvm::TargetLowering::SimplifySetCC(), tryCombineFixedPointConvert(), tryCombineLongOpWithDup(), and XFormVExtractWithShuffleIntoLoad().
|
inline |
Definition at line 3028 of file TargetLowering.h.
References N.
Referenced by CombineANDShift(), llvm::AMDGPUTargetLowering::combineFMinMaxLegacy(), combineMul(), PerformMULCombine(), performNEONPostLDSTCombine(), PerformVLDCombine(), and llvm::TargetLowering::SimplifySetCC().
bool llvm::TargetLowering::DAGCombinerInfo::CalledByLegalizer |
Definition at line 3014 of file TargetLowering.h.
SelectionDAG& llvm::TargetLowering::DAGCombinerInfo::DAG |
Definition at line 3017 of file TargetLowering.h.
Referenced by AddCombineBUILD_VECTORToVPADDL(), AddCombineTo64bitMLAL(), AddCombineTo64BitSMLAL16(), AddCombineTo64bitUMAAL(), AddCombineToVPADD(), AddCombineVUZPToVPADDL(), CombineANDShift(), CombineBaseUpdate(), llvm::AMDGPUTargetLowering::combineFMinMaxLegacy(), combineSelectAndUse(), CombineVLDDUP(), distributeOpThroughSelect(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::expandVSXLoadForLE(), llvm::PPCTargetLowering::expandVSXStoreForLE(), foldFreeOpFromSelect(), llvm::SystemZTargetLowering::getTargetNodeName(), llvm::TargetLowering::isExtendedTrueVal(), PerformADDCombineWithOperands(), PerformAddcSubcCombine(), PerformAddeSubeCombine(), PerformANDCombine(), PerformARMBUILD_VECTORCombine(), llvm::AMDGPUTargetLowering::performAssertSZExtCombine(), PerformBFICombine(), llvm::SparcTargetLowering::PerformBITCASTCombine(), PerformBUILD_VECTORCombine(), llvm::AMDGPUTargetLowering::performCtlz_CttzCombine(), llvm::R600TargetLowering::PerformDAGCombine(), llvm::MipsSETargetLowering::PerformDAGCombine(), llvm::RISCVTargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::PerformDAGCombine(), llvm::AArch64TargetLowering::PerformDAGCombine(), llvm::ARMTargetLowering::PerformDAGCombine(), llvm::SITargetLowering::PerformDAGCombine(), llvm::MipsTargetLowering::PerformDAGCombine(), llvm::PPCTargetLowering::PerformDAGCombine(), llvm::X86TargetLowering::PerformDAGCombine(), llvm::AMDGPUTargetLowering::performFAbsCombine(), llvm::AMDGPUTargetLowering::performFNegCombine(), PerformInsertEltCombine(), performIntrinsicCombine(), llvm::AMDGPUTargetLowering::performLoadCombine(), PerformLOADCombine(), llvm::AMDGPUTargetLowering::performMulCombine(), PerformMULCombine(), llvm::AMDGPUTargetLowering::performMulhsCombine(), llvm::AMDGPUTargetLowering::performMulhuCombine(), llvm::AMDGPUTargetLowering::performMulLoHi24Combine(), performORCombine(), PerformORCombine(), PerformORCombineToBFI(), PerformORCombineToSMULWBT(), performPostLD1Combine(), llvm::AMDGPUTargetLowering::performRcpCombine(), PerformREMCombine(), llvm::AMDGPUTargetLowering::performSelectCombine(), performSelectCombine(), PerformSETCCCombine(), llvm::AMDGPUTargetLowering::performShlCombine(), PerformSHLSimplify(), llvm::AMDGPUTargetLowering::performSraCombine(), llvm::AMDGPUTargetLowering::performSrlCombine(), performSRLCombine(), llvm::AMDGPUTargetLowering::performStoreCombine(), PerformSTORECombine(), llvm::AMDGPUTargetLowering::performTruncateCombine(), PerformVDUPCombine(), PerformVDUPLANECombine(), PerformVMOVRRDCombine(), PerformVMULCombine(), PerformXORCombine(), llvm::TargetLowering::SimplifyDemandedBits(), llvm::TargetLowering::SimplifyDemandedVectorElts(), simplifyI24(), llvm::TargetLowering::SimplifySetCC(), llvm::AMDGPUTargetLowering::splitBinaryBitConstantOpImpl(), tryCombineToBSL(), tryCombineToEXTR(), and TryMULWIDECombine().
void* llvm::TargetLowering::DAGCombinerInfo::DC |
Definition at line 3012 of file TargetLowering.h.
CombineLevel llvm::TargetLowering::DAGCombinerInfo::Level |
Definition at line 3013 of file TargetLowering.h.