clang 20.0.0git
Namespaces | Macros | Functions
SPIR.cpp File Reference
#include "ABIInfoImpl.h"
#include "TargetInfo.h"
#include "clang/Basic/OpenCLImageTypes.def"
#include "clang/Basic/OpenCLExtensionTypes.def"

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::CodeGen
 

Macros

#define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix)
 
#define INTEL_SUBGROUP_AVC_TYPE(Name, Id)
 

Functions

void clang::CodeGen::computeSPIRKernelABIInfo (CodeGenModule &CGM, CGFunctionInfo &FI)
 
static llvm::TypegetSPIRVImageType (llvm::LLVMContext &Ctx, StringRef BaseType, StringRef OpenCLName, unsigned AccessQualifier)
 Construct a SPIR-V target extension type for the given OpenCL image type.
 

Macro Definition Documentation

◆ IMAGE_TYPE

#define IMAGE_TYPE (   ImgType,
  Id,
  SingletonId,
  Access,
  Suffix 
)
Value:
case BuiltinType::Id: \
return getSPIRVImageType(Ctx, "spirv.Image", #ImgType, AQ_##Suffix);
static llvm::Type * getSPIRVImageType(llvm::LLVMContext &Ctx, StringRef BaseType, StringRef OpenCLName, unsigned AccessQualifier)
Construct a SPIR-V target extension type for the given OpenCL image type.
Definition: SPIR.cpp:136

◆ INTEL_SUBGROUP_AVC_TYPE

#define INTEL_SUBGROUP_AVC_TYPE (   Name,
  Id 
)
Value:
case BuiltinType::OCLIntelSubgroupAVC##Id: \
return llvm::TargetExtType::get(Ctx, "spirv.Avc" #Id "INTEL");
uint32_t Id
Definition: SemaARM.cpp:1144

Function Documentation

◆ getSPIRVImageType()

static llvm::Type * getSPIRVImageType ( llvm::LLVMContext &  Ctx,
StringRef  BaseType,
StringRef  OpenCLName,
unsigned  AccessQualifier 
)
static

Construct a SPIR-V target extension type for the given OpenCL image type.

Definition at line 136 of file SPIR.cpp.