|
LLVM
3.7.0
|
Custom DAG lowering for R600. More...
#include "R600ISelLowering.h"#include "AMDGPUFrameLowering.h"#include "AMDGPUIntrinsicInfo.h"#include "AMDGPUSubtarget.h"#include "R600Defines.h"#include "R600InstrInfo.h"#include "R600MachineFunctionInfo.h"#include "llvm/Analysis/ValueTracking.h"#include "llvm/CodeGen/CallingConvLower.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/SelectionDAG.h"#include "llvm/IR/Argument.h"#include "llvm/IR/Function.h"Go to the source code of this file.
Functions | |
| static int | ConstantAddressBlock (unsigned AddressSpace) |
| static SDValue | CompactSwizzlableVector (SelectionDAG &DAG, SDValue VectorEntry, DenseMap< unsigned, unsigned > &RemapSwizzle) |
| static SDValue | ReorganizeVector (SelectionDAG &DAG, SDValue VectorEntry, DenseMap< unsigned, unsigned > &RemapSwizzle) |
| static bool | FoldOperand (SDNode *ParentNode, unsigned SrcIdx, SDValue &Src, SDValue &Neg, SDValue &Abs, SDValue &Sel, SDValue &Imm, SelectionDAG &DAG) |
Custom DAG lowering for R600.
Definition in file R600ISelLowering.cpp.
|
static |
Definition at line 1710 of file R600ISelLowering.cpp.
References llvm::ISD::BUILD_VECTOR, llvm::C, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::empty(), llvm::MVT::f32, llvm::SelectionDAG::getNode(), llvm::SDValue::getOpcode(), llvm::SDValue::getOperand(), llvm::SelectionDAG::getUNDEF(), llvm::SDValue::getValueType(), llvm::TargetLoweringBase::getValueType(), and llvm::ISD::UNDEF.
Definition at line 1417 of file R600ISelLowering.cpp.
References AMDGPUAS::CONSTANT_BUFFER_0, AMDGPUAS::CONSTANT_BUFFER_1, AMDGPUAS::CONSTANT_BUFFER_10, AMDGPUAS::CONSTANT_BUFFER_11, AMDGPUAS::CONSTANT_BUFFER_12, AMDGPUAS::CONSTANT_BUFFER_13, AMDGPUAS::CONSTANT_BUFFER_14, AMDGPUAS::CONSTANT_BUFFER_15, AMDGPUAS::CONSTANT_BUFFER_2, AMDGPUAS::CONSTANT_BUFFER_3, AMDGPUAS::CONSTANT_BUFFER_4, AMDGPUAS::CONSTANT_BUFFER_5, AMDGPUAS::CONSTANT_BUFFER_6, AMDGPUAS::CONSTANT_BUFFER_7, AMDGPUAS::CONSTANT_BUFFER_8, and AMDGPUAS::CONSTANT_BUFFER_9.
|
static |
Definition at line 2044 of file R600ISelLowering.cpp.
References llvm::APFloat::bitcastToAPInt(), llvm::C, llvm::APFloat::convertToFloat(), llvm::dyn_cast(), llvm::MVT::f32, llvm::R600InstrInfo::fitsConstReadLimitations(), llvm::TargetSubtargetInfo::getInstrInfo(), llvm::SDValue::getMachineOpcode(), llvm::SDNode::getMachineOpcode(), llvm::SDValue::getNode(), llvm::SDValue::getOperand(), llvm::SDNode::getOperand(), llvm::R600InstrInfo::getOperandIdx(), llvm::SelectionDAG::getRegister(), llvm::R600InstrInfo::getSelIdx(), llvm::SelectionDAG::getSubtarget(), llvm::SelectionDAG::getTargetConstant(), llvm::ConstantFPSDNode::getValueAPF(), llvm::SDNode::getValueType(), llvm::APInt::getZExtValue(), llvm::ConstantSDNode::getZExtValue(), llvm::MVT::i32, llvm::SDValue::isMachineOpcode(), llvm::EVT::isVector(), and TII.
|
static |
Definition at line 1753 of file R600ISelLowering.cpp.
References llvm::ISD::BUILD_VECTOR, llvm::dyn_cast(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::empty(), llvm::ISD::EXTRACT_VECTOR_ELT, llvm::SelectionDAG::getNode(), llvm::SDValue::getOpcode(), llvm::SDValue::getOperand(), llvm::SDValue::getValueType(), and std::swap().
1.8.6