LLVM 20.0.0git
|
#include "AMDGPU.h"
#include "GCNSubtarget.h"
#include "Utils/AMDGPUBaseInfo.h"
#include "llvm/Analysis/CycleAnalysis.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/IR/IntrinsicsAMDGPU.h"
#include "llvm/IR/IntrinsicsR600.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/IPO/Attributor.h"
#include "AMDGPUAttributes.def"
Go to the source code of this file.
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | DEBUG_TYPE "amdgpu-attributor" |
#define | AMDGPU_ATTRIBUTE(Name, Str) Name##_POS, |
#define | AMDGPU_ATTRIBUTE(Name, Str) Name = 1 << Name##_POS, |
#define | AMDGPU_ATTRIBUTE(Name, Str) {Name, Str}, |
Enumerations | |
enum | ImplicitArgumentPositions { LAST_ARG_POS } |
enum | ImplicitArgumentMask { NOT_IMPLICIT_INPUT = 0 , ALL_ARGUMENT_MASK = (1 << LAST_ARG_POS) - 1 } |
Functions | |
void | llvm::initializeCycleInfoWrapperPassPass (PassRegistry &) |
static ImplicitArgumentMask | intrinsicToAttrMask (Intrinsic::ID ID, bool &NonKernelOnly, bool &NeedsImplicit, bool HasApertureRegs, bool SupportsGetDoorBellID, unsigned CodeObjectVersion) |
static bool | castRequiresQueuePtr (unsigned SrcAS) |
static bool | isDSAddress (const Constant *C) |
static bool | funcRequiresHostcallPtr (const Function &F) |
Returns true if the function requires the implicit argument be passed regardless of the function contents. | |
INITIALIZE_PASS_BEGIN (AMDGPUAttributorLegacy, DEBUG_TYPE, "AMDGPU Attributor", false, false) INITIALIZE_PASS_DEPENDENCY(CycleInfoWrapperPass) | |
Variables | |
static cl::opt< unsigned > | KernargPreloadCount ("amdgpu-kernarg-preload-count", cl::desc("How many kernel arguments to preload onto SGPRs"), cl::init(0)) |
static cl::opt< unsigned > | IndirectCallSpecializationThreshold ("amdgpu-indirect-call-specialization-threshold", cl::desc("A threshold controls whether an indirect call will be specialized"), cl::init(3)) |
static constexpr std::pair< ImplicitArgumentMask, StringLiteral > | ImplicitAttrs [] |
Definition at line 56 of file AMDGPUAttributor.cpp.
Definition at line 56 of file AMDGPUAttributor.cpp.
Definition at line 56 of file AMDGPUAttributor.cpp.
#define DEBUG_TYPE "amdgpu-attributor" |
Definition at line 23 of file AMDGPUAttributor.cpp.
enum ImplicitArgumentMask |
Enumerator | |
---|---|
NOT_IMPLICIT_INPUT | |
ALL_ARGUMENT_MASK |
Definition at line 50 of file AMDGPUAttributor.cpp.
Enumerator | |
---|---|
LAST_ARG_POS |
Definition at line 43 of file AMDGPUAttributor.cpp.
Definition at line 123 of file AMDGPUAttributor.cpp.
References llvm::AMDGPUAS::LOCAL_ADDRESS, and llvm::AMDGPUAS::PRIVATE_ADDRESS.
Returns true if the function requires the implicit argument be passed regardless of the function contents.
Definition at line 137 of file AMDGPUAttributor.cpp.
References F.
INITIALIZE_PASS_BEGIN | ( | AMDGPUAttributorLegacy | , |
DEBUG_TYPE | , | ||
"AMDGPU Attributor" | , | ||
false | , | ||
false | |||
) |
|
static |
Definition at line 68 of file AMDGPUAttributor.cpp.
References llvm::AMDGPU::AMDHSA_COV4, llvm::AMDGPU::AMDHSA_COV5, and NOT_IMPLICIT_INPUT.
Definition at line 127 of file AMDGPUAttributor.cpp.
References llvm::CallingConv::C, llvm::GlobalValue::getAddressSpace(), llvm::AMDGPUAS::LOCAL_ADDRESS, and llvm::AMDGPUAS::REGION_ADDRESS.
|
staticconstexpr |
Definition at line 58 of file AMDGPUAttributor.cpp.
Referenced by llvm::SITargetLowering::passSpecialInputs().
|
static |