-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
use indirect return for i128
and f128
on wasm32
#135534
Conversation
This comment has been minimized.
This comment has been minimized.
Given that I was the one who actually suggested this: r? compiler |
b401404
to
cafb35c
Compare
r? compiler |
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.
Could this get a codegen test? I recently wrote a similar one that you could probably copy part of https://github.com/rust-lang/rust/blob/3557d39ce2c8ae3b2fb57e9d900ce47796f0a13e/tests/codegen/i128-x86-callconv.rs
cafb35c
to
fef3dd4
Compare
I added codegen tests for |
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.
r=me with green CI
@bors r=tgross35 |
@folkertdev: 🔑 Insufficient privileges: Not in reviewers |
@bors r=tgross35 without the @ maybe? or is something else messed up? |
@folkertdev: 🔑 Insufficient privileges: Not in reviewers |
Bors still requires permissions to r=somebody, a reviewer commenting r=me doesn’t actually do anything @bors r+ |
ah, I see this from time to time but the person actually doing |
…gross35 use indirect return for `i128` and `f128` on wasm32 fixes rust-lang#135532 Based on https://github.com/WebAssembly/tool-conventions/blob/main/BasicCABI.md we now use an indirect return for `i128`, `u128` and `f128`. That is what LLVM ended up doing anyway. r? `@bjorn3`
Rollup of 5 pull requests Successful merges: - rust-lang#134286 (Enable `unreachable_pub` lint in core) - rust-lang#135249 (Fix overflows in the implementation of `overflowing_literals` lint's help) - rust-lang#135534 (use indirect return for `i128` and `f128` on wasm32) - rust-lang#135556 (Clarify note in `std::sync::LazyLock` example) - rust-lang#135560 (Update `compiler-builtins` to 0.1.144) r? `@ghost` `@rustbot` modify labels: rollup
…gross35 use indirect return for `i128` and `f128` on wasm32 fixes rust-lang#135532 Based on https://github.com/WebAssembly/tool-conventions/blob/main/BasicCABI.md we now use an indirect return for `i128`, `u128` and `f128`. That is what LLVM ended up doing anyway. r? ``@bjorn3``
…iaskrgr Rollup of 4 pull requests Successful merges: - rust-lang#135249 (Fix overflows in the implementation of `overflowing_literals` lint's help) - rust-lang#135534 (use indirect return for `i128` and `f128` on wasm32) - rust-lang#135556 (Clarify note in `std::sync::LazyLock` example) - rust-lang#135560 (Update `compiler-builtins` to 0.1.144) r? `@ghost` `@rustbot` modify labels: rollup
@bors r- rollup=iffy |
|
fef3dd4
to
702134a
Compare
I think just adding I do wonder whether it makes sense to lint for codegen tests that don't set the opt level in some way, because I think in most cases you'd want the stability of the output that that provides (and some @rustbot ready |
@bors r=tgross35 |
☀️ Test successful - checks-actions |
Finished benchmarking commit (bcd0683): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (secondary 2.7%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResults (secondary 2.5%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 764.673s -> 763.784s (-0.12%) |
fixes #135532
Based on https://github.com/WebAssembly/tool-conventions/blob/main/BasicCABI.md we now use an indirect return for
i128
,u128
andf128
. That is what LLVM ended up doing anyway.r? @bjorn3