[all-commits] [llvm/llvm-project] 51ede5: Re-Apply "[DXIL][Analysis] Implement enough of DXI...

Justin Bogner via All-commits all-commits at lists.llvm.org
Fri Aug 16 11:37:02 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 51ede55ee2acd3383d990c5fc8882d4b021b87b4
      https://github.com/llvm/llvm-project/commit/51ede55ee2acd3383d990c5fc8882d4b021b87b4
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Analysis/DXILResource.cpp
    A llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  Re-Apply "[DXIL][Analysis] Implement enough of DXILResourceAnalysis for buffers" (#104517)

Some build configs allow `llvm_unreachable` in a constexpr context, but
not all, so these functions that map a fully covered enum to a string
can't be constexpr. This version fixes that by dropping constexpr from
those functions.

This reverts commit fcc318ff7960d7de8cbac56eb4f32b44b5261677, reapplying
28d577ecefa1557f5dea5566bf33b885c563d14b.

Original message follows:

This implements the DXILResourceAnalysis pass for `dx.TypedBuffer` and
`dx.RawBuffer` types. This should be sufficient to lower
`dx.handle.fromBinding` for this set of types, but it leaves a number of
TODOs around for other resource types.

This also includes a straightforward `print` method in `ResourceInfo` to
make the analysis testable. This is deliberately different than the
printer in `lib/Target/DirectX/DXILResource.cpp`, which attempts to
print bindings in a format compatible with the comments `dxc` prints. We
will eventually want to make that functionality driven by this analysis
pass, but it isn't sufficient for testing so we need both.



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