clang 24.0.0git
CGHLSLRuntime.h File Reference
#include "Address.h"
#include "clang/AST/Attr.h"
#include "clang/AST/Decl.h"
#include "clang/Basic/Builtins.h"
#include "clang/Basic/HLSLRuntime.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Frontend/HLSL/HLSLResource.h"
#include "llvm/Frontend/HLSL/SemanticSignatures.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsDirectX.h"
#include "llvm/IR/IntrinsicsSPIRV.h"
#include <optional>
#include <vector>

Go to the source code of this file.

Classes

class  clang::CodeGen::CGHLSLOffsetInfo
class  clang::CodeGen::CGHLSLRuntime

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  clang
 Top level wrappers for InstallAPI frontend operations.
namespace  clang::CodeGen

Macros

#define GENERATE_HLSL_INTRINSIC_FUNCTION_BASE(FunctionName, DxilPostfix, SpirvPostfix)
#define GENERATE_HLSL_INTRINSIC_FUNCTION(FunctionName, IntrinsicPostfix)

Typedefs

using ResourceClass = llvm::dxil::ResourceClass

Macro Definition Documentation

◆ GENERATE_HLSL_INTRINSIC_FUNCTION

#define GENERATE_HLSL_INTRINSIC_FUNCTION ( FunctionName,
IntrinsicPostfix )
Value:
GENERATE_HLSL_INTRINSIC_FUNCTION_BASE(FunctionName, IntrinsicPostfix, \
IntrinsicPostfix)
#define GENERATE_HLSL_INTRINSIC_FUNCTION_BASE(FunctionName, DxilPostfix, SpirvPostfix)

Definition at line 51 of file CGHLSLRuntime.h.

◆ GENERATE_HLSL_INTRINSIC_FUNCTION_BASE

#define GENERATE_HLSL_INTRINSIC_FUNCTION_BASE ( FunctionName,
DxilPostfix,
SpirvPostfix )
Value:
llvm::Intrinsic::ID get##FunctionName##Intrinsic() { \
llvm::Triple::ArchType Arch = getArch(); \
switch (Arch) { \
case llvm::Triple::dxil: \
return llvm::Intrinsic::dx_##DxilPostfix; \
case llvm::Triple::spirv: \
return llvm::Intrinsic::spv_##SpirvPostfix; \
default: \
llvm_unreachable(#FunctionName " not supported by target architecture"); \
} \
}

Definition at line 37 of file CGHLSLRuntime.h.

Typedef Documentation

◆ ResourceClass

using ResourceClass = llvm::dxil::ResourceClass

Definition at line 55 of file CGHLSLRuntime.h.