rust/src/tools
Matthias Krüger 947fe7e341
Rollup merge of #105109 - rcvalle:rust-kcfi, r=bjorn3
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!
2022-12-10 09:24:43 +01:00
..
build-manifest Revert "Don't set is_preview for clippy and rustfmt" 2022-11-26 15:24:46 -05:00
bump-stage0 Revert "Don't set is_preview for clippy and rustfmt" 2022-11-26 15:24:46 -05:00
cargo@f6e737b1e3 Update cargo 2022-12-03 01:11:11 +00:00
cargotest Override linker in cargotest on windows 2022-10-23 19:33:03 -05:00
clippy Fix #10021 2022-12-08 20:09:08 +01:00
collect-license-metadata address review feedback 2022-11-24 17:25:35 +01:00
compiletest Rollup merge of #105109 - rcvalle:rust-kcfi, r=bjorn3 2022-12-10 09:24:43 +01:00
error_index_generator Fix tooltip display for error codes 2022-09-18 00:32:28 +02:00
expand-yaml-anchors
generate-copyright initial prototype of the tool to generate copyright notices 2022-11-15 15:02:03 +01:00
html-checker parallelize HTML checking tool 2022-07-29 23:26:38 -04:00
jsondocck Remove need to give JSON file path 2022-08-18 10:48:06 +02:00
jsondoclint jsondoclint: Check links field 2022-12-02 16:55:47 +00:00
linkchecker Remove reference from the intra-doc link checker. 2022-11-03 22:02:39 -07:00
lint-docs fix the lint as requested 2022-10-24 21:25:30 +02:00
lld-wrapper fix lld-wrapper lld flavor detection 2022-09-07 14:51:54 +02:00
miri Auto merge of #104449 - oli-obk:unhide_unknown_spans, r=estebank,RalfJung 2022-12-09 06:24:28 +00:00
miropt-test-tools couple of clippy::perf fixes 2022-11-18 10:30:47 +01:00
remote-test-client tools/remote-test-{server,client}: Use /data/local/tmp on Android 2022-10-06 13:42:32 -07:00
remote-test-server Add retry flag to remote-test-server 2022-11-08 19:21:24 +05:30
replace-version-placeholder Also replace the version placeholder in rustc_attr 2022-09-02 01:47:01 +02:00
rls Sunset RLS 2022-08-27 21:36:08 -07:00
rust-analyzer RefCell::get_mut: fix typo 2022-11-25 08:52:06 +01:00
rust-demangler
rust-installer@300b5ec61e Update submodule rust-installer 2022-07-09 09:49:05 -07:00
rustbook Update mdbook 2022-07-22 11:59:20 -07:00
rustc-workspace-hack Update cargo 2022-11-27 03:02:08 +00:00
rustdoc rustdoc: Use unix_sigpipe instead of rustc_driver::set_sigpipe_handler 2022-10-24 20:40:46 +02:00
rustdoc-gui Add new option to prevent CORS failures 2022-11-09 17:00:24 +01:00
rustdoc-js rustdoc: add hash to filename of toolchain files 2022-10-29 12:47:48 -07:00
rustdoc-themes
rustfmt Rollup merge of #104199 - SarthakSingh31:issue-97417-1, r=cjgillot 2022-12-03 17:37:41 +01:00
tidy Rollup merge of #105109 - rcvalle:rust-kcfi, r=bjorn3 2022-12-10 09:24:43 +01:00
tier-check Encourage developers not to use periods in target names 2022-11-17 10:41:41 +01:00
unicode-table-generator Address feedback from PR #101401 2022-09-04 08:07:53 -07:00
unstable-book-gen unstable-book-gen: use std::fs::write 2022-08-28 00:40:58 +02:00
x use EXE_EXTENSION while searching for python 2022-11-13 15:51:16 +05:30
cherry-pick.sh
publish_toolstate.py Remove miri from the submodule list and require it for CI to pass 2022-09-21 15:35:53 +00:00