Skip to content
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

Make the Tail call conv follow the system call conv for the return area ptr #9287

Merged
merged 2 commits into from
Sep 20, 2024

Conversation

bjorn3
Copy link
Contributor

@bjorn3 bjorn3 commented Sep 19, 2024

No description provided.

@bjorn3 bjorn3 requested a review from a team as a code owner September 19, 2024 19:44
@bjorn3 bjorn3 requested review from abrown and removed request for a team September 19, 2024 19:44
@bjorn3 bjorn3 force-pushed the abi_cleanup5 branch 2 times, most recently from 5efc511 to 7459dfb Compare September 19, 2024 20:11
…ea ptr

And for Winch make it follow the system call conv on all targets except
aarch64 where the first regular argument register is used instead of
the designated register.
@bjorn3 bjorn3 requested a review from a team as a code owner September 19, 2024 20:13
@bjorn3 bjorn3 requested review from fitzgen and removed request for a team September 19, 2024 20:13
@github-actions github-actions bot added cranelift Issues related to the Cranelift code generator cranelift:area:aarch64 Issues related to AArch64 backend. cranelift:area:x64 Issues related to x64 codegen winch Winch issues or pull requests labels Sep 19, 2024
Copy link

Subscribe to Label Action

cc @saulecabrera

This issue or pull request has been labeled: "cranelift", "cranelift:area:aarch64", "cranelift:area:x64", "winch"

Thus the following users have been cc'd because of the following labels:

  • saulecabrera: winch

To subscribe or unsubscribe from this label, edit the .github/subscribe-to-label.json configuration file.

Learn more.

Copy link
Member

@fitzgen fitzgen left a comment

Choose a reason for hiding this comment

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

Thanks! LGTM, although I have some minor nitpicks. If you feel strongly that some of them are unnecessary, I can be convinced otherwise.

cranelift/codegen/src/isa/aarch64/abi.rs Outdated Show resolved Hide resolved
cranelift/codegen/src/isa/pulley_shared/abi.rs Outdated Show resolved Hide resolved
cranelift/codegen/src/isa/pulley_shared/abi.rs Outdated Show resolved Hide resolved
Comment on lines 116 to +122
next_x_reg += 1;
}
Some(ABIArg::reg(
x_reg(x_start).to_real_reg().unwrap(),
I64,
ir::ArgumentExtension::None,
ir::ArgumentPurpose::Normal,
))
Copy link
Member

Choose a reason for hiding this comment

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

Feel similarly here

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This really needs to be the first argument register. If next_x_reg - 1 is not x_start at this point, that is a bug.

@fitzgen fitzgen added this pull request to the merge queue Sep 20, 2024
Merged via the queue into bytecodealliance:main with commit b19a338 Sep 20, 2024
71 checks passed
@bjorn3 bjorn3 deleted the abi_cleanup5 branch September 20, 2024 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cranelift:area:aarch64 Issues related to AArch64 backend. cranelift:area:x64 Issues related to x64 codegen cranelift Issues related to the Cranelift code generator winch Winch issues or pull requests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants