-
Notifications
You must be signed in to change notification settings - Fork 821
[SM6.10] Reserve LinAlg DXIL Opcodes #8015
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
✅ With the latest revision this PR passed the Python code formatter. |
bob80905
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just 1 question, otherwise LGTM
| ], | ||
| ) | ||
|
|
||
| op_table.reserve_dxil_op_range("LinAlgMatrixReserved", 3) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would you mind explaining where the 3 is coming from?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Arbitrarily picked! This is just putting some opcodes aside since folks have the impression that there will be more LinAlg ops coming later.
Since this is the experimental pool they'll get freed eventually if they aren't used.
|
For any future drive by reviewers :) I'm intentionally not implementing microsoft/hlsl-specs#734 yet since this commit has a lot of stuff built on top of it and that issue doesn't have an hlsl-specs PR yet. I'm aware that I'm causing a bit of a headache for future me when I have to come back and fix this but it'll be a bit easier to make a fixup PR in the future than to unwind the ~6-7 PRs that are ready to queue up |
Similar to #8015 this PR reserved HL opcodes for the HLSL intrinsics required for the LinAlg feature. The Codegen for each function is set to `EmptyLower` which raises a not implemented error if the intrinsic is seen. `lib/HLSL/HLOperationLower.cpp` and `utils/hct/gen_intrin_main.txt` are the real changes, the rest is generated code. --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This PR reserves the DXIL opcodes needed for the SM6.10 LinAlg feature.
dx.types.MatrixRefand$vec2are intentionally not yet added to the PR so those have a placeholderi32type. Three opcodes were reserved in case any new LinAlg operations come up later.Only
utils/hct/hctdb.pywas manually edited, all other changes are generated code.