|
LLVM 23.0.0git
|
#include "AMDGPU.h"#include "AMDGPUAsanInstrumentation.h"#include "GCNSubtarget.h"#include "llvm/Analysis/AliasAnalysis.h"#include "llvm/Analysis/CaptureTracking.h"#include "llvm/Analysis/ScopedNoAliasAA.h"#include "llvm/Analysis/ValueTracking.h"#include "llvm/CodeGen/TargetPassConfig.h"#include "llvm/IR/Argument.h"#include "llvm/IR/Attributes.h"#include "llvm/IR/Dominators.h"#include "llvm/IR/IRBuilder.h"#include "llvm/IR/InstIterator.h"#include "llvm/IR/Instruction.h"#include "llvm/IR/Instructions.h"#include "llvm/IR/IntrinsicsAMDGPU.h"#include "llvm/IR/LLVMContext.h"#include "llvm/IR/MDBuilder.h"#include "llvm/Target/TargetMachine.h"#include <optional>#include <string>Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "amdgpu-lower-kernel-arguments" |
Functions | |
| static BasicBlock::iterator | getInsertPt (BasicBlock &BB) |
| static void | addAliasScopeMetadata (Function &F, const DataLayout &DL, DominatorTree &DT) |
| static bool | lowerKernelArguments (Function &F, const TargetMachine &TM, DominatorTree &DT) |
| INITIALIZE_PASS_BEGIN (AMDGPULowerKernelArguments, DEBUG_TYPE, "AMDGPU Lower Kernel Arguments", false, false) INITIALIZE_PASS_END(AMDGPULowerKernelArguments | |
Variables | |
| DEBUG_TYPE | |
| AMDGPU Lower Kernel | Arguments |
| AMDGPU Lower Kernel | false |
| #define DEBUG_TYPE "amdgpu-lower-kernel-arguments" |
Definition at line 36 of file AMDGPULowerKernelArguments.cpp.
|
static |
Definition at line 74 of file AMDGPULowerKernelArguments.cpp.
References Call, llvm::capturesAnything(), llvm::MDNode::concatenate(), llvm::SmallPtrSetImpl< PtrType >::contains(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::MDBuilder::createAnonymousAliasScope(), llvm::MDBuilder::createAnonymousAliasScopeDomain(), DL, llvm::dyn_cast(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), F, llvm::MDNode::get(), llvm::Value::getName(), llvm::MemoryLocation::getOrNone(), llvm::getUnderlyingObjects(), I, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::SmallPtrSetImpl< PtrType >::insert_range(), llvm::inst_begin(), llvm::inst_end(), llvm::isa(), llvm::isEscapeSource(), llvm::isIdentifiedObject(), NoAliases, llvm::PointerMayBeCapturedBefore(), llvm::Provenance, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::SmallVectorTemplateCommon< T, typename >::size().
Referenced by lowerKernelArguments().
|
static |
Definition at line 60 of file AMDGPULowerKernelArguments.cpp.
References llvm::dyn_cast(), E(), llvm::BasicBlock::end(), llvm::BasicBlock::getFirstInsertionPt(), and llvm::AllocaInst::isStaticAlloca().
Referenced by lowerKernelArguments().
| INITIALIZE_PASS_BEGIN | ( | AMDGPULowerKernelArguments | , |
| DEBUG_TYPE | , | ||
| "AMDGPU Lower Kernel Arguments" | , | ||
| false | , | ||
| false | ) |
References DEBUG_TYPE.
|
static |
Definition at line 191 of file AMDGPULowerKernelArguments.cpp.
References addAliasScopeMetadata(), llvm::CallBase::addRetAttr(), llvm::alignDown(), llvm::alignTo(), llvm::CallingConv::AMDGPU_KERNEL, llvm::commonAlignment(), llvm::MDBuilder::createConstant(), llvm::MDBuilder::createRange(), DL, llvm::dyn_cast(), F, llvm::FixedVectorType::get(), llvm::MDNode::get(), getInsertPt(), llvm::Type::getInt32Ty(), llvm::Type::getIntNTy(), llvm::TargetMachine::getSubtarget(), llvm::Value::getType(), llvm::Attribute::getWithAlignment(), llvm::Attribute::getWithDereferenceableBytes(), llvm::isa(), llvm::Type::isAggregateType(), llvm::AMDGPUAS::LOCAL_ADDRESS, Range, llvm::AMDGPUAS::REGION_ADDRESS, llvm::Value::replaceAllUsesWith(), and Size.
Referenced by llvm::AMDGPULowerKernelArgumentsPass::run().
| AMDGPU Lower Kernel Arguments |
Definition at line 381 of file AMDGPULowerKernelArguments.cpp.
Referenced by llvm::MDBuilder::createCallbackEncoding(), llvm::coro::createMustTailCall(), llvm::PMTopLevelManager::dumpArguments(), llvm::generateExtInst(), llvm::getBuiltinCallArguments(), getCostForIntrinsics(), llvm::LoopVectorizationCostModel::getVectorIntrinsicCost(), llvm::lookupBuiltin(), llvm::coro::normalizeCoroutine(), llvm::logicalview::LVLogicalVisitor::visitKnownRecord(), llvm::logicalview::LVLogicalVisitor::visitKnownRecord(), llvm::logicalview::LVLogicalVisitor::visitKnownRecord(), and llvm::logicalview::LVTypeVisitor::visitKnownRecord().
| DEBUG_TYPE |
Definition at line 381 of file AMDGPULowerKernelArguments.cpp.
| AMDGPU Lower Kernel false |
Definition at line 382 of file AMDGPULowerKernelArguments.cpp.