- Notifications
You must be signed in to change notification settings - Fork14.1k
Also sortcrt-static in--print target-features output#126424
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
| rustc_target_features.sort(); | ||
| llvm_target_features.retain(|(f, _d)| !known_llvm_target_features.contains(f)); | ||
| llvm_target_features.sort(); |
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 the llvm target features already be sorted? there's a binary search just above
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.
Yes,llvm_target_features appears to be sorted.
Turns out there is no regression test for the output. Probably because it is highly target specific and probably would be a pain to maintain.
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.
We do have a few that check--print and-Z output so it was still worth a shot, but they should have failed locally.
This comment was marked as outdated.
This comment was marked as outdated.
lqd commentedJun 13, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
(cc#126430 on that last failure, which is unfortunate as it stops CI from possibly finding a failing test for this PR...) |
lcnr commentedJun 14, 2024
r?@lqd |
lqd commentedJun 14, 2024 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Relaunched PR CI jobs now that the rustdoc tests are fixed This LGTM once we have the answer on the existing order. |
I didn't find `crt-static` at first (for `x86_64-unknown-linux-gnu`),because it was put at the bottom the large and otherwise sorted list.Fully sort the list before we print it.Note that `llvm_target_features` starts out sorted and does not need tobe sorted an extra time.
--print target-featurescrt-static in--print target-features outputlqd commentedJun 14, 2024
Thanks! @bors r+ |
bors commentedJun 14, 2024
Also sort `crt-static` in `--print target-features` outputI didn't find `crt-static` at first (for `x86_64-unknown-linux-gnu`), because it was put at the bottom of the large and otherwise sorted list.Fully sort the list before we print it.Note that `llvm_target_features` starts out and remains sorted and does not need to be sorted an extra time.On my machine the diff is just:```diff$ diff -u /tmp/before2.txt /tmp/after2.txt--- /tmp/before2.txt 2024-06-13 20:40:27.091636592 +0200+++ /tmp/after2.txt 2024-06-13 20:39:54.584894891 +0200`@@` -20,6 +20,7 `@@` bmi1 - Support BMI instructions. bmi2 - Support BMI2 instructions. cmpxchg16b - 64-bit with cmpxchg16b (this is true for most x86-64 chips, but not the first AMD chips).+ crt-static - Enables C Run-time Libraries to be statically linked. ermsb - REP MOVS/STOS are fast. f16c - Support 16-bit floating point conversion instructions. fma - Enable three-operand fused multiple-add.`@@` -49,7 +50,6 `@@` xsavec - Support xsavec instructions. xsaveopt - Support xsaveopt instructions. xsaves - Support xsaves instructions.- crt-static - Enables C Run-time Libraries to be statically linked. Code-generation features supported by LLVM for this target: 16bit-mode - 16-bit mode (i8086).```I couldn't find a ui test that tested this output. Let's see if CI finds a regression tests.
…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#126424 - Enselic:sort-target-features, r=lqd Also sort `crt-static` in `--print target-features` outputI didn't find `crt-static` at first (for `x86_64-unknown-linux-gnu`), because it was put at the bottom of the large and otherwise sorted list.Fully sort the list before we print it.Note that `llvm_target_features` starts out and remains sorted and does not need to be sorted an extra time.On my machine the diff is just:```diff$ diff -u /tmp/before2.txt /tmp/after2.txt--- /tmp/before2.txt 2024-06-13 20:40:27.091636592 +0200+++ /tmp/after2.txt 2024-06-13 20:39:54.584894891 +0200``@@`` -20,6 +20,7 ``@@`` bmi1 - Support BMI instructions. bmi2 - Support BMI2 instructions. cmpxchg16b - 64-bit with cmpxchg16b (this is true for most x86-64 chips, but not the first AMD chips).+ crt-static - Enables C Run-time Libraries to be statically linked. ermsb - REP MOVS/STOS are fast. f16c - Support 16-bit floating point conversion instructions. fma - Enable three-operand fused multiple-add.``@@`` -49,7 +50,6 ``@@`` xsavec - Support xsavec instructions. xsaveopt - Support xsaveopt instructions. xsaves - Support xsaves instructions.- crt-static - Enables C Run-time Libraries to be statically linked. Code-generation features supported by LLVM for this target: 16bit-mode - 16-bit mode (i8086).```I couldn't find a ui test that tested this output. Let's see if CI finds a regression tests.
Uh oh!
There was an error while loading.Please reload this page.
I didn't find
crt-staticat first (forx86_64-unknown-linux-gnu), because it was put at the bottom of the large and otherwise sorted list.Fully sort the list before we print it.
Note that
llvm_target_featuresstarts out and remains sorted and does not need to be sorted an extra time.On my machine the diff is just:
I couldn't find a ui test that tested this output. Let's see if CI finds a regression tests.