8000 Properly handle unaligned refs in VM ABI marshaling. by benvanik · Pull Request #20671 · iree-org/iree · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Properly handle unaligned refs in VM ABI marshaling. #20671

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

Merged
merged 2 commits into from
Apr 30, 2025

Conversation

benvanik
Copy link
Collaborator
@benvanik benvanik commented Apr 29, 2025

iree_vm_ref_* functions have been updated to handle unaligned ref pointers. The changes do not significantly change the code and allow for the ABI marshaling to remain simple.

Tests were added to verify the ABI size calculations match expectations.
A bug was fixed in padding of i64/f64 argument registers on external calls both in the compiler and runtime.

Fixes #20663.

@benvanik benvanik added bug 🐞 Something isn't working runtime Relating to the IREE runtime library labels Apr 29, 2025
@benvanik benvanik force-pushed the users/benvanik/pad-cconv branch 2 times, most recently from 6084c8c to 779b1a9 Compare April 29, 2025 21:01
@benvanik benvanik changed the title Padding cconv ABI storage to natural element alignment. Properly handle unaligned refs in VM ABI handling. Apr 29, 2025
@benvanik benvanik changed the title Properly handle unaligned refs in VM ABI handling. Properly handle unaligned refs in VM ABI marshaling. Apr 29, 2025
iree_vm_ref_* functions have been updated to handle unaligned ref
pointers. The changes do not significantly change the code and allow
for the ABI marshaling to remain simple.

Tests were added to verify the ABI size calculations match expectations.
A bug was fixed in padding of i64/f64 argument registers on external
calls both in the compiler and runtime.

Fixes #20663.
@benvanik benvanik force-pushed the users/benvanik/pad-cconv branch from 779b1a9 to abf79f8 Compare April 29, 2025 21:06
@benvanik benvanik marked this pull request as ready for review April 29, 2025 22:08
@bjacob
Copy link
Contributor
bjacob commented Apr 30, 2025

@benvanik , i am unfamiliar with this code and would need a video chat to bring me up to speed if i'm going to do a review here.

@benvanik benvanik requested a review from ScottTodd April 30, 2025 15:43
Copy link
Member
@ScottTodd ScottTodd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I see the discussion on #20663 about getting CI coverage for "RISC-V 64-bit without support for unaligned loads". That would be great.

@benvanik benvanik enabled auto-merge (squash) April 30, 2025 16:14
@benvanik benvanik merged commit fd35d4b into main Apr 30, 2025
45 checks passed
@benvanik benvanik deleted the users/benvanik/pad-cconv branch April 30, 2025 16:17
nirvedhmeshram pushed a commit that referenced this pull request May 6, 2025
`iree_vm_ref_*` functions have been updated to handle unaligned ref
pointers. The changes do not significantly change the code and allow for
the ABI marshaling to remain simple.

Tests were added to verify the ABI size calculations match expectations.
A bug was fixed in padding of i64/f64 argument registers on external
calls both in the compiler and runtime.

Fixes #20663.
KyleHerndon pushed a commit to KyleHerndon/iree that referenced this pull request May 7, 2025
`iree_vm_ref_*` functions have been updated to handle unaligned ref
pointers. The changes do not significantly change the code and allow for
the ABI marshaling to remain simple.

Tests were added to verify the ABI size calculations match expectations.
A bug was fixed in padding of i64/f64 argument registers on external
calls both in the compiler and runtime.

Fixes iree-org#20663.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐞 Something isn't working runtime Relating to the IREE runtime library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

VM: Support for 64-bit aligned access in register marshaling
3 participants
0