-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
Rollup of 9 pull requests #150028
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
Closed
Closed
Rollup of 9 pull requests #150028
+1,483
−700
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
It is unconditionally included.
Perhaps the old name used to be accurate in the past, but nowadays most injected dependencies are unconditionally linked too.
It is always identical to the list of values in cnum_map.
- Tested on QEMU OVMF. Signed-off-by: Ayush Singh <ayush@beagleboard.org>
…ts2, r=jdonszelmann Warn on codegen attributes on required trait methods This PR turns applying the following attributes on required trait methods (that is, trait methods **without** a default implementation) into a FCW: - `#[cold]` - `#[link_section]` - `#[linkage]` (unstable) - `#[rustc_allow_const_fn_unstable]` (internal attribute) These attributes already had no effect when applied to a required trait method, this PR only adds a warning. Furthermore, it adds a comment in the code that the following codegen attributes are *inherited* when applied to a required trait method: - `#[track_caller]` - `#[align]` (unstable) `@rustbot` labels +I-lang-nominated `@rust-lang/lang` Two questions for the lang team: - Is adding this warning ok? - Does the current behaviour of these attributes align with that you would expect them to be? Fixes rust-lang#147432
…r=davidtwco,JonathanBrouwer Add new Tier-3 target: riscv64im-unknown-none-elf This PR proposes to add riscv64im-unknown-none-elf, a subset of the already supported riscv64imac-unknown-none-elf. The motivation behind this PR is that we want to standardize (most) zkVMs on riscv64im-none and riscv64ima-none. Having different variants of riscv extensions, also seems to be within expectation, atleast with respects to riscv32. Note: This does not mean that we will be able to remove [riscv32im-risc0-zkvm-elf](https://doc.rust-lang.org/rustc/platform-support/riscv32im-risc0-zkvm-elf.html) -- I am not aware of all of the dependents for this **Tier-3 Policy** > A tier 3 target must have a designated developer or developers (the "target maintainers") on record to be CCed when issues arise regarding the target. (The mechanism to track and CC such developers may evolve over time.) I assigned Rust Embedded Working Group, since they are already maintaining riscv64IMAC, though I am happy to assign myself. > Targets must use naming consistent with any existing targets; for instance, a target for the same CPU or OS as an existing Rust target should use the same name for that CPU or OS. Targets should normally use the same names and naming conventions as used elsewhere in the broader ecosystem beyond Rust (such as in other toolchains), unless they have a very good reason to diverge. Changing the name of a target can be highly disruptive, especially once the target reaches a higher tier, so getting the name right is important even for a tier 3 target. It follows the naming convention of the other bare metal riscv targets > Tier 3 targets may have unusual requirements to build or use, but must not create legal issues or impose onerous legal terms for the Rust project or for Rust developers or users. This has the same requirements as riscv{32, 64}imac > Neither this policy nor any decisions made regarding targets shall create any binding agreement or estoppel by any party. If any member of an approving Rust team serves as one of the maintainers of a target, or has any legal or employment requirement (explicit or implicit) that might affect their decisions regarding a target, they must recuse themselves from any approval decisions regarding the target's tier status, though they may otherwise participate in discussions. > Tier 3 targets should attempt to implement as much of the standard libraries as possible and appropriate (core for most targets, alloc for targets that can support dynamic memory allocation, std for targets with an operating system or equivalent layer of system-provided functionality), but may leave some code unimplemented (either unavailable or stubbed out as appropriate), whether because the target makes it impossible to implement or challenging to implement. The authors of pull requests are not obligated to avoid calling any portions of the standard library on the basis of a tier 3 target not implementing those portions. > The target must provide documentation for the Rust community explaining how to build for the target, using cross-compilation if possible. If the target supports running binaries, or running tests (even if they do not pass), the documentation must explain how to run such binaries or tests for the target, using emulation if possible or dedicated hardware if necessary. > Tier 3 targets must not impose burden on the authors of pull requests, or other developers in the community, to maintain the target. In particular, do not post comments (automated or manual) on a PR that derail or suggest a block on the PR based on a tier 3 target. Do not send automated messages or notifications (via any medium, including via `@)` to a PR author or others involved with a PR regarding a tier 3 target, unless they have opted into such messages. > Patches adding or updating tier 3 targets must not break any existing tier 2 or tier 1 target, and must not knowingly break another tier 3 target without approval of either the compiler team or the maintainers of the other tier 3 target. > Tier 3 targets must be able to produce assembly using at least one of rustc's supported backends from any host target. (Having support in a fork of the backend is not sufficient, it must be upstream.) Acknowledging the above.
feat: dlopen Enzyme related issue: rust-lang#145899 related pr: rust-lang#146623 This PR is a continuation of rust-lang#146623 I refactored some code for rust-lang#146623 and added the functions shown in rust-lang#144197 r? `@bjorn3` cc: `@ZuseZ4` Zulip link: https://rust-lang.zulipchat.com/#narrow/channel/182449-t-compiler.2Fhelp/topic/libload.20.2F.20dlopen.20Enzyme.2Fautodiff/near/553647912
…libs-dir, r=Kobzol Bootstrap config: libgccjit libs dir r? `@Kobzol`
std: sys: fs: uefi: Implement set_times and set_perm - Tested on QEMU OVMF.
…m, r=jdonszelmann Simplify how inline asm handles `MaybeUninit` This is just better, but this is also allows it to handle changes from rust-lang#149614 (i.e. `ManuallyDrop` containing `MaybeDangle`).
…generic_args, r=jonathanbrouwer,jdonszelmann Port `#[rustc_legacy_const_generics]` to use attribute parser Small PR that ports the `#[rustc_legacy_const_generics]` to use the new attribute parser! r? JonathanBrouwer
…=jieyouxu Metadata loader cleanups Couple of cleanups I found while working on rust-lang#149273 This renames some fields and enum variants to clarify what they are used for, moves a check to another method and slightly simplifies the way profiler_builtins is linked.
document that mpmc channels deliver an item to (at most) one receiver Tiny documentation change related to mpmc (tracking issue rust-lang#126840). This PR is meant to supersede rust-lang#140158 due to it's inactivity. It is essentially the same addition structured a little differently.
Member
Author
|
@bors r+ rollup=never p=5 |
Collaborator
Collaborator
bors
added a commit
that referenced
this pull request
Dec 15, 2025
Rollup of 9 pull requests Successful merges: - #148756 (Warn on codegen attributes on required trait methods) - #148790 (Add new Tier-3 target: riscv64im-unknown-none-elf) - #149271 (feat: dlopen Enzyme) - #149354 (Bootstrap config: libgccjit libs dir) - #149459 (std: sys: fs: uefi: Implement set_times and set_perm) - #149950 (Simplify how inline asm handles `MaybeUninit`) - #150000 (Port `#[rustc_legacy_const_generics]` to use attribute parser ) - #150014 (Metadata loader cleanups) - #150021 (document that mpmc channels deliver an item to (at most) one receiver) r? `@ghost` `@rustbot` modify labels: rollup
Collaborator
|
💔 Test failed - checks-actions |
Collaborator
|
The job Click to see the possible cause of the failure (guessed by this bot) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-attributes
Area: Attributes (`#[…]`, `#![…]`)
A-LLVM
Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.
A-rustc-dev-guide
Area: rustc-dev-guide
A-testsuite
Area: The testsuite used to check the correctness of rustc
F-autodiff
`#![feature(autodiff)]`
rollup
A PR which is a rollup
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.
T-rustdoc
Relevant to the rustdoc team, which will review and decide on the PR/issue.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Successful merges:
MaybeUninit#149950 (Simplify how inline asm handlesMaybeUninit)#[rustc_legacy_const_generics]to use attribute parser #150000 (Port#[rustc_legacy_const_generics]to use attribute parser )r? @ghost
@rustbot modify labels: rollup
Create a similar rollup