[llvm] [DirectX][Docs] Add DXILIntrinsicExpansion Pass to DXILArchitecture.rst (PR #86198)

Damyan Pepper via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 21 14:30:10 PDT 2024


================
@@ -61,6 +61,19 @@ on the utilities described in "Common Code" above in order to share
 logic with both the DirectX backend and with Clang's codegen of HLSL
 support as much as possible.
 
+The DirectX Intrinsic Expansion Pass
+====================================
+There are intrinsics that don't map directly to DXIL Ops. In some cases
+an intrinsic needs to be expanded to a set of LLVM IR instructions. In
+other cases an intrinsic needs modifications to the arguments or return
+values of a DXIL Op. This pass (`DXILIntrinsicExpansion.cpp`) handles all 
+the cases where our intrinsics don't have a one to one mapping. You should 
+also consider using this pass when the expansion is specific to DXIL so 
+as to keep implementation details out of CodeGen. Finally, there is an 
+expectation that we maintain vectors through this pass. Therefore, best 
----------------
damyanp wrote:

```suggestion
the cases where our intrinsics don't have a one to one mapping. This pass 
may also be used when the expansion is specific to DXIL so 
as to keep implementation details out of CodeGen. Finally, there is an 
expectation that we maintain vectors through this pass. Therefore, best 
```

Suggestion is to try and keep similar voice to rest of doc.

https://github.com/llvm/llvm-project/pull/86198


More information about the llvm-commits mailing list