LLVM 17.0.0git
|
#include "SPIRVCallLowering.h"
#include "MCTargetDesc/SPIRVBaseInfo.h"
#include "SPIRV.h"
#include "SPIRVBuiltins.h"
#include "SPIRVGlobalRegistry.h"
#include "SPIRVISelLowering.h"
#include "SPIRVRegisterInfo.h"
#include "SPIRVSubtarget.h"
#include "SPIRVUtils.h"
#include "llvm/CodeGen/FunctionLoweringInfo.h"
#include "llvm/Support/ModRef.h"
Go to the source code of this file.
Functions | |
static uint32_t | getFunctionControl (const Function &F) |
static ConstantInt * | getConstInt (MDNode *MD, unsigned NumOp) |
static FunctionType * | getOriginalFunctionType (const Function &F) |
static MDString * | getKernelArgAttribute (const Function &KernelFunction, unsigned ArgIdx, const StringRef AttributeName) |
static SPIRV::AccessQualifier::AccessQualifier | getArgAccessQual (const Function &F, unsigned ArgIdx) |
static std::vector< SPIRV::Decoration::Decoration > | getKernelArgTypeQual (const Function &KernelFunction, unsigned ArgIdx) |
static Type * | getArgType (const Function &F, unsigned ArgIdx) |
|
static |
Definition at line 172 of file SPIRVCallLowering.cpp.
References llvm::StringRef::compare(), F, getKernelArgAttribute(), llvm::MDString::getString(), and llvm::CallingConv::SPIR_KERNEL.
Referenced by llvm::SPIRVCallLowering::lowerFormalArguments().
Definition at line 197 of file SPIRVCallLowering.cpp.
References llvm::StructType::create(), llvm::StringRef::endswith(), F, getKernelArgAttribute(), getOriginalFunctionType(), llvm::FunctionType::getParamType(), llvm::MDString::getString(), llvm::StructType::getTypeByName(), llvm::isSpecialOpaqueType(), llvm::CallingConv::SPIR_KERNEL, and llvm::StringRef::str().
|
static |
Definition at line 70 of file SPIRVCallLowering.cpp.
References llvm::MDNode::getNumOperands(), and llvm::MDNode::getOperand().
Referenced by getOriginalFunctionType(), and llvm::SPIRVCallLowering::lowerFormalArguments().
Definition at line 52 of file SPIRVCallLowering.cpp.
References llvm::MemoryEffects::doesNotAccessMemory(), F, and llvm::MemoryEffects::onlyReadsMemory().
Referenced by llvm::SPIRVCallLowering::lowerFormalArguments().
|
static |
Definition at line 120 of file SPIRVCallLowering.cpp.
References assert(), llvm::Function::getCallingConv(), llvm::GlobalObject::getMetadata(), llvm::Value::getName(), llvm::Module::getNamedMetadata(), llvm::NamedMDNode::getNumOperands(), llvm::MDNode::getOperand(), llvm::NamedMDNode::getOperand(), llvm::GlobalValue::getParent(), llvm::ValueAsMetadata::getValue(), llvm::MDNode::operands(), and llvm::CallingConv::SPIR_KERNEL.
Referenced by getArgAccessQual(), getArgType(), and getKernelArgTypeQual().
|
static |
Definition at line 189 of file SPIRVCallLowering.cpp.
References llvm::StringRef::compare(), getKernelArgAttribute(), and llvm::MDString::getString().
Referenced by llvm::SPIRVCallLowering::lowerFormalArguments().
|
static |
Definition at line 82 of file SPIRVCallLowering.cpp.
References Arg, assert(), F, llvm::FunctionType::get(), getConstInt(), llvm::MDNode::getOperand(), N, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and RetTy.
Referenced by getArgType(), llvm::SPIRVCallLowering::lowerCall(), and llvm::SPIRVCallLowering::lowerFormalArguments().