[CodeGen][CUDA] Move fast math intrinsic lowering option to PassContext#19596
Merged
Conversation
Contributor
There was a problem hiding this comment.
Code Review
This pull request refactors the enable_fast_math setting by moving it from a CUDA target attribute to a global pass configuration option (tirx.enable_fast_math). The changes include removing the attribute from target detection, registration, and the CUDA target kind definition, while updating the LowerIntrin pass and associated tests to utilize the PassContext for this configuration. I have no feedback to provide as there were no review comments to evaluate.
tqchen
approved these changes
May 24, 2026
spectrometerHBH
pushed a commit
that referenced
this pull request
May 24, 2026
This PR adds annotation support to `tirx.Call` so downstream codegen
users can attach call-level metadata and preserve it through TIRX
transforms.
What changed:
- Add `CallNode::annotations` and expose it through reflection.
- Add Python `tvm.tirx.Call(..., annotations=...)` support.
- Preserve call annotations in C++ and Python expression mutators.
- Preserve annotations across TIRX/arith passes that rebuild equivalent
calls.
- Print annotated calls as `Tx.Call(..., annotations={...})` and support
script roundtrip.
- Add regression coverage for annotated calls, mutator preservation,
script roundtrip, and simplify preservation.
This pr also cleans some stuff that #19596 didn't clean completely
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This updates CUDA fast math intrinsic lowering to use a PassContext option instead of a CUDA Target attribute.
The new option is:
When unset or false, CUDA math intrinsics continue to lower to the precise CUDA math functions such as expf. When true, tirx.LowerIntrin prioritizes the cuda.fastmath.* lowering rules, producing fast math intrinsics such as __expf.