[all-commits] [llvm/llvm-project] b95dfa: [mlir][spirv] Fix LowerABIAttributesPass to genera...

fabrizio-indirli via All-commits all-commits at lists.llvm.org
Mon Dec 16 11:12:54 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b95dfa3920f71c42ef2991f42a95903cc1202c55
      https://github.com/llvm/llvm-project/commit/b95dfa3920f71c42ef2991f42a95903cc1202c55
  Author: fabrizio-indirli <fabrizio.indirli at arm.com>
  Date:   2024-12-16 (Mon, 16 Dec 2024)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
    M mlir/test/Dialect/SPIRV/Transforms/abi-interface.mlir
    M mlir/test/Dialect/SPIRV/Transforms/abi-load-store.mlir

  Log Message:
  -----------
  [mlir][spirv] Fix LowerABIAttributesPass to generate EntryPoints for SPV1.4 (#118994)

- Extend the SPIRV::LowerABIAttributesPass to detect when the target env
is using SPIR-V ver >= 1.4, and in this case add all the functions'
interface storage variables to the spirv.EntryPoint calls, as required
by the spec of OpEntryPoint:
"_Before version 1.4, the interface’s storage classes are limited to the
Input and Output storage classes. Starting with version 1.4, the
interface’s storage classes are all storage classes used in declaring
all global variables referenced by the entry point’s call tree_."
- Fix: generate the replacement ops (spirv.AddressOf and .AccessChain)
in the order in which the associated variable appears in the function
signature

Signed-off-by: Fabrizio Indirli <Fabrizio.Indirli at arm.com>



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