LLVM
8.0.1
|
#include "llvm/Analysis/InstructionSimplify.h"
Public Member Functions | |
SimplifyQuery (const DataLayout &DL, const Instruction *CXTI=nullptr) | |
SimplifyQuery (const DataLayout &DL, const TargetLibraryInfo *TLI, const DominatorTree *DT=nullptr, AssumptionCache *AC=nullptr, const Instruction *CXTI=nullptr, bool UseInstrInfo=true) | |
SimplifyQuery | getWithInstruction (Instruction *I) const |
Public Attributes | |
const DataLayout & | DL |
const TargetLibraryInfo * | TLI = nullptr |
const DominatorTree * | DT = nullptr |
AssumptionCache * | AC = nullptr |
const Instruction * | CxtI = nullptr |
const InstrInfoQuery | IIQ |
Definition at line 90 of file InstructionSimplify.h.
|
inline |
Definition at line 102 of file InstructionSimplify.h.
|
inline |
Definition at line 105 of file InstructionSimplify.h.
|
inline |
Definition at line 110 of file InstructionSimplify.h.
References llvm::AMDGPU::HSAMD::Kernel::Key::Args, CxtI, llvm::getBestSimplifyQuery(), I, llvm::InstrInfoQuery::isExact(), llvm::BitmaskEnumDetail::Mask(), llvm::recursivelySimplifyInstruction(), llvm::replaceAndRecursivelySimplify(), llvm::SimplifyAddInst(), llvm::SimplifyAndInst(), llvm::SimplifyAShrInst(), llvm::SimplifyBinOp(), llvm::SimplifyCall(), llvm::SimplifyCastInst(), llvm::SimplifyCmpInst(), llvm::SimplifyExtractElementInst(), llvm::SimplifyExtractValueInst(), llvm::SimplifyFAddInst(), llvm::SimplifyFCmpInst(), llvm::SimplifyFDivInst(), llvm::SimplifyFMulInst(), llvm::SimplifyFPBinOp(), llvm::SimplifyFRemInst(), llvm::SimplifyFSubInst(), llvm::SimplifyGEPInst(), llvm::SimplifyICmpInst(), llvm::SimplifyInsertElementInst(), llvm::SimplifyInsertValueInst(), llvm::SimplifyInstruction(), llvm::SimplifyLShrInst(), llvm::SimplifyMulInst(), llvm::SimplifyOrInst(), llvm::SimplifySDivInst(), llvm::SimplifySelectInst(), llvm::SimplifyShlInst(), llvm::SimplifyShuffleVectorInst(), llvm::SimplifySRemInst(), llvm::SimplifySubInst(), llvm::SimplifyUDivInst(), llvm::SimplifyURemInst(), llvm::SimplifyXorInst(), and T.
Referenced by llvm::SimplifyInstruction(), and simplifyLoopInst().
AssumptionCache* llvm::SimplifyQuery::AC = nullptr |
Definition at line 94 of file InstructionSimplify.h.
Referenced by SimplifyAndInst(), SimplifyAShrInst(), SimplifyICmpInst(), simplifyICmpWithBinOp(), simplifyICmpWithZero(), llvm::SimplifyInstruction(), SimplifyLShrInst(), SimplifyOrInst(), SimplifyRightShift(), SimplifyShift(), and SimplifySubInst().
const Instruction* llvm::SimplifyQuery::CxtI = nullptr |
Definition at line 95 of file InstructionSimplify.h.
Referenced by getWithInstruction(), SimplifyAndInst(), SimplifyAShrInst(), SimplifyICmpInst(), simplifyICmpWithBinOp(), simplifyICmpWithZero(), llvm::SimplifyInstruction(), SimplifyLShrInst(), SimplifyOrInst(), SimplifyRightShift(), SimplifySelectInst(), SimplifyShift(), SimplifySubInst(), and simplifyUnaryIntrinsic().
const DataLayout& llvm::SimplifyQuery::DL |
Definition at line 91 of file InstructionSimplify.h.
Referenced by foldOrCommuteConstant(), SimplifyAndInst(), SimplifyAShrInst(), simplifyBinaryIntrinsic(), SimplifyCastInst(), SimplifyFCmpInst(), SimplifyGEPInst(), SimplifyICmpInst(), simplifyICmpOfBools(), simplifyICmpWithBinOp(), simplifyICmpWithZero(), llvm::SimplifyInstruction(), SimplifyLShrInst(), SimplifyOrInst(), SimplifyRightShift(), SimplifySelectInst(), SimplifyShift(), SimplifySubInst(), and SimplifyWithOpReplaced().
const DominatorTree* llvm::SimplifyQuery::DT = nullptr |
Definition at line 93 of file InstructionSimplify.h.
Referenced by SimplifyAndInst(), SimplifyAShrInst(), SimplifyICmpInst(), simplifyICmpWithBinOp(), simplifyICmpWithZero(), llvm::SimplifyInstruction(), SimplifyLShrInst(), SimplifyOrInst(), SimplifyPHINode(), SimplifyRightShift(), SimplifyShift(), SimplifySubInst(), ThreadBinOpOverPHI(), and ThreadCmpOverPHI().
const InstrInfoQuery llvm::SimplifyQuery::IIQ |
Definition at line 100 of file InstructionSimplify.h.
Referenced by simplifyAndOrOfCmps(), SimplifyAShrInst(), simplifyDiv(), SimplifyICmpInst(), simplifyICmpWithBinOp(), simplifyICmpWithZero(), llvm::SimplifyInstruction(), SimplifyMulInst(), simplifyRem(), SimplifyShlInst(), and SimplifyWithOpReplaced().
const TargetLibraryInfo* llvm::SimplifyQuery::TLI = nullptr |
Definition at line 92 of file InstructionSimplify.h.
Referenced by runImpl(), simplifyAndOrOfCmps(), SimplifyCall(), SimplifyFAddInst(), SimplifyFCmpInst(), SimplifyFSubInst(), SimplifyICmpInst(), llvm::SimplifyInstruction(), simplifyUnaryIntrinsic(), and SimplifyWithOpReplaced().