rust/compiler/rustc_session/src
Matthias Krüger 0bb72a2c66
Rollup merge of #91675 - ivanloz:memtagsan, r=nagisa
Add MemTagSanitizer Support

Add support for the LLVM [MemTagSanitizer](https://llvm.org/docs/MemTagSanitizer.html).

On hardware which supports it (see caveats below), the MemTagSanitizer can catch bugs similar to AddressSanitizer and HardwareAddressSanitizer, but with lower overhead.

On a tag mismatch, a SIGSEGV is signaled with code SEGV_MTESERR / SEGV_MTEAERR.

# Usage

`-Zsanitizer=memtag -C target-feature="+mte"`

# Comments/Caveats

* MemTagSanitizer is only supported on AArch64 targets with hardware support
* Requires `-C target-feature="+mte"`
* LLVM MemTagSanitizer currently only performs stack tagging.

# TODO

* Tests
* Example
2022-02-18 23:23:03 +01:00
..
cgu_reuse_tracker.rs Make Diagnostic::span_fatal unconditionally raise an error 2021-05-08 23:12:04 -04:00
code_stats.rs
config.rs Add support for control-flow protection 2022-02-14 08:31:24 -08:00
cstore.rs Import SourceFiles from crate before decoding foreign Span 2021-12-23 12:56:12 -05:00
filesearch.rs Inline and remove FileSearch::search. 2022-02-02 09:06:34 +11:00
lib.rs add a rustc::query_stability lint 2022-02-01 10:15:59 +01:00
options.rs Rollup merge of #91675 - ivanloz:memtagsan, r=nagisa 2022-02-18 23:23:03 +01:00
output.rs Auto merge of #91957 - nnethercote:rm-SymbolStr, r=oli-obk 2021-12-19 09:31:37 +00:00
parse.rs review comment: plural of emoji is emoji 2021-11-23 20:36:19 +00:00
search_paths.rs Make SearchPathFile::file_name_str non-optional. 2022-02-02 13:16:25 +11:00
session.rs Remove DiagnosticBuilder.quiet 2022-01-23 00:11:13 -06:00
utils.rs