[all-commits] [llvm/llvm-project] 5a4571: [HLSL] Implement `SpirvType` and `SpirvOpaqueType`...

Cassandra Beckley via All-commits all-commits at lists.llvm.org
Tue May 27 08:41:19 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5a4571133af78e365e6e7b271688b9ceaa653e67
      https://github.com/llvm/llvm-project/commit/5a4571133af78e365e6e7b271688b9ceaa653e67
  Author: Cassandra Beckley <beckl.ds at gmail.com>
  Date:   2025-05-27 (Tue, 27 May 2025)

  Changed paths:
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Basic/BuiltinTemplates.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TypeNodes.td
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/Serialization/ASTRecordWriter.h
    M clang/include/clang/Serialization/TypeBitCodes.def
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/hlsl.h
    A clang/lib/Headers/hlsl/hlsl_spirv.h
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/AST/HLSL/Inputs/pch_spirv_type.hlsl
    A clang/test/AST/HLSL/ast-dump-SpirvType.hlsl
    A clang/test/AST/HLSL/pch_spirv_type.hlsl
    M clang/test/AST/HLSL/vector-alias.hlsl
    A clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
    A clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
    A clang/test/SemaHLSL/inline-spirv/SpirvType.dx.error.hlsl
    A clang/test/SemaHLSL/inline-spirv/SpirvType.incomplete.hlsl
    A clang/test/SemaHLSL/inline-spirv/SpirvType.literal.error.hlsl
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXType.cpp
    M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp

  Log Message:
  -----------
  [HLSL] Implement `SpirvType` and `SpirvOpaqueType` (#134034)

This implements the design proposed by [Representing SpirvType in
Clang's Type System](https://github.com/llvm/wg-hlsl/pull/181). It
creates `HLSLInlineSpirvType` as a new `Type` subclass, and
`__hlsl_spirv_type` as a new builtin type template to create such a
type.

This new type is lowered to the `spirv.Type` target extension type, as
described in [Target Extension Types for Inline SPIR-V and Decorated
Types](https://github.com/llvm/wg-hlsl/blob/main/proposals/0017-inline-spirv-and-decorated-types.md).



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list