|
LLVM
4.0.0
|
This is the parent TargetLowering class for hardware code gen targets. More...
#include "AMDGPUISelLowering.h"#include "AMDGPU.h"#include "AMDGPUFrameLowering.h"#include "AMDGPUIntrinsicInfo.h"#include "AMDGPURegisterInfo.h"#include "AMDGPUSubtarget.h"#include "R600MachineFunctionInfo.h"#include "SIMachineFunctionInfo.h"#include "llvm/CodeGen/CallingConvLower.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/SelectionDAG.h"#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"#include "llvm/IR/DataLayout.h"#include "llvm/IR/DiagnosticInfo.h"#include "SIInstrInfo.h"#include "AMDGPUGenCallingConv.inc"Go to the source code of this file.
Macros | |
| #define | NODE_NAME_CASE(node) case AMDGPUISD::node: return #node; |
This is the parent TargetLowering class for hardware code gen targets.
Definition in file AMDGPUISelLowering.cpp.
| #define NODE_NAME_CASE | ( | node | ) | case AMDGPUISD::node: return #node; |
Definition at line 3198 of file AMDGPUISelLowering.cpp.
Referenced by llvm::AMDGPUTargetLowering::getTargetNodeName().
|
static |
Definition at line 34 of file AMDGPUISelLowering.cpp.
References llvm::CCState::addLoc(), llvm::AMDGPUMachineFunction::allocateKernArg(), llvm::CCValAssign::getCustomMem(), llvm::MachineFunction::getInfo(), llvm::CCState::getMachineFunction(), llvm::ISD::ArgFlagsTy::getOrigAlign(), llvm::MVT::getStoreSize(), and Offset.
Referenced by llvm::AMDGPUTargetLowering::analyzeFormalArgumentsCompute().
|
static |
Definition at line 2235 of file AMDGPUISelLowering.cpp.
References llvm::SelectionDAG::getConstant(), and llvm::MVT::i32.
|
static |
Definition at line 2708 of file AMDGPUISelLowering.cpp.
References llvm::TargetLowering::DAGCombinerInfo::AddToWorklist(), llvm::TargetLowering::DAGCombinerInfo::DAG, llvm::SDValue::getNode(), llvm::SelectionDAG::getNode(), llvm::SDValue::getOperand(), llvm::SDValue::getValueType(), and llvm::ISD::SELECT.
Referenced by foldFreeOpFromSelect().
|
static |
Definition at line 1566 of file AMDGPUISelLowering.cpp.
References llvm::AMDGPUISD::BFE_U32, llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getNode(), llvm::MVT::i32, and llvm::ISD::SUB.
Referenced by llvm::AMDGPUTargetLowering::LowerFROUND64(), and llvm::AMDGPUTargetLowering::LowerFTRUNC().
Definition at line 487 of file AMDGPUISelLowering.cpp.
References llvm::ISD::FADD, llvm::ISD::FMA, llvm::ISD::FMAD, llvm::ISD::FMUL, llvm::AMDGPUISD::FMUL_LEGACY, llvm::ISD::FSIN, llvm::ISD::FSUB, llvm::AMDGPUISD::RCP, llvm::AMDGPUISD::RCP_LEGACY, and llvm::AMDGPUISD::SIN_HW.
Referenced by foldFreeOpFromSelect(), and llvm::AMDGPUTargetLowering::performFNegCombine().
|
static |
Definition at line 2730 of file AMDGPUISelLowering.cpp.
References llvm::TargetLowering::DAGCombinerInfo::AddToWorklist(), llvm::TargetLowering::DAGCombinerInfo::DAG, distributeOpThroughSelect(), llvm::dyn_cast(), llvm::ISD::FABS, llvm::ISD::FMUL, llvm::ISD::FNEG, fnegFoldsIntoOp(), llvm::SDValue::getNode(), llvm::SelectionDAG::getNode(), llvm::SDValue::getOpcode(), llvm::SDValue::getOperand(), llvm::SDValue::getValueType(), llvm::SDValue::hasOneUse(), llvm::ConstantFPSDNode::isNegative(), llvm::ISD::SELECT, and std::swap().
Referenced by llvm::AMDGPUTargetLowering::performSelectCombine().
|
static |
Definition at line 2515 of file AMDGPUISelLowering.cpp.
References llvm::ISD::BUILD_PAIR, llvm::SelectionDAG::getNode(), llvm::SDValue::getValue(), llvm::SelectionDAG::getVTList(), llvm::MVT::i32, llvm::MVT::i64, llvm::AMDGPUISD::MUL_I24, llvm::AMDGPUISD::MUL_LOHI_I24, llvm::AMDGPUISD::MUL_LOHI_U24, and llvm::AMDGPUISD::MUL_U24.
Referenced by llvm::AMDGPUTargetLowering::performMulCombine().
|
static |
Definition at line 879 of file AMDGPUISelLowering.cpp.
References llvm::dyn_cast(), llvm::GlobalVariable::getInitializer(), and llvm::GlobalVariable::hasInitializer().
Referenced by llvm::AMDGPUTargetLowering::LowerGlobalAddress().
Definition at line 2246 of file AMDGPUISelLowering.cpp.
References llvm::SDNode::uses().
Referenced by llvm::AMDGPUTargetLowering::performLoadCombine().
Definition at line 2648 of file AMDGPUISelLowering.cpp.
References llvm::ISD::CTLZ, and llvm::ISD::CTLZ_ZERO_UNDEF.
Referenced by llvm::AMDGPUTargetLowering::performCtlzCombine().
|
static |
Definition at line 2208 of file AMDGPUISelLowering.cpp.
References llvm::SelectionDAG::ComputeNumSignBits(), llvm::EVT::getSizeInBits(), and llvm::SDValue::getValueType().
Referenced by llvm::AMDGPUTargetLowering::performMulCombine(), and llvm::AMDGPUTargetLowering::performMulhsCombine().
Definition at line 2642 of file AMDGPUISelLowering.cpp.
References C.
Referenced by llvm::AMDGPUTargetLowering::performCtlzCombine().
|
static |
Definition at line 2200 of file AMDGPUISelLowering.cpp.
References llvm::SelectionDAG::computeKnownBits(), llvm::APInt::countLeadingOnes(), llvm::EVT::getSizeInBits(), and llvm::SDValue::getValueType().
Referenced by llvm::AMDGPUTargetLowering::performMulCombine(), and llvm::AMDGPUTargetLowering::performMulhuCombine().
|
static |
Definition at line 2218 of file AMDGPUISelLowering.cpp.
References llvm::TargetLowering::DAGCombinerInfo::DAG, llvm::APInt::getLowBitsSet(), llvm::SDNode::getOperand(), llvm::EVT::getSizeInBits(), llvm::SDValue::getValueType(), and llvm::TargetLowering::TargetLoweringOpt::SimplifyDemandedBits().
Referenced by llvm::AMDGPUTargetLowering::PerformDAGCombine(), and llvm::AMDGPUTargetLowering::performMulLoHi24Combine().
1.8.6