llvm-project/mlir/lib/Dialect/SPIRV
Lei Zhang c9b36807be [mlir][spirv] Add a pass to unify aliased resource variables
In SPIR-V, resources are represented as global variables that
are bound to certain descriptor. SPIR-V requires those global
variables to be declared as aliased if multiple ones are bound
to the same slot. Such aliased decorations can cause issues
for transcompilers like SPIRV-Cross when converting to source
shading languages like MSL.

So this commit adds a pass to perform analysis of aliased
resources and see if we can unify them into one.

Reviewed By: ThomasRaoux

Differential Revision: https://reviews.llvm.org/D119872
2022-02-17 09:08:58 -05:00
..
IR [mlir] Update uses of `parser`/`printer` ODS op field to `hasCustomAssemblyFormat` 2022-02-07 19:03:58 -08:00
Linking [mlir] Convert NamedAttribute to be a class 2021-11-18 05:39:29 +00:00
Transforms [mlir][spirv] Add a pass to unify aliased resource variables 2022-02-17 09:08:58 -05:00
Utils [mlir][spirv] NFC: Shuffle code around to better follow convention 2020-12-17 11:03:26 -05:00
CMakeLists.txt [mlir][spirv] NFC: Shuffle code around to better follow convention 2020-12-17 11:03:26 -05:00