|
LLVM
3.7.0
|
Custom DAG lowering for SI. More...
#include "SIISelLowering.h"#include "AMDGPU.h"#include "AMDGPUIntrinsicInfo.h"#include "AMDGPUSubtarget.h"#include "SIInstrInfo.h"#include "SIMachineFunctionInfo.h"#include "SIRegisterInfo.h"#include "llvm/ADT/BitVector.h"#include "llvm/CodeGen/CallingConvLower.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/SelectionDAG.h"#include "llvm/IR/Function.h"#include "llvm/ADT/SmallString.h"Go to the source code of this file.
Functions | |
| static EVT | toIntegerVT (EVT VT) |
| static SDNode * | findUser (SDValue Value, unsigned Opcode) |
| Helper function for LowerBRCOND. More... | |
| static bool | canFoldOffset (unsigned OffsetSize, unsigned AS, const AMDGPUSubtarget &STI) |
| Return true if the given offset Size in bytes can be folded into the immediate offsets of a memory instruction for the given address space. More... | |
| static unsigned | minMaxOpcToMin3Max3Opc (unsigned Opc) |
| static unsigned | SubIdx2Lane (unsigned Idx) |
| Helper function for adjustWritemask. More... | |
| static bool | isFrameIndexOp (SDValue Op) |
| static SDValue | buildSMovImm32 (SelectionDAG &DAG, SDLoc DL, uint64_t Val) |
Custom DAG lowering for SI.
Definition in file SIISelLowering.cpp.
|
static |
Definition at line 2162 of file SIISelLowering.cpp.
References llvm::SelectionDAG::getMachineNode(), llvm::SelectionDAG::getTargetConstant(), and llvm::MVT::i32.
Referenced by llvm::SITargetLowering::buildRSRC(), and llvm::SITargetLowering::wrapAddr64Rsrc().
|
static |
Return true if the given offset Size in bytes can be folded into the immediate offsets of a memory instruction for the given address space.
Definition at line 1519 of file SIISelLowering.cpp.
References AMDGPUAS::CONSTANT_ADDRESS, llvm::AMDGPUSubtarget::getGeneration(), AMDGPUAS::GLOBAL_ADDRESS, llvm::isUInt< 16 >(), llvm::isUInt< 8 >(), AMDGPUAS::LOCAL_ADDRESS, AMDGPUAS::PRIVATE_ADDRESS, AMDGPUAS::REGION_ADDRESS, and llvm::AMDGPUSubtarget::VOLCANIC_ISLANDS.
Helper function for LowerBRCOND.
Definition at line 815 of file SIISelLowering.cpp.
References llvm::SDValue::getNode(), I, llvm::SDNode::use_begin(), and llvm::SDNode::use_end().
Definition at line 2073 of file SIISelLowering.cpp.
References llvm::ISD::AssertZext, llvm::SDValue::getOpcode(), and llvm::SDValue::getOperand().
Referenced by llvm::SITargetLowering::legalizeTargetIndependentNode().
Definition at line 1691 of file SIISelLowering.cpp.
References llvm::AMDGPUISD::FMAX3, llvm::ISD::FMAXNUM, llvm::AMDGPUISD::FMIN3, llvm::ISD::FMINNUM, llvm_unreachable, llvm::ISD::SMAX, llvm::AMDGPUISD::SMAX3, llvm::ISD::SMIN, llvm::AMDGPUISD::SMIN3, llvm::ISD::UMAX, llvm::AMDGPUISD::UMAX3, llvm::ISD::UMIN, and llvm::AMDGPUISD::UMIN3.
Helper function for adjustWritemask.
Definition at line 1983 of file SIISelLowering.cpp.
Definition at line 428 of file SIISelLowering.cpp.
References llvm::EVT::changeVectorElementTypeToInteger(), llvm::MVT::getIntegerVT(), llvm::EVT::getSizeInBits(), and llvm::EVT::isVector().
1.8.6