Skip to content

Remove AbiAlign - #165354

Merged
rust-bors[bot] merged 2 commits into
rust-lang:mainfrom
beetrees:remove-abi-align
Nov 3, 2026
Merged

rust-bors[bot] merged 2 commits into
rust-lang:mainfrom
beetrees:remove-abi-align

Conversation

@beetrees

@beetrees beetrees commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

The first commit removes the final use of AbiAlign (as a field of LayoutData), and the second commit removes AbiAlign itself.

r? @workingjubilee

@rustbot

rustbot commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

Some changes occurred in compiler/rustc_codegen_llvm/src/debuginfo

cc @Walnut356

Layout invariants are being changed

cc @RalfJung

miri is developed in its own repository. If the Miri part of this change can be broken out, consider making this change to rust-lang/miri instead. However, if Miri needs adjusting for rustc changes, just ignore this message.

cc @rust-lang/miri

Some changes occurred to the CTFE / Miri interpreter

cc @rust-lang/miri

rustc_codegen_gcc is developed in its own repository. If possible, consider making this change to rust-lang/rustc_codegen_gcc instead.

cc @antoyo, @GuillaumeGomez

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

Some changes occurred to the CTFE / Miri interpreter

cc @rust-lang/miri, @RalfJung, @oli-obk, @lcnr

clippy is developed in its own repository. If possible, consider making this change to rust-lang/rust-clippy instead.

cc @rust-lang/clippy

rustc_codegen_cranelift is developed in its own repository. If possible, consider making this change to rust-lang/rustc_codegen_cranelift instead.

cc @bjorn3

This PR changes rustc_public

cc @oli-obk, @celinval, @ouz-a, @makai410

Some changes occurred to the CTFE machinery

cc @RalfJung, @oli-obk, @lcnr

@rustbot rustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-clippy Relevant to the Clippy team. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Nov 2, 2026
@rustbot

rustbot commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

workingjubilee is currently at their maximum review capacity.
They may take a while to respond.

@workingjubilee

Copy link
Copy Markdown
Member

At last, the sentence has been carried out.

@workingjubilee

Copy link
Copy Markdown
Member

Hm. Apparently there is a final mention of AbiAlign in the tree.

It was embedded in rustc-dev-guide at src/doc/rustc-dev-guide/src/compiler-debugging.md while talking about using the rustc_dump_layout attr.

@workingjubilee

Copy link
Copy Markdown
Member

We have already made that output out-of-date, so you do not need to fix it.

@workingjubilee

Copy link
Copy Markdown
Member

In any case: Thank you so much!

@bors r+ rollup

@rust-bors

rust-bors Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 7f36744 has been approved by workingjubilee

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Nov 3, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Nov 3, 2026
…ngjubilee

Remove `AbiAlign`

The first commit removes the final use of `AbiAlign` (as a field of `LayoutData`), and the second commit removes `AbiAlign` itself.

r? @workingjubilee
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Nov 3, 2026
…ngjubilee

Remove `AbiAlign`

The first commit removes the final use of `AbiAlign` (as a field of `LayoutData`), and the second commit removes `AbiAlign` itself.

r? @workingjubilee
rust-bors Bot pushed a commit that referenced this pull request Nov 3, 2026
…uwer

Rollup of 15 pull requests

Successful merges:

 - #165378 (rustfmt subtree update (v1.12.0))
 - #149245 (Make inline attributes apply to the generated `poll` in async fn)
 - #164304 ([perf] Reuse CanonicalVarKinds if no new variables were added)
 - #165109 (Avoid building a region map when erasing bound regions)
 - #163393 (std: Use getexecpath() for current_exe() on OpenBSD)
 - #164896 (offload: pass the linked device image to the host pass)
 - #165358 (Reenable some cg_gcc tests that were disabled)
 - #165371 (Don't use `llvm_type` as the type of `static`s.)
 - #162232 (Replace `builtin #` with `k#`)
 - #162608 (Avoid oscillating line wrapping due to symbol indices)
 - #165029 (Use `MalformedLintAttributeInput` in more places)
 - #165203 (AIX: Implement TLS destructor guard in std and update dynamic-loading-cdylib test)
 - #165230 (Fix rigidity assertion ICE)
 - #165354 (Remove `AbiAlign`)
 - #165374 (Refactorings in preparation for the move trait)
@JonathanBrouwer

Copy link
Copy Markdown
Member

💔 I suspect this PR failed tests as part of a rollup
@bors r-

After fixing the problem, consider running a try job for the failed job before re-approving.

Link to failure: #165393 (comment)

@rust-bors rust-bors Bot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Nov 3, 2026
@rust-bors

rust-bors Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved.

This PR was contained in a rollup (#165393), which was unapproved.

View changes since this unapproval

@rustbot

rustbot commented Nov 3, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@beetrees

beetrees commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

@bors r=workingjubilee

@rust-bors

rust-bors Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 8249697 has been tentatively approved by workingjubilee

It will be put into the queue for this repository once PR CI succeeds.

@rust-bors rust-bors Bot added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Nov 3, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Nov 3, 2026
@workingjubilee

Copy link
Copy Markdown
Member

Ah whoops, didn't think about Miri.

rust-bors Bot pushed a commit that referenced this pull request Nov 3, 2026
…uwer

Rollup of 7 pull requests

Successful merges:

 - #165416 (fix unsoundness when compiling `[diverging_const; 0]`)
 - #163217 ([perf] rustdoc: Avoid re-HIR-ty-lowering tys & const args where possible)
 - #165371 (Don't use `llvm_type` as the type of `static`s.)
 - #165354 (Remove `AbiAlign`)
 - #165357 (rustdoc: Fix invalid clean of paths when they end with `self`)
 - #165401 (Add codegen test for step_by(1) loop vectorization)
 - #165408 (LLVMRustWriteOutputFile: Check the result of runCodeGenPipeline)
@beetrees

beetrees commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

The failure was caused by a layout.align.abi added in the Miri subtree update (#165331) that merged after this PR was approved, so you didn't miss anything.

@workingjubilee

Copy link
Copy Markdown
Member

Oh, weird!

@rust-bors
rust-bors Bot merged commit c9e64c8 into rust-lang:main Nov 3, 2026
14 checks passed
@rustbot rustbot added this to the 1.101.0 milestone Nov 3, 2026
rust-bors Bot pushed a commit that referenced this pull request Nov 3, 2026
Rollup merge of #165354 - beetrees:remove-abi-align, r=workingjubilee

Remove `AbiAlign`

The first commit removes the final use of `AbiAlign` (as a field of `LayoutData`), and the second commit removes `AbiAlign` itself.

r? @workingjubilee
@beetrees
beetrees deleted the remove-abi-align branch November 3, 2026 23:54
RalfJung pushed a commit to RalfJung/miri that referenced this pull request Nov 4, 2026
…uwer

Rollup of 7 pull requests

Successful merges:

 - rust-lang/rust#165416 (fix unsoundness when compiling `[diverging_const; 0]`)
 - rust-lang/rust#163217 ([perf] rustdoc: Avoid re-HIR-ty-lowering tys & const args where possible)
 - rust-lang/rust#165371 (Don't use `llvm_type` as the type of `static`s.)
 - rust-lang/rust#165354 (Remove `AbiAlign`)
 - rust-lang/rust#165357 (rustdoc: Fix invalid clean of paths when they end with `self`)
 - rust-lang/rust#165401 (Add codegen test for step_by(1) loop vectorization)
 - rust-lang/rust#165408 (LLVMRustWriteOutputFile: Check the result of runCodeGenPipeline)
copybara-service Bot pushed a commit to google/crubit that referenced this pull request Nov 4, 2026
…1-04.

Upstream rust-lang/rust#165354 (81330f91e512) replaced `AbiAlign` with `Align` on `rustc_abi::LayoutData::align` starting in `nightly-2026-11-04`.

Gate `LayoutData::for_variant(layout, i).align` access in `generate_enum` with `#[rustversion::before(2026-11-04)]` and `#[rustversion::since(2026-11-04)]`, and use `self.layout.align().bytes()` on `Layout<'tcx>` for single-variant and empty enums.

Closes #2818

PiperOrigin-RevId: 1013473598
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-clippy Relevant to the Clippy team. 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.

4 participants