- Notifications
You must be signed in to change notification settings - Fork14.1k
Addf16 andf128 inline ASM support forx86 andx86-64#126417
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
rustbot commentedJun 13, 2024
rustbot has assigned@petrochenkov. Use |
petrochenkov commentedJun 13, 2024
r?@Amanieu |
tgross35 commentedJun 13, 2024
Thanks, there is some overlap here with#126070 |
| Self::xmm_reg =>types!{ | ||
| sse:I32,I64,F32,F64, | ||
| VecI8(16),VecI16(8),VecI32(4),VecI64(2),VecF32(4),VecF64(2); | ||
| sse:I32,I64,F16,F32,F64,F128, |
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.
I would hold back on addingf128 as an allowed input type since there aren't any instructions that actually support that type.
But for f16 this seems fine.
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.
While there aren't any instructions that takef128 as an operand,f128 is passed and returned in XMM registers as part of the x86-64System V C ABI so seems worth including.
Amanieu commentedJun 14, 2024
@bors r+ |
bors commentedJun 14, 2024
…r=AmanieuAdd `f16` and `f128` inline ASM support for `x86` and `x86-64`This PR adds `f16` and `f128` input and output support to inline ASM on `x86` and `x86-64`. `f16` vector sizes are taken from [here](https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html).Relevant issue:rust-lang#125398Tracking issue:rust-lang#116909`@rustbot` label +F-f16_and_f128
…iaskrgrRollup of 10 pull requestsSuccessful merges: -rust-lang#125829 (rustc_span: Add conveniences for working with span formats) -rust-lang#126279 (Migrate `inaccessible-temp-dir`, `output-with-hyphens` and `issue-10971-temps-dir` `run-make` tests to `rmake`) -rust-lang#126361 (Unify intrinsics body handling in StableMIR) -rust-lang#126417 (Add `f16` and `f128` inline ASM support for `x86` and `x86-64`) -rust-lang#126424 ( Also sort `crt-static` in `--print target-features` output) -rust-lang#126428 (Polish `std::path::absolute` documentation.) -rust-lang#126429 (Add `f16` and `f128` const eval for binary and unary operationations) -rust-lang#126448 (End support for Python 3.8 in tidy) -rust-lang#126488 (Use `std::path::absolute` in bootstrap) -rust-lang#126511 (.mailmap: Associate both my work and my private email with me)r? `@ghost``@rustbot` modify labels: rollup
…iaskrgrRollup of 9 pull requestsSuccessful merges: -rust-lang#125829 (rustc_span: Add conveniences for working with span formats) -rust-lang#126361 (Unify intrinsics body handling in StableMIR) -rust-lang#126417 (Add `f16` and `f128` inline ASM support for `x86` and `x86-64`) -rust-lang#126424 ( Also sort `crt-static` in `--print target-features` output) -rust-lang#126428 (Polish `std::path::absolute` documentation.) -rust-lang#126429 (Add `f16` and `f128` const eval for binary and unary operationations) -rust-lang#126448 (End support for Python 3.8 in tidy) -rust-lang#126488 (Use `std::path::absolute` in bootstrap) -rust-lang#126511 (.mailmap: Associate both my work and my private email with me)r? `@ghost``@rustbot` modify labels: rollup
Rollup merge ofrust-lang#126417 - beetrees:f16-f128-inline-asm-x86, r=AmanieuAdd `f16` and `f128` inline ASM support for `x86` and `x86-64`This PR adds `f16` and `f128` input and output support to inline ASM on `x86` and `x86-64`. `f16` vector sizes are taken from [here](https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html).Relevant issue:rust-lang#125398Tracking issue:rust-lang#116909``@rustbot`` label +F-f16_and_f128
This PR adds
f16andf128input and output support to inline ASM onx86andx86-64.f16vector sizes are taken fromhere.Relevant issue:#125398
Tracking issue:#116909
@rustbot label +F-f16_and_f128