add specs for riscv32/riscv64 musl targets by kraj · Pull Request #82202 · rust-lang/rust (original) (raw)
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 andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Conversation6 Commits2 Checks0 Files changed
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
[ Show hidden characters]({{ revealButtonHref }})
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @estebank (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.
Signed-off-by: Khem Raj raj.khem@gmail.com
Please add them to src/doc/rustc/src/platform-support.md too.
Signed-off-by: Khem Raj raj.khem@gmail.com
📌 Commit 8b38a50 has been approved by estebank
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
bors added a commit to rust-lang-ci/rust that referenced this pull request
Rollup of 8 pull requests
Successful merges:
- rust-lang#82055 (Add diagnostics for specific cases for const/type mismatch err)
- rust-lang#82155 (Use !Sync std:🦥:OnceCell in usefulness checking)
- rust-lang#82202 (add specs for riscv32/riscv64 musl targets)
- rust-lang#82203 (Move some tests to more reasonable directories - 4)
- rust-lang#82211 (make
suggest_setuphelp messages better) - rust-lang#82212 (Remove redundant rustc_data_structures path component)
- rust-lang#82240 (remove useless ?s (clippy::needless_question_marks))
- rust-lang#82243 (Add more intra-doc links to std::io)
Failed merges:
r? @ghost
@rustbot modify labels: rollup
@estebank since this adds new target platforms, shouldn't this be tagged for release notes?
Marks issues that should be documented in the release notes of the next release.
label
wip-sync pushed a commit to NetBSD/pkgsrc-wip that referenced this pull request
Package changes:
- bump bootstraps to 1.51.0.
- adjust patches and cargo checksums as required
- 1.51 failed to build natively on 32-bit armv7, there is hope that this is fixed with 1.52. (1.51 can be built with netbsd32 emulation on a aarch64 system).
Upsteream changes:
Version 1.52.0 (2021-05-06)
Language
- Added the
unsafe_op_in_unsafe_fnlint, which checks whether the unsafe code in anunsafe fnis wrapped in aunsafeblock. This lint is allowed by default, and may become a warning or hard error in a future edition. - You can now cast mutable references to arrays to a pointer of the same type as the element.
Compiler
Added tier 3* support for the following targets.
s390x-unknown-linux-muslriscv32gc-unknown-linux-musl&riscv64gc-unknown-linux-muslpowerpc-unknown-openbsd
* Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support.
Libraries
OsStringnow implementsExtendandFromIterator.cmp::Reversenow has#[repr(transparent)]representation.Arc<impl Error>now implementserror::Error.- All integer division and remainder operations are now
const.
Stabilised APIs
Arguments::as_strchar::MAXchar::REPLACEMENT_CHARACTERchar::UNICODE_VERSIONchar::decode_utf16char::from_digitchar::from_u32_uncheckedchar::from_u32slice::partition_pointstr::rsplit_oncestr::split_once
The following previously stable APIs are now const.
char::len_utf8char::len_utf16char::to_ascii_uppercasechar::to_ascii_lowercasechar::eq_ignore_ascii_caseu8::to_ascii_uppercaseu8::to_ascii_lowercaseu8::eq_ignore_ascii_case
Rustdoc
-
Using the old style is still allowed, and will become a warning in a future release.
You can now use "task lists" in Rustdoc Markdown. E.g.
- [x] Complete - [ ] Todo
Misc
- You can now pass multiple filters to tests. E.g.
cargo test -- foo barwill run all tests that matchfooandbar. - Rustup now distributes PDB symbols for the
stdlibrary on Windows, allowing you to seestdsymbols when debugging.
Internal Only
These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools.
- Check the result cache before the DepGraph when ensuring queries
- Try fast_reject::simplify_type in coherence before doing full check
- Only store a LocalDefId in some HIR nodes
- Store HIR attributes in a side table
Compatibility Notes
- [Cargo build scripts are now forbidden from setting
RUSTC_BOOTSTRAP.] cargo/9181 - Removed support for the
x86_64-rumprun-netbsdtarget. - [Deprecated the
x86_64-sun-solaristarget in favor ofx86_64-pc-solaris.] 82216 - Rustdoc now only accepts
,,, and\tas delimiters for specifying languages in code blocks. - Rustc now catches more cases of
pub_use_of_private_extern_crate - Changes in how proc macros handle whitespace may lead to panics when used
with older
proc-macro-hackversions. Acargo updateshould be sufficient to fix this in all cases.
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request
Pkgsrc changes:
- Bump bootstrap kit version to 1.51.0.
- Adjust patches as needed.
- Update checksum adjustments.
- Fix syntax error in commands adjusting libserde_derive for Darwin
Upstream changes:
Version 1.52.1 (2021-05-10)
This release disables incremental compilation, unless the user has explicitly opted in via the newly added RUSTC_FORCE_INCREMENTAL=1 environment variable.
This is due to the widespread, and frequently occuring, breakage encountered by Rust users due to newly enabled incremental verification in 1.52.0. Notably, Rust users should upgrade to 1.52.0 or 1.52.1: the bugs that are detected by newly added incremental verification are still present in past stable versions, and are not yet fixed on any channel. These bugs can lead to miscompilation of Rust binaries.
These problems only affect incremental builds, so release builds with Cargo should not be affected unless the user has explicitly opted into incremental. Debug and check builds are affected.
See 84970 for more details.
Version 1.52.0 (2021-05-06)
Language
Added the
unsafe_op_in_unsafe_fnlint, which checks whether the unsafe code in anunsafe fnis wrapped in aunsafeblock. This lint is allowed by default, and may become a warning or hard error in a future edition.You can now cast mutable references to arrays to a pointer of the same type as the element.
Compiler
Added tier 3* support for the following targets.
s390x-unknown-linux-muslriscv32gc-unknown-linux-musl&riscv64gc-unknown-linux-muslpowerpc-unknown-openbsd
* Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support.
Libraries
OsStringnow implementsExtendandFromIterator.cmp::Reversenow has#[repr(transparent)]representation.Arc<impl Error>now implementserror::Error.- All integer division and remainder operations are now
const.
Stabilised APIs
Arguments::as_strchar::MAXchar::REPLACEMENT_CHARACTERchar::UNICODE_VERSIONchar::decode_utf16char::from_digitchar::from_u32_uncheckedchar::from_u32slice::partition_pointstr::rsplit_oncestr::split_once
The following previously stable APIs are now const.
char::len_utf8char::len_utf16char::to_ascii_uppercasechar::to_ascii_lowercasechar::eq_ignore_ascii_caseu8::to_ascii_uppercaseu8::to_ascii_lowercaseu8::eq_ignore_ascii_case
Rustdoc
- Rustdoc lints are now treated as a tool lint, meaning that
lints are now prefixed with
rustdoc::(e.g.#[warn(rustdoc::non_autolinks)]). Using the old style is still allowed, and will become a warning in a future release. - Rustdoc now supports argument files.
- Rustdoc now generates smart punctuation for documentation.
- You can now use "task lists" in Rustdoc Markdown. E.g.
- [x] Complete - [ ] Todo
Misc
- You can now pass multiple filters to tests. E.g.
cargo test -- foo barwill run all tests that matchfooandbar. - Rustup now distributes PDB symbols for the
stdlibrary on Windows, allowing you to seestdsymbols when debugging.
Internal Only
These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools.
- Check the result cache before the DepGraph when ensuring queries
- Try fast_reject::simplify_type in coherence before doing full check
- Only store a LocalDefId in some HIR nodes
- Store HIR attributes in a side table
Compatibility Notes
- Cargo build scripts are now forbidden from setting
RUSTC_BOOTSTRAP. - Removed support for the
x86_64-rumprun-netbsdtarget. - Deprecated the
x86_64-sun-solaristarget in favor ofx86_64-pc-solaris. - Rustdoc now only accepts
,,, and\tas delimiters for specifying languages in code blocks. - Rustc now catches more cases of
pub_use_of_private_extern_crate - Changes in how proc macros handle whitespace may lead to panics
when used with older
proc-macro-hackversions. Acargo updateshould be sufficient to fix this in all cases.
I am trying to get rustc to work on riscv64 musl for our Alpine Linux riscv64 port. Unfortunately, the cross-compiled stage2 rustc segfaults on more complex inputs for me. How did you test rustc on riscv64 musl?
See: #96876
Labels
Marks issues that should be documented in the release notes of the next release.
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.