| Age | Commit message (Collapse) | Author | Lines |
|
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.
|
|
|
|
|
|
|
|
|
|
Don't use periods in target names
Using a period in the target name can cause issues in e.g. cargo, see also https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/Running.20tests.20on.20remote.20target
|
|
Document more settings for building rustc for Fuchsia
This documents that you need to link for Fuchsia with `lld` and provides configuration settings for both `clang` and `lld`. It also adjusts the documentation for running the test suite to recommend installing to a prefix.
r? ``@tmandry``
|
|
Co-authored-by: Noah Lev <camelidcamel@gmail.com>
|
|
`-C incremental` is sound and --keep-stage is not.
|
|
|
|
Stabilize native library modifier `verbatim`
Stabilization report - https://github.com/rust-lang/rust/pull/104360#issuecomment-1312724787.
cc https://github.com/rust-lang/rust/issues/81490
Closes https://github.com/rust-lang/rust/issues/99425
|
|
joshtriplett:style-principles-readability-in-plain-text, r=compiler-errors
Expand a style-guide principle: readability in plain text
|
|
|
|
Co-authored-by: Noah Lev <camelidcamel@gmail.com>
|
|
|
|
unstable-book: Add page for the `abi_efiapi` feature
Tracking issue for `abi_efiapi`: https://github.com/rust-lang/rust/issues/65815
|
|
|
|
Updates the location of the `try_mark_green` algorithm from `compiler/rustc_middle/src/dep_graph/graph.rs` to [`compiler/rustc_middle/src/dep_graph/graph.rs`](https://github.com/rust-lang/rust/blob/stable/compiler/rustc_query_system/src/dep_graph/graph.rs#L574) .
|
|
https://github.com/rust-lang/project-const-generics/pull/21 removed the
link. This replaces it with an issue link mentioned on the design docs.
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
|
Co-authored-by: Yuki Okushi <jtitor@2k36.org>
|