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

Rollup of 9 pull requests #135202

Merged
merged 18 commits into from
Jan 7, 2025
Merged

Rollup of 9 pull requests #135202

merged 18 commits into from
Jan 7, 2025

Conversation

GuillaumeGomez
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

xingxue-ibm and others added 18 commits January 6, 2025 16:59
…and nullify the timestamp field of XCOFF files for file comparison.
See llvm/llvm-project#121851

For LLVM 20+, this function (`renameModuleForThinLTO`) has no return
value. For prior versions of LLVM, this never failed, but had a
signature which allowed an error value people were handling.
By default, jemalloc is built to only support the same page size as the
host machine. For AArch64 targets, set an env variable so that jemalloc
is built with support for page sizes up to 64K regardless of the host machine.
Signed-off-by: onur-ozkan <work@onurozkan.dev>
as triagebot/rustbot now ignores HTML blocks.

cf. rust-lang/triagebot#1869
Running tidy with `--bless` flag is breaking the build cache as tidy updates mtime
of `proc_macro_deps.rs` unconditionally and that leads cargo to recompile tidy.

This patch fixes that.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
This renames variables named `str` to other names, to make sure `str`
always refers to a type.

It's confusing to read code where `str` (or another standard type name)
is used as an identifier. It also produces misleading syntax
highlighting.
bootstrap: Build jemalloc with support for 64K pages

By default, jemalloc is built to only support the same page size as the host machine. Set an env variable so that jemalloc is built with support for page sizes up to 64K regardless of the host machine.

r? `@Kobzol`

Resolves rust-lang#134563
Potentially resolves rust-lang#133748 (needs verification)

----

Results from local rustc-perf testing below, within 0.5% on every metric except max-rss.
AArch64:
![Screenshot 2025-01-03 at 5 53 13 pm](https://github.com/user-attachments/assets/71705c59-7d7b-4753-a184-8c784233e603)
x86_64:
![Screenshot 2025-01-03 at 5 54 16 pm](https://github.com/user-attachments/assets/ea28aded-3b90-43f4-a965-b081b07b95ab)
…, r=jieyouxu

[AIX] Port test case run-make/reproducible-build

The test case `run-make/reproducible-build` verifies that two identical invocations of the compiler produce the same output by comparing the linker arguments, resulting binaries, and other artifacts. However, the AIX linker command includes an argument that specifies the file containing exported symbols, with a file path that contains a randomly generated substring to prevent collisions between different linking processes. Additionally, the AIX XCOFF file header includes a 4-byte timestamp. This PR replaces the random substring with a placeholder and nullifies the timestamp field in the XCOFF files for the comparisons.
llvm: Ignore error value that is always false

See llvm/llvm-project#121851

For LLVM 20+, this function (`renameModuleForThinLTO`) has no return value. For prior versions of LLVM, this never failed, but had a signature which allowed an error value people were handling.

`@rustbot` label: +llvm-main
r? `@nikic`

Wait a moment before approving while the llvm-main infrastructure picks it up.
…r=oli-obk

Transmute from NonNull to pointer when elaborating a box deref (MCP807)

Since per rust-lang/compiler-team#807 we have to stop projecting into `NonNull`.

cc rust-lang#133652
…bini

apply a workaround fix for the release roadblock

This has been a problem since the last two releases.

r? pietroalbini
Remove workaround from pull request template

This PR removes the workaround (`\`) from our pull request template as triagebot/rustbot now ignores HTML blocks.

cf. rust-lang/triagebot#1869
cc `@jieyouxu`
r? `@ehuss`
…, r=jieyouxu

don't bless `proc_macro_deps.rs` unless it's necessary

Running tidy with `--bless` flag is breaking the build cache as tidy updates mtime of `proc_macro_deps.rs` (rust-lang#134865) unconditionally and that leads cargo to recompile tidy.

This patch fixes that.
…ouxu

Avoid naming variables `str`

This renames variables named `str` to other names, to make sure `str`
always refers to a type.

It's confusing to read code where `str` (or another standard type name)
is used as an identifier. It also produces misleading syntax
highlighting.
…, r=lqd

Eliminate an unnecessary `Symbol::to_string`; use `as_str`
@rustbot rustbot added A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc O-windows Operating system: Windows PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Jan 7, 2025
@GuillaumeGomez
Copy link
Member Author

@bors r+ p=9 rollup=never

@bors
Copy link
Contributor

bors commented Jan 7, 2025

📌 Commit 225ffeb has been approved by GuillaumeGomez

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 Jan 7, 2025
@bors
Copy link
Contributor

bors commented Jan 7, 2025

⌛ Testing commit 225ffeb with merge ad211ce...

@bors
Copy link
Contributor

bors commented Jan 7, 2025

☀️ Test successful - checks-actions
Approved by: GuillaumeGomez
Pushing ad211ce to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jan 7, 2025
@bors bors merged commit ad211ce into rust-lang:master Jan 7, 2025
7 checks passed
@rustbot rustbot added this to the 1.86.0 milestone Jan 7, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#135081 bootstrap: Build jemalloc with support for 64K pages c656f5b337acc1a9fcb63124ea46d1e92f7b3c32 (link)
#135174 [AIX] Port test case run-make/reproducible-build dbaec7014bdfbb8cf3ed7da1de988d6c2e5e4d36 (link)
#135177 llvm: Ignore error value that is always false 7b5dcc27ea28fb645e9850f52e034684431babac (link)
#135182 Transmute from NonNull to pointer when elaborating a box de… eb3e568468b0e1355ed41f5f6c72b39a268193d5 (link)
#135187 apply a workaround fix for the release roadblock fab4d17b74ccbaa0c285de685b95ff25684b6180 (link)
#135189 Remove workaround from pull request template 30f5107b69fd30cfcf5767cdcfbc71789f46ab80 (link)
#135193 don't bless proc_macro_deps.rs unless it's necessary 57077229b10e0097eb3998972386b11630889dae (link)
#135198 Avoid naming variables str a5f24e9aff222b6539ef6b6b491f4e44f3fe73f8 (link)
#135199 Eliminate an unnecessary Symbol::to_string; use as_str 7b9ff7a9d288e0b298b8bc52dca1497439a865a8 (link)

previous master: fb546ee09b

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@GuillaumeGomez GuillaumeGomez deleted the rollup-9xgs39t branch January 7, 2025 19:08
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (ad211ce): comparison URL.

Overall result: ❌ regressions - no action needed

@rustbot label: -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

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

Max RSS (memory usage)

Results (primary -1.5%, secondary -1.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.

mean range count
Regressions ❌
(primary)
2.4% [2.4%, 2.4%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-3.4% [-3.5%, -3.3%] 2
Improvements ✅
(secondary)
-1.5% [-2.1%, -0.8%] 2
All ❌✅ (primary) -1.5% [-3.5%, 2.4%] 3

Cycles

Results (primary 2.0%, secondary 3.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.

mean range count
Regressions ❌
(primary)
2.0% [1.6%, 2.8%] 3
Regressions ❌
(secondary)
3.5% [1.8%, 4.9%] 10
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.0% [1.6%, 2.8%] 3

Binary size

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

Bootstrap: 764.15s -> 763.589s (-0.07%)
Artifact size: 325.71 MiB -> 325.74 MiB (0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs A-testsuite Area: The testsuite used to check the correctness of rustc merged-by-bors This PR was explicitly merged by bors. O-windows Operating system: Windows PG-exploit-mitigations Project group: Exploit mitigations rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.