|
clang 22.0.0git
|
#include "CGHLSLRuntime.h"#include "CGDebugInfo.h"#include "CGRecordLayout.h"#include "CodeGenFunction.h"#include "CodeGenModule.h"#include "HLSLBufferLayoutBuilder.h"#include "TargetInfo.h"#include "clang/AST/ASTContext.h"#include "clang/AST/Attrs.inc"#include "clang/AST/Decl.h"#include "clang/AST/Expr.h"#include "clang/AST/HLSLResource.h"#include "clang/AST/RecursiveASTVisitor.h"#include "clang/AST/Type.h"#include "clang/Basic/DiagnosticFrontend.h"#include "clang/Basic/TargetOptions.h"#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/ScopeExit.h"#include "llvm/ADT/SmallString.h"#include "llvm/ADT/SmallVector.h"#include "llvm/Frontend/HLSL/RootSignatureMetadata.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DerivedTypes.h"#include "llvm/IR/GlobalVariable.h"#include "llvm/IR/LLVMContext.h"#include "llvm/IR/Metadata.h"#include "llvm/IR/Module.h"#include "llvm/IR/Type.h"#include "llvm/IR/Value.h"#include "llvm/Support/Alignment.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Support/FormatVariadic.h"#include <cstdint>#include <optional>Go to the source code of this file.
Classes | |
| class | OpaqueValueVisitor |
Functions | |
| static const clang::HLSLAttributedResourceType * | createBufferHandleType (const HLSLBufferDecl *BufDecl) |
| static Value * | buildVectorInput (IRBuilder<> &B, Function *F, llvm::Type *Ty) |
| static void | addSPIRVBuiltinDecoration (llvm::GlobalVariable *GV, unsigned BuiltIn) |
| static void | addLocationDecoration (llvm::GlobalVariable *GV, unsigned Location) |
| static llvm::Value * | createSPIRVBuiltinLoad (IRBuilder<> &B, llvm::Module &M, llvm::Type *Ty, const Twine &Name, unsigned BuiltInID) |
| static llvm::Value * | createSPIRVLocationLoad (IRBuilder<> &B, llvm::Module &M, llvm::Type *Ty, unsigned Location, StringRef Name) |
| static void | createSPIRVLocationStore (IRBuilder<> &B, llvm::Module &M, llvm::Value *Source, unsigned Location, StringRef Name) |
| static void | createSPIRVBuiltinStore (IRBuilder<> &B, llvm::Module &M, llvm::Value *Source, const Twine &Name, unsigned BuiltInID) |
| static void | gatherFunctions (SmallVectorImpl< Function * > &Fns, llvm::Module &M, bool CtorOrDtor) |
| static void | initializeBuffer (CodeGenModule &CGM, llvm::GlobalVariable *GV, Intrinsic::ID IntrID, ArrayRef< llvm::Value * > Args) |
|
static |
Definition at line 556 of file CGHLSLRuntime.cpp.
Referenced by createSPIRVLocationLoad(), and createSPIRVLocationStore().
|
static |
Definition at line 544 of file CGHLSLRuntime.cpp.
Referenced by createSPIRVBuiltinLoad(), createSPIRVBuiltinStore(), and clang::CodeGen::CGHLSLRuntime::handleGlobalVarDefinition().
|
static |
Definition at line 532 of file CGHLSLRuntime.cpp.
Referenced by clang::CodeGen::CGHLSLRuntime::emitSystemSemanticLoad().
|
static |
Definition at line 371 of file CGHLSLRuntime.cpp.
References clang::cast(), clang::Decl::getASTContext(), clang::ASTContext::getCanonicalTagType(), clang::ASTContext::getHLSLAttributedResourceType(), clang::HLSLBufferDecl::getLayoutStruct(), and clang::QualType::getTypePtr().
Referenced by clang::CodeGen::CGHLSLRuntime::addBuffer().
|
static |
Definition at line 566 of file CGHLSLRuntime.cpp.
References addSPIRVBuiltinDecoration().
Referenced by clang::CodeGen::CGHLSLRuntime::emitSystemSemanticLoad().
|
static |
Definition at line 770 of file CGHLSLRuntime.cpp.
References addSPIRVBuiltinDecoration().
Referenced by clang::CodeGen::CGHLSLRuntime::emitSystemSemanticStore().
|
static |
Definition at line 579 of file CGHLSLRuntime.cpp.
References addLocationDecoration().
|
static |
Definition at line 612 of file CGHLSLRuntime.cpp.
References addLocationDecoration().
|
static |
Definition at line 1017 of file CGHLSLRuntime.cpp.
References clang::cast(), and clang::isa().
Referenced by clang::CodeGen::CGHLSLRuntime::generateGlobalCtorDtorCalls().
|
static |
Definition at line 1089 of file CGHLSLRuntime.cpp.
References clang::CodeGen::CodeGenModule::AddCXXGlobalInit(), clang::CodeGen::CodeGenModule::getLLVMContext(), clang::CodeGen::CodeGenModule::getModule(), and clang::CodeGen::CodeGenTypeCache::VoidTy.