LLVM API Documentation
Defines an instruction selector for the AMDGPU target. More...
#include "AMDGPUInstrInfo.h"
#include "AMDGPUISelLowering.h"
#include "AMDGPURegisterInfo.h"
#include "AMDGPUSubtarget.h"
#include "R600InstrInfo.h"
#include "SIDefines.h"
#include "SIISelLowering.h"
#include "SIMachineFunctionInfo.h"
#include "llvm/CodeGen/FunctionLoweringInfo.h"
#include "llvm/CodeGen/PseudoSourceValue.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/CodeGen/SelectionDAGISel.h"
#include "llvm/IR/Function.h"
#include "AMDGPUGenDAGISel.inc"
Go to the source code of this file.
Functions | |
static SDValue | wrapAddr64Rsrc (SelectionDAG *DAG, SDLoc DL, SDValue Ptr) |
static bool | isLegalMUBUFImmOffset (const ConstantSDNode *Imm) |
static SDValue | buildRSRC (SelectionDAG *DAG, SDLoc DL, SDValue Ptr, uint32_t RsrcDword1, uint64_t RsrcDword2And3) |
static SDValue | buildScratchRSRC (SelectionDAG *DAG, SDLoc DL, SDValue Ptr) |
Return a resource descriptor with the 'Add TID' bit enabled The TID (Thread ID) is multipled by the stride value (bits [61:48] of the resource descriptor) to create an offset, which is added to the resource ponter. |
Defines an instruction selector for the AMDGPU target.
Definition in file AMDGPUISelDAGToDAG.cpp.
static SDValue buildRSRC | ( | SelectionDAG * | DAG, |
SDLoc | DL, | ||
SDValue | Ptr, | ||
uint32_t | RsrcDword1, | ||
uint64_t | RsrcDword2And3 | ||
) | [static] |
Definition at line 912 of file AMDGPUISelDAGToDAG.cpp.
References llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getMachineNode(), llvm::SelectionDAG::getTargetConstant(), and llvm::SelectionDAG::getTargetExtractSubreg().
Referenced by buildScratchRSRC().
static SDValue buildScratchRSRC | ( | SelectionDAG * | DAG, |
SDLoc | DL, | ||
SDValue | Ptr | ||
) | [static] |
Return a resource descriptor with the 'Add TID' bit enabled The TID (Thread ID) is multipled by the stride value (bits [61:48] of the resource descriptor) to create an offset, which is added to the resource ponter.
Definition at line 934 of file AMDGPUISelDAGToDAG.cpp.
References buildRSRC(), llvm::AMDGPU::RSRC_DATA_FORMAT, and llvm::AMDGPU::RSRC_TID_ENABLE.
static bool isLegalMUBUFImmOffset | ( | const ConstantSDNode * | Imm | ) | [static] |
Definition at line 831 of file AMDGPUISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getZExtValue().
static SDValue wrapAddr64Rsrc | ( | SelectionDAG * | DAG, |
SDLoc | DL, | ||
SDValue | Ptr | ||
) | [static] |
Definition at line 826 of file AMDGPUISelDAGToDAG.cpp.
References llvm::SelectionDAG::getMachineNode().