Skip to content

Conversation

tgross35
Copy link
Contributor

@tgross35 tgross35 commented Jul 3, 2025

Update the Josh subtree to rust-lang/compiler-builtins@8aba4c899ee8.

r? @ghost

folkertdev and others added 9 commits June 14, 2025 13:10
This PR adds a minimal `triagebot.toml` config to make contributions to
this repository respect upstream rust-lang/rust conventions and avoid
issues when syncing this subtree.
Rather than re-opening the archive file for each check, add a wrapper
that keeps the data in memory. Additionally, collect the `--target`
argument so it can be used within this crate.
Often our short summaries will pick up a Bors "Auto merge of #xxxx ...`
commit message. Replace these with something like `rust-lang#1234`
to avoid broken links when going between repositories.
…i256 and u256

`i256` and `u256`
- operators now use the same overflow convention as primitives
- implement `<<` and `-` (previously just `>>` and `+`)
- implement `Ord` correctly (the previous `PartialOrd` was broken)
- correct `i256::SIGNED` to `true`

The `Int`-trait is extended with `trailing_zeros`, `carrying_add`, and
`borrowing_sub`.
Currently we whether or not to build and test `f16` and `f128` support
mostly based on the target triple. This isn't always accurate, however,
since support also varies by backend and the backend version.

Since recently, `rustc` is aware of this with the unstable config option
`target_has_reliable_{f16,f128}`, which better represents when the types
are actually expected to be available and usable. Switch our
compiler-builtins and libm configuration to use this by probing `rustc`
for the target's settings.

A few small `cfg` fixes are needed with this.
@rustbot rustbot added A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 3, 2025
@tgross35
Copy link
Contributor Author

tgross35 commented Jul 3, 2025

@bors r+ rollup=never

@bors
Copy link
Collaborator

bors commented Jul 3, 2025

📌 Commit be35d37 has been approved by tgross35

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 3, 2025
bors added a commit that referenced this pull request Jul 4, 2025
Update the `compiler-builtins` subtree

Update the Josh subtree to rust-lang/compiler-builtins@ed17b95715dd.

r? `@ghost`
@bors
Copy link
Collaborator

bors commented Jul 4, 2025

⌛ Testing commit be35d37 with merge a6503b1...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Jul 4, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jul 4, 2025
tgross35 added 5 commits July 4, 2025 16:53
This makes it more obvious what we intend to check rather than looking
for `--target`.
Rather than printing the entire JSON dump, use the rendered version.
8521530f4938 ("Fix __divsi3 and __udivsi3 on thumbv6m targets") removed
tests that use these `thumb*-linux` target files in favor of tests that
use the `thumb*-none` targets, which are available via Rustup. The JSON
files haven't been used since then and are outdated, so remove them.
The `rustc` probe done in our build scripts needs to pass `--target` to
get the correct configuration, which usually comes from the `TARGET`
environment variable. However, for targets specified via a `target.json`
file, `TARGET` gets set to the file name without an extension or path.
`rustc` will check a search path to attempt to locate the file, but this
is likely to fail since the directory where Cargo invokes build scripts
(and hence where those scripts invoke `rustc`) might not have any
relation to the JSON spec file.

Resolve this for now by leaving `f16` and `f128` disabled if the `rustc`
command fails. Result of the discussion at CARGO-14208 may eventually
provide a better solution.

A CI test is also added since custom JSON files are an edge case that
could fail in other ways. I verified this fails without the fix here.
The JSON file is the output for `thumbv7em-none-eabi`, just renamed so
`rustc` doesn't identify it.
@tgross35
Copy link
Contributor Author

tgross35 commented Jul 5, 2025

@bors r+

@bors
Copy link
Collaborator

bors commented Jul 5, 2025

📌 Commit 016bc61 has been approved by tgross35

It is now in the queue for this repository.

@bors bors removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 5, 2025
@bors
Copy link
Collaborator

bors commented Jul 9, 2025

📌 Commit 016bc61 has been approved by tgross35

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 9, 2025
@bors
Copy link
Collaborator

bors commented Jul 9, 2025

⌛ Testing commit 016bc61 with merge fd2e8b9...

bors added a commit that referenced this pull request Jul 9, 2025
Update the `compiler-builtins` subtree

Update the Josh subtree to rust-lang/compiler-builtins@8aba4c899ee8.

r? `@ghost`
@rust-log-analyzer
Copy link
Collaborator

The job dist-x86_64-msvc failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[2025-07-09T14:47:55Z DEBUG collector::compile::benchmark] Benchmark iteration 1/1
[2025-07-09T14:47:55Z INFO  collector::compile::execute] run_rustc with incremental=false, profile=Check, scenario=Some(Full), patch=None, backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark
[2025-07-09T14:47:55Z DEBUG collector::compile::execute] "\\\\?\\C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\stage0\\bin\\cargo.exe" "rustc" "--manifest-path" "Cargo.toml" "-p" "path+file:///C:/Users/RUNNER~1/AppData/Local/Temp/.tmpgTtMxH#[email protected]" "--profile" "check" "--" "--wrap-rustc-with" "Eprintln"
[2025-07-09T14:47:56Z INFO  collector::compile::execute] run_rustc with incremental=true, profile=Check, scenario=Some(IncrFull), patch=None, backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark
[2025-07-09T14:47:56Z DEBUG collector::compile::execute] "\\\\?\\C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\stage0\\bin\\cargo.exe" "rustc" "--manifest-path" "Cargo.toml" "-p" "path+file:///C:/Users/RUNNER~1/AppData/Local/Temp/.tmpgTtMxH#[email protected]" "--profile" "check" "--" "--wrap-rustc-with" "Eprintln" "-C" "incremental=C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\.tmpgTtMxH\\incremental-state"
[2025-07-09T14:47:57Z INFO  collector::compile::execute] run_rustc with incremental=true, profile=Check, scenario=Some(IncrUnchanged), patch=None, backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark
[2025-07-09T14:47:57Z DEBUG collector::compile::execute] "\\\\?\\C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\stage0\\bin\\cargo.exe" "rustc" "--manifest-path" "Cargo.toml" "-p" "path+file:///C:/Users/RUNNER~1/AppData/Local/Temp/.tmpgTtMxH#[email protected]" "--profile" "check" "--" "--wrap-rustc-with" "Eprintln" "-C" "incremental=C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\.tmpgTtMxH\\incremental-state"
[2025-07-09T14:47:58Z DEBUG collector::compile::benchmark] applying patch println
[2025-07-09T14:47:58Z DEBUG collector::compile::benchmark::patch] applying println to "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\.tmpgTtMxH"
[2025-07-09T14:47:58Z INFO  collector::compile::execute] run_rustc with incremental=true, profile=Check, scenario=Some(IncrPatched), patch=Some(Patch { index: 0, name: PatchName("println"), path: "0-println.patch" }), backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark
[2025-07-09T14:47:58Z DEBUG collector::compile::execute] "\\\\?\\C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\stage0\\bin\\cargo.exe" "rustc" "--manifest-path" "Cargo.toml" "-p" "path+file:///C:/Users/RUNNER~1/AppData/Local/Temp/.tmpgTtMxH#[email protected]" "--profile" "check" "--" "--wrap-rustc-with" "Eprintln" "-C" "incremental=C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\.tmpgTtMxH\\incremental-state"
Running bitmaps-3.2.1: Debug + [Full, IncrFull, IncrUnchanged, IncrPatched] + Llvm + X86_64UnknownLinuxGnu
[2025-07-09T14:47:59Z DEBUG collector::compile::benchmark] Benchmark iteration 1/1
[2025-07-09T14:47:59Z INFO  collector::compile::execute] run_rustc with incremental=false, profile=Debug, scenario=Some(Full), patch=None, backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark
[2025-07-09T14:47:59Z DEBUG collector::compile::execute] "\\\\?\\C:\\a\\rust\\rust\\build\\x86_64-pc-windows-msvc\\stage0\\bin\\cargo.exe" "rustc" "--manifest-path" "Cargo.toml" "-p" "path+file:///C:/Users/RUNNER~1/AppData/Local/Temp/.tmpF6eo83#[email protected]" "--" "--wrap-rustc-with" "Eprintln"
[2025-07-09T14:48:00Z INFO  collector::compile::execute] run_rustc with incremental=true, profile=Debug, scenario=Some(IncrFull), patch=None, backend=Llvm, target=X86_64UnknownLinuxGnu, phase=benchmark

@bors
Copy link
Collaborator

bors commented Jul 9, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jul 9, 2025
@Kobzol
Copy link
Member

Kobzol commented Jul 9, 2025

@/bors treeclosed-

@tgross35
Copy link
Contributor Author

tgross35 commented Jul 9, 2025

@bors2 try jobs=dist-x86_64-msvc

@rust-bors
Copy link

rust-bors bot commented Jul 9, 2025

⌛ Trying commit 016bc61 with merge 608083e

To cancel the try build, run the command @bors2 try cancel.

rust-bors bot added a commit that referenced this pull request Jul 9, 2025
Update the `compiler-builtins` subtree

Update the Josh subtree to rust-lang/compiler-builtins@8aba4c899ee8.

r? `@ghost`
try-job: dist-x86_64-msvc
@rust-bors
Copy link

rust-bors bot commented Jul 9, 2025

☀️ Try build successful (CI)
Build commit: 608083e (608083e5747ea65e66b16789ff905aeb5280a427, parent: 6b3ae3f6e45a33c2d95fa0362c9b2593e567fd34)

@tgross35
Copy link
Contributor Author

tgross35 commented Jul 9, 2025

Spurious?
@bors r+

@bors
Copy link
Collaborator

bors commented Jul 9, 2025

💡 This pull request was already approved, no need to approve it again.

@bors
Copy link
Collaborator

bors commented Jul 9, 2025

📌 Commit 016bc61 has been approved by tgross35

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 9, 2025
@bors
Copy link
Collaborator

bors commented Jul 9, 2025

⌛ Testing commit 016bc61 with merge 607fbd8...

@bors
Copy link
Collaborator

bors commented Jul 10, 2025

☀️ Test successful - checks-actions
Approved by: tgross35
Pushing 607fbd8 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jul 10, 2025
@bors bors merged commit 607fbd8 into rust-lang:master Jul 10, 2025
24 checks passed
@rustbot rustbot added this to the 1.90.0 milestone Jul 10, 2025
@tgross35 tgross35 deleted the update-builtins branch July 10, 2025 01:45
Copy link
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing e43d139 (parent) -> 607fbd8 (this PR)

Test differences

No test diffs found

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 607fbd8d3e25997737a0bf25b215e581b922f1b0 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. x86_64-apple-1: 8089.3s -> 5716.5s (-29.3%)
  2. x86_64-apple-2: 4041.6s -> 5222.1s (29.2%)
  3. pr-check-2: 2496.4s -> 2113.3s (-15.3%)
  4. x86_64-gnu-tools: 3632.7s -> 3298.4s (-9.2%)
  5. x86_64-gnu-llvm-20-1: 3664.6s -> 3364.8s (-8.2%)
  6. x86_64-rust-for-linux: 2750.6s -> 2527.0s (-8.1%)
  7. x86_64-gnu-debug: 5892.1s -> 5444.0s (-7.6%)
  8. x86_64-gnu-distcheck: 8228.7s -> 7605.5s (-7.6%)
  9. dist-apple-various: 5813.2s -> 6251.7s (7.5%)
  10. i686-msvc-1: 9884.7s -> 9155.8s (-7.4%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (607fbd8): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.1% [-0.1%, -0.0%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -1.0%, secondary 2.4%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.0% [2.0%, 2.0%] 1
Regressions ❌
(secondary)
4.1% [1.8%, 6.0%] 6
Improvements ✅
(primary)
-2.0% [-3.5%, -1.1%] 3
Improvements ✅
(secondary)
-2.9% [-3.5%, -2.3%] 2
All ❌✅ (primary) -1.0% [-3.5%, 2.0%] 4

Cycles

Results (secondary -3.7%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.7% [-3.7%, -3.7%] 1
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 464.828s -> 464.395s (-0.09%)
Artifact size: 374.47 MiB -> 374.48 MiB (0.00%)

github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request Jul 12, 2025
Update the `compiler-builtins` subtree

Update the Josh subtree to rust-lang/compiler-builtins@8aba4c899ee8.

r? `@ghost`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants