-
Notifications
You must be signed in to change notification settings - Fork 27
Legalizer support for vectors in G_FPEXT #548
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
Open
Sameeranjoshi
wants to merge
7
commits into
Xilinx:aie-public
Choose a base branch
from
Sameeranjoshi:sam-fpext
base: aie-public
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
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
This was referenced Jul 16, 2025
Sameeranjoshi
added a commit
to Sameeranjoshi/iree-amd-aie
that referenced
this pull request
Jul 21, 2025
Patch adds tests to make sure all the tests with `vector.multi_reduction` generate successfully pass Peano legalizer and generate efficient vectorized code. This patch checks only the IREE side to keep the dependency minimun on Peano. (Depends on Peano: 1. Xilinx/llvm-aie#548 2. Xilinx/llvm-aie#557 ) 1. `reassociateFpReductions=true` is must else code is scalarized. This flag could be added into the IREE vectorization pipeline to trigger automatically. 2. bf16/i32/f32 all types with different sizes work now.
Sameeranjoshi
added a commit
to Sameeranjoshi/iree-amd-aie
that referenced
this pull request
Jul 21, 2025
Patch adds tests to make sure all the tests with `vector.multi_reduction` generate successfully pass Peano legalizer and generate efficient vectorized code. This patch checks only the IREE side to keep the dependency minimun on Peano. (Depends on Peano: 1. Xilinx/llvm-aie#548 2. Xilinx/llvm-aie#557 ) 1. `reassociateFpReductions=true` is must else code is scalarized. This flag could be added into the IREE vectorization pipeline to trigger automatically. 2. bf16/i32/f32 all types with different sizes work now.
Sameeranjoshi
added a commit
to Sameeranjoshi/llvm-aie
that referenced
this pull request
Jul 22, 2025
…d code. This patch is dependent on Xilinx#548 and Xilinx#557. Previously bf16 and f32 failed to generate fully vectorized code and used to scalarize, this test makes sures different types and vector sizes work and are fully vectorized. This is a supplementary patch for verifying below pipeline: Part 1: `vector.multi_reduction` to `vector.reduction` to `llvm.vector.reduce.fadd.*` nod-ai/iree-amd-aie#1336 Part 2: Further lowers to AIE2P instructions.(This patch)
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.
G_FPEXT
crashed for vector types when converting<32xbfloat> -> <32xfloat>
as vectors were not handled in legalizer. This patch adds support for vectors with a custom legalizer rule using following patternconverts to something like below