LLVM: llvm::AMDGPULibCalls Class Reference (original) (raw)
| Public Member Functions | |
|---|---|
| AMDGPULibCalls ()=default | |
| bool | fold (CallInst *CI) |
| void | initFunction (Function &F, FunctionAnalysisManager &FAM) |
| void | initNativeFuncs () |
| bool | useNative (CallInst *CI) |
Definition at line 48 of file AMDGPULibCalls.cpp.
| llvm::AMDGPULibCalls::AMDGPULibCalls ( ) | default |
|---|
◆ canIncreasePrecisionOfConstantFold()
◆ fold()
Definition at line 635 of file AMDGPULibCalls.cpp.
References llvm::FastMathFlags::approxFunc(), B(), Call, canIncreasePrecisionOfConstantFold(), llvm::cannotBeOrderedLessThanZero(), llvm::cast(), llvm::dbgs(), llvm::dyn_cast(), llvm::AMDGPULibFuncBase::EI_CEIL, llvm::AMDGPULibFuncBase::EI_COPYSIGN, llvm::AMDGPULibFuncBase::EI_COS, llvm::AMDGPULibFuncBase::EI_EXP, llvm::AMDGPULibFuncBase::EI_EXP2, llvm::AMDGPULibFuncBase::EI_FABS, llvm::AMDGPULibFuncBase::EI_FLOOR, llvm::AMDGPULibFuncBase::EI_FMA, llvm::AMDGPULibFuncBase::EI_FMAX, llvm::AMDGPULibFuncBase::EI_FMIN, llvm::AMDGPULibFuncBase::EI_LDEXP, llvm::AMDGPULibFuncBase::EI_LOG, llvm::AMDGPULibFuncBase::EI_LOG10, llvm::AMDGPULibFuncBase::EI_LOG2, llvm::AMDGPULibFuncBase::EI_MAD, llvm::AMDGPULibFuncBase::EI_POW, llvm::AMDGPULibFuncBase::EI_POWN, llvm::AMDGPULibFuncBase::EI_POWR, llvm::AMDGPULibFuncBase::EI_READ_PIPE_2, llvm::AMDGPULibFuncBase::EI_READ_PIPE_4, llvm::AMDGPULibFuncBase::EI_RINT, llvm::AMDGPULibFuncBase::EI_ROOTN, llvm::AMDGPULibFuncBase::EI_ROUND, llvm::AMDGPULibFuncBase::EI_SIN, llvm::AMDGPULibFuncBase::EI_SQRT, llvm::AMDGPULibFuncBase::EI_TRUNC, llvm::AMDGPULibFuncBase::EI_WRITE_PIPE_2, llvm::AMDGPULibFuncBase::EI_WRITE_PIPE_4, llvm::CallBase::getArgOperand(), llvm::CallBase::getCalledFunction(), llvm::CallBase::getFunctionType(), llvm::AMDGPULibFunc::getId(), llvm::Instruction::getModule(), llvm::Intrinsic::getOrInsertDeclaration(), llvm::FunctionType::getParamType(), getPownType(), llvm::Value::getType(), llvm::isa(), llvm::AMDGPULibFunc::isCompatibleSignature(), isKnownIntegral(), llvm::CallBase::isNoBuiltin(), llvm::CallBase::isStrictFP(), LLVM_DEBUG, llvm::FastMathFlags::none(), llvm::CallBase::setArgOperand(), and llvm::CallBase::setCalledFunction().
◆ initFunction()
◆ initNativeFuncs()
| void AMDGPULibCalls::initNativeFuncs | ( | ) |
|---|
◆ isUnsafeFiniteOnlyMath()
◆ replaceCall() [1/2]
◆ replaceCall() [2/2]
◆ useNative()
Definition at line 477 of file AMDGPULibCalls.cpp.
References llvm::dbgs(), DEBUG_WITH_TYPE, llvm::AMDGPULibFuncBase::EI_SINCOS, F, llvm::AMDGPULibFuncBase::F64, getArgType(), llvm::CallBase::getCalledFunction(), llvm::AMDGPULibFunc::getId(), llvm::Instruction::getModule(), llvm::AMDGPULibFunc::getName(), llvm::AMDGPULibFunc::getPrefix(), HasNative(), llvm::AMDGPULibFunc::isMangled(), llvm::CallBase::isNoBuiltin(), llvm::AMDGPULibFuncBase::NATIVE, llvm::AMDGPULibFuncBase::NOPFX, llvm::CallBase::setCalledFunction(), and llvm::AMDGPULibFunc::setPrefix().
The documentation for this class was generated from the following file:
- lib/Target/AMDGPU/AMDGPULibCalls.cpp