[all-commits] [llvm/llvm-project] 5ac696: [SPIR-V] Support TargetExtType for SPIR-V builtin ...

Michal Paszkowski via All-commits all-commits at lists.llvm.org
Mon Feb 27 12:40:22 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5ac69674bf4fbe4adaca4170a2ad60c8a32613ed
      https://github.com/llvm/llvm-project/commit/5ac69674bf4fbe4adaca4170a2ad60c8a32613ed
  Author: Michal Paszkowski <michal.paszkowski at outlook.com>
  Date:   2023-02-27 (Mon, 27 Feb 2023)

  Changed paths:
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/test/CodeGen/SPIRV/image_store.ll
    M llvm/test/CodeGen/SPIRV/spirv.Queue.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-types.ll

  Log Message:
  -----------
  [SPIR-V] Support TargetExtType for SPIR-V builtin types

This patch adds support for TargetExtType/target(...) representing
SPIR-V builtin types. After D135202, target(...) is the preferred way
for representing SPIR-V builtin types in LLVM IR and the only working
in the opaque pointer mode.

In order to maintain compatibility with LLVM IR generated by older
versions of Clang and LLVM/SPIR-V Translator, pointers-to-opaque-structs
denoting SPIR-V/OpenCL builtin types will be translated to equivalent
SPIR-V target extension types. This translation is only available in the
typed pointer mode (-opaque-pointers=0).

The relevant LIT tests with SPIR-V builtins were converted to use the
new target(...) notation.

Differential Revision: https://reviews.llvm.org/D144494




More information about the All-commits mailing list