| Age | Commit message (Collapse) | Author | Lines |
|
|
|
Tracking issue: https://github.com/rust-lang/rust/issues/65815
|
|
Co-authored-by: Yuki Okushi <huyuumi.dev+love@gmail.com>
|
|
|
|
|
|
|
|
Because the old spelling is widely used, some projects may need time to
migrate their uses to the new triple spelling. The old spelling may
eventually be removed altogether.
|
|
|
|
Historically, Rust's Fuchsia targets have been labeled x86_64-fuchsia
and aarch64-fuchsia. However, they should technically contain vendor
information. This CL changes Fuchsia's target triples to include the
"unknown" vendor since Clang now does normalization and handles all
triple spellings.
This was previously attempted in #90510, which was closed due to
inactivity.
|
|
r=tmandry
Update Fuchsia walkthrough with new configs
The new `download-ci-llvm` configuration option dosn't work with `lld = true` (see #100853). The Fuchsia walkthrough should recommend setting it to `false`.
r? `@tmandry`
|
|
The new `download-ci-llvm` configuration option dosn't work with `lld =
true` (see #100853). The Fuchsia walkthrough should recommend setting it
to `false`.
|
|
Add JSON output to -Zdump-mono-stats
Follow-up to https://github.com/rust-lang/rust/pull/105481
r? `@lqd` cc `@wesleywiser`
|
|
PlayStation Vita support
Just the compiler definitions for no-std projects and std support using newlib
Earlier PR: https://github.com/rust-lang/rust/pull/105606
|
|
- How to hide whitespace
- Fetching PRs without having to add a new remote or copy-paste the URL of the author's fork
- How to review large blocks that have moved
- Suggest `git range-diff`. This section is still mostly incomplete; fixing an exact command that will work seems kinda tricky and I don't currently have time for it.
|
|
This allows analyzing the output programatically; for example, finding
the item with the highest `total_estimate`.
I also took the liberty of adding `untracked` tests to `rustc_session` and documentation to the unstable book for `dump-mono-items`.
|
|
|
|
Co-authored-by: Noah Lev <camelidcamel@gmail.com>
|
|
|
|
|
|
This avoids having to maintain the information in two places.
|
|
|
|
Most of these details were not helpful or necessary for building the compiler for the first time.
This section comes very early in the guide and is meant to be a tutorial, so being concise is very important.
|
|
It's not necessary and it takes up valuable space at the very start of the guide.
|
|
This avoids having to manually modify the configuration in the docs.
|
|
|
|
|
|
|
|
This can actually make a difference for the user if they rely on unicode formating.
Prompted by https://github.com/dtolnay/syn/issues/771
|
|
|
|
|
|
|
|
|
|
Check AArch64 branch-protection earlier in the pipeline.
As suggested in #93516.
r? `@nagisa`
|
|
Co-authored-by: Joshua Nelson <github@jyn.dev>
|
|
|
|
This commit adds initial documentation for LLVM Kernel Control Flow
Integrity (KCFI) support to the Rust compiler (see rust-lang/rust#105109
and rust-lang/rust#89653).
|
|
|
|
The broken reference to the non-existing `NoLandingPad` is replaced by `LocalUseCounter` to fix this document.
|
|
|
|
The broken reference to `NoLandingPad` is replaced by `RemoveStorageMarkers` to fix this document.
|
|
|
|
Add LLVM KCFI support to the Rust compiler
This PR adds LLVM Kernel Control Flow Integrity (KCFI) support to the Rust compiler. It initially provides forward-edge control flow protection for operating systems kernels for Rust-compiled code only by aggregating function pointers in groups identified by their return and parameter types. (See llvm/llvm-project@cff5bef.)
Forward-edge control flow protection for C or C++ and Rust -compiled code "mixed binaries" (i.e., for when C or C++ and Rust -compiled code share the same virtual address space) will be provided in later work as part of this project by identifying C char and integer type uses at the time types are encoded (see Type metadata in the design document in the tracking issue #89653).
LLVM KCFI can be enabled with -Zsanitizer=kcfi.
Thank you again, `@bjorn3,` `@eddyb,` `@nagisa,` and `@ojeda,` for all the help!
|
|
|
|
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
|
This commit adds initial documentation for LLVM Kernel Control Flow
Integrity (KCFI) support to the Rust compiler (see #105109 and #89653).
Co-authored-by: Miguel Ojeda <ojeda@users.noreply.github.com>
|
|
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
|
|
|
|
|
This example doesn't compile on targets that don't support UEFI, as
reported here:
https://github.com/rust-lang/rust/pull/104793#issuecomment-1339783727
|
|
The branch-protection codegen option has always been treated as an error
for non-AArch64 targets.
|