Commit graph

15 commits

Author SHA1 Message Date
Lzu Tao
2bcefa8d81 Add missing : after *llvm-version 2020-07-19 11:03:04 +00:00
Tomasz Miąsko
2851c9ffb5 Support sanitizers on aarch64-unknown-linux-gnu 2020-06-20 09:48:14 +02:00
Manish Goregaokar
17b80d947d
Rollup merge of #73347 - tmiasko:incompatible-sanitizers, r=nikic
Diagnose use of incompatible sanitizers

Emit an error when incompatible sanitizer are configured through command
line options. Previously the last one configured prevailed and others
were silently ignored.

Additionally use a set to represent configured sanitizers, making it
possible to enable multiple sanitizers at once. At least in principle,
since currently all of them are considered to be incompatible with
others.
2020-06-19 19:42:55 -07:00
Tomasz Miąsko
0a65f280c8 Diagnose use of incompatible sanitizers
Emit an error when incompatible sanitizer are configured through command
line options. Previously the last one configured prevailed and others
were silently ignored.

Additionally use a set to represent configured sanitizers, making it
possible to enable multiple sanitizers at once. At least in principle,
since currently all of them are considered to be incompatible with
others.
2020-06-14 18:14:10 +02:00
Tomasz Miąsko
d40e624a36 compiletest: Add directives to detect sanitizer support
Add needs-sanitizer-{address,leak,memory,thread} directive indicating
that test requires target with support for specific sanitizer.

This is an addition to the existing needs-sanitizer-support directive
indicating that test requires a sanitizer runtime library.
2020-06-13 14:24:30 +02:00
Tomasz Miąsko
bbb63d4554 Consistently use LLVM lifetime markers during codegen
Ensure that inliner inserts lifetime markers if they have been emitted during
codegen. Otherwise if allocas from inlined functions are merged together,
lifetime markers from one function might invalidate load & stores performed
by the other one.
2020-05-14 15:23:24 +02:00
RoccoDev
b85c64c3ea
rustc: Add a warning count upon completion 2020-04-11 16:15:24 +02:00
Tomasz Miąsko
688697d607 Add ThreadSanitizer test case 2020-04-10 16:29:09 +02:00
Tomasz Miąsko
d2b75586fc Move sanitize-inline-always test to sanitize directory 2020-04-06 00:00:00 +00:00
Josh Stone
676b9bc477 unix: Don't override existing SIGSEGV/BUS handlers
Although `stack_overflow::init` runs very early in the process, even
before `main`, there may already be signal handlers installed for things
like the address sanitizer. In that case, just leave it alone, and don't
bother trying to allocate our own signal stacks either.
2020-03-08 18:44:12 -07:00
Mazdak Farrokhzad
cfb2f95450
Rollup merge of #69800 - tmiasko:address-g, r=nikic
Compile address sanitizer test with debuginfo

This makes error-pattern to match regardless of current
configuration of `rust.debuginfo-level-tests` in `config.toml`.
2020-03-08 20:54:33 +01:00
Tomasz Miąsko
adc422f3d5 Compile address sanitizer test with debuginfo
This makes error-pattern to match regardless of current
configuration of `rust.debuginfo-level-tests` in `config.toml`.
2020-03-07 13:33:40 +01:00
Matthias Krüger
136ad015b6 fix various typos 2020-03-06 15:19:31 +01:00
Tomasz Miąsko
52c5f2a577 Add test for -Znew-llvm-pass-manager -Clto=thin -Zsanitizer=...
Additionally verify that the current implementation of LLVM version
check (which uses lexicographic ordering) is good enough to exclude
versions before LLVM 9, where the new LLVM pass manager is unsupported.
2020-03-03 08:41:08 +01:00
Tomasz Miąsko
47fd27a637 Move sanitizer tests to a separate directory 2020-01-27 00:00:00 +00:00