|
LLVM 23.0.0git
|
#include "SPIRV.h"#include "SPIRVSubtarget.h"#include "SPIRVTargetMachine.h"#include "SPIRVUtils.h"#include "llvm/ADT/StringExtras.h"#include "llvm/Analysis/ValueTracking.h"#include "llvm/CodeGen/IntrinsicLowering.h"#include "llvm/IR/IRBuilder.h"#include "llvm/IR/InstIterator.h"#include "llvm/IR/Instructions.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/IR/Intrinsics.h"#include "llvm/IR/IntrinsicsSPIRV.h"#include "llvm/Transforms/Utils/Cloning.h"#include "llvm/Transforms/Utils/LowerMemIntrinsics.h"#include <regex>Go to the source code of this file.
|
static |
Definition at line 505 of file SPIRVPrepareFunctions.cpp.
References llvm::NamedMDNode::addOperand(), llvm::ConstantAsMetadata::get(), llvm::MDNode::get(), llvm::MDString::get(), llvm::ValueAsMetadata::get(), llvm::Module::getContext(), llvm::Type::getInt32Ty(), llvm::Constant::getNullValue(), llvm::NamedMDNode::getParent(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::transform().
|
static |
Definition at line 163 of file SPIRVPrepareFunctions.cpp.
References llvm::CallingConv::C, llvm::dyn_cast(), llvm::dyn_cast_or_null(), E(), llvm::getConstantStringInfo(), I, and llvm::Ref.
Referenced by lowerPtrAnnotation().
|
static |
Definition at line 85 of file SPIRVPrepareFunctions.cpp.
References llvm::Function::Create(), llvm::GlobalValue::ExternalLinkage, F, llvm::FunctionType::get(), llvm::Function::setCallingConv(), llvm::GlobalValue::setDSOLocal(), and llvm::CallingConv::SPIR_FUNC.
Referenced by lowerFunnelShifts().
| INITIALIZE_PASS | ( | SPIRVPrepareFunctions | , |
| "prepare-functions" | , | ||
| "SPIRV prepare functions" | , | ||
| false | , | ||
| false | ) |
Definition at line 73 of file SPIRVPrepareFunctions.cpp.
References assert(), llvm::Value::getName(), II, llvm::replace(), and llvm::StringRef::str().
|
static |
Definition at line 407 of file SPIRVPrepareFunctions.cpp.
References A(), llvm::Add, llvm::cast(), II, Mul, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
|
static |
Definition at line 348 of file SPIRVPrepareFunctions.cpp.
References llvm::dyn_cast(), llvm::CallBase::getArgOperand(), llvm::ConstrainedFPCmpIntrinsic::getPredicate(), LHS, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::Value::replaceAllUsesWith(), and RHS.
|
static |
Definition at line 363 of file SPIRVPrepareFunctions.cpp.
References F, llvm::Intrinsic::getOrInsertDeclaration(), II, and llvm_unreachable.
|
static |
Definition at line 287 of file SPIRVPrepareFunctions.cpp.
References llvm::BitWidth, llvm::BasicBlock::Create(), llvm::IRBuilderBase::CreateLShr(), llvm::IRBuilderBase::CreateOr(), llvm::IRBuilderBase::CreateRet(), llvm::IRBuilderBase::CreateShl(), llvm::IRBuilderBase::CreateSub(), llvm::IRBuilderBase::CreateURem(), llvm::IRBuilderBase::CreateVectorSplat(), llvm::dyn_cast(), llvm::Function::empty(), llvm::Function::getArg(), llvm::VectorType::getElementType(), llvm::CallBase::getFunctionType(), llvm::IRBuilderBase::getInt(), llvm::IntrinsicInst::getIntrinsicID(), llvm::Instruction::getModule(), llvm::FixedVectorType::getNumElements(), getOrCreateFunction(), llvm::Function::getReturnType(), and llvm::CallBase::setCalledFunction().
|
static |
Definition at line 99 of file SPIRVPrepareFunctions.cpp.
References assert(), llvm::cast(), llvm::BasicBlock::Create(), llvm::IRBuilderBase::CreateIntrinsic(), llvm::IRBuilderBase::CreateMemSet(), llvm::IRBuilderBase::CreateRet(), llvm::IRBuilderBase::CreateRetVoid(), llvm::dyn_cast(), llvm::expandMemSetAsLoop(), F, llvm::isa(), llvm::IntrinsicLowering::LowerIntrinsicCall(), and llvm::Value::setName().
|
static |
Definition at line 251 of file SPIRVPrepareFunctions.cpp.
References llvm::IRBuilderBase::CreateIntrinsic(), llvm::dyn_cast(), llvm::ConstantAsMetadata::get(), llvm::MDNode::get(), llvm::MDString::get(), llvm::MetadataAsValue::get(), getAnnotation(), llvm::Type::getInt32Ty(), llvm::Value::getType(), II, llvm::Int32Ty, parseAnnotation(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::IRBuilderBase::SetInsertPoint(), and llvm::SmallVectorTemplateCommon< T, typename >::size().
|
static |
Definition at line 198 of file SPIRVPrepareFunctions.cpp.
References llvm::ConstantAsMetadata::get(), llvm::MDNode::get(), llvm::MDString::get(), I, llvm::Int32Ty, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::SmallVectorTemplateCommon< T, typename >::size(), and llvm::to_integer().
Referenced by lowerPtrAnnotation().
|
static |
Definition at line 387 of file SPIRVPrepareFunctions.cpp.
References llvm::cast(), II, llvm::isa(), and Size.