[clang] [lldb] [HLSL] Implement intangible AST type (PR #97362)
Justin Bogner via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 8 11:09:04 PDT 2024
================
@@ -115,6 +116,18 @@ GlobalVariable *replaceBuffer(CGHLSLRuntime::Buffer &Buf) {
} // namespace
+llvm::Type *CGHLSLRuntime::convertHLSLSpecificType(const Type *T) {
+ assert(T->isHLSLSpecificType() && "Not an HLSL specific type!");
+
+ // Check if the target has a specific translation for this type first.
+ if (llvm::Type *TargetTy = CGM.getTargetCodeGenInfo().getHLSLType(CGM, T))
+ return TargetTy;
+
+ // TODO: What do we actually want to do generically here? OpenCL uses a
+ // pointer in a particular address space.
+ llvm_unreachable("Generic handling of HLSL types is not implemented yet");
----------------
bogner wrote:
For DirectX and SPIR-V we'll implement `getHLSLType` and this should really be unreachable, but we may want to do something generic in the future if/when we want to generate code for GPU or CPU targets directly generically. Something like the OpenCL approach mentioned in the comment might make sense in that case.
https://github.com/llvm/llvm-project/pull/97362
More information about the cfe-commits
mailing list