[PATCH] D128839: [DirectX backend] Add createHandle BufferLoad/Store DXIL operation

Xiang Li via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 29 10:32:57 PDT 2022


python3kgae created this revision.
python3kgae added reviewers: MaskRay, tstellar, pete, jdoerfert, sheredom, kuhar, antiagainst, nhaehnle, rnk, nikic, beanz, pow2clk, bogner.
Herald added subscribers: StephenFan, hiraditya.
Herald added a project: All.
python3kgae requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

New DXIL operations for createHandle BufferLoad/Store are added.
New DirectX target intrinsics are added for these DXIL operations too.

To support DXIL operation which have overload type which is not return type of the function,
getOverloadType is added. It will try to get overload type with overload parameter index, also take care case when overload type is field of struct type.

For return type or parameter type is DXIL struct type like dx.types.ResRet,
lowering intrinsic to DXILOperation now split into 2 stages.

1. Add parameter for DXIL opcode and create cast function for DXIL struct type.
2. Remove the cast functions.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D128839

Files:
  llvm/include/llvm/IR/IntrinsicsDXIL.td
  llvm/lib/Target/DirectX/DXIL.td
  llvm/lib/Target/DirectX/DXILOpLowering.cpp
  llvm/test/CodeGen/DirectX/resources.ll
  llvm/utils/TableGen/DXILEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D128839.441076.patch
Type: text/x-patch
Size: 20209 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220629/5ac396b6/attachment.bin>


More information about the llvm-commits mailing list