Commit Graph

169 Commits

Author SHA1 Message Date
Nico Weber 64f623d4c3 [gn build] (manually) port ac191bcc99 2021-09-23 09:34:24 -04:00
Nico Weber cef0280a95 [gn build] (semi-manually) port 702cb7afe9 2021-09-23 09:26:27 -04:00
Nico Weber df1ab7de38 [gn build] (semi-manually) port 750d5fc65c 2021-09-17 12:02:09 -04:00
Arthur Eubanks 77b6a4bde4 [gn build] Don't copy xray includes
The gn build doesn't support xray, so there's no reason to make the xray
headers available. Some CMake checks check if xray includes are
available to determine if xray is usable. Since we don't build the xray
runtime, there are link errors.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D108737
2021-08-27 08:51:27 -07:00
LLVM GN Syncbot fa4132dc88 [gn build] Port e6407356ba 2021-08-20 06:14:22 +00:00
Arthur Eubanks 41354942c5 [gn build] Add cfi ignorelist to compiler-rt/lib
So that building the compiler-rt target also copies the cfi ignorelist

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D107411
2021-08-04 11:58:32 -07:00
Vitaly Buka 6538aa8ce9 [NFC][tsan] Rename _inl.h to .inc
Differential Revision: https://reviews.llvm.org/D107319
2021-08-03 09:35:33 -07:00
Nico Weber 3555880f10 [gn build] (manually) port 5c2b48fdb0 2021-08-02 20:10:04 +02:00
Arthur Eubanks ee7c9b8f14 [gn build] Manually add file
Since bot is broken
2021-07-29 10:37:28 -07:00
Arthur Eubanks 43a44f1c54 [gn build] Add support for Win/x86 compiler-rt
This allows us to build the x86 profile runtime.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D106972
2021-07-28 14:59:18 -07:00
LLVM GN Syncbot e7077971f2 [gn build] Port 0118a64934 2021-07-23 07:19:25 +00:00
Nico Weber 377320fe80 [gn build] Reformat all gn files
Ran `git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format`.
2021-07-22 21:35:35 -04:00
LLVM GN Syncbot 53942cd4dc [gn build] Port adb55d7c32 2021-07-20 05:51:14 +00:00
LLVM GN Syncbot 42e6cfc81d [gn build] Port 54902e00d1 2021-07-19 19:24:16 +00:00
Nico Weber 304293d85d [gn build] (semi-manually) port 6a4054ef06 2021-07-16 15:54:13 -04:00
Ilya Leoshkevich 402fc790eb [TSan] Add SystemZ longjmp support
Implement the interceptor and stack pointer demangling.

Reviewed By: dvyukov

Differential Revision: https://reviews.llvm.org/D105629
2021-07-15 12:18:48 +02:00
Nico Weber 0c6fad233a [gn build] (semi-manually) port 0da172b176 2021-07-12 08:15:59 -04:00
Nico Weber 877e835add [gn build] (semi-manually) port 966386514b 2021-07-07 19:27:19 -04:00
LLVM GN Syncbot 5df556ac8b [gn build] Port a92964779c 2021-07-02 13:05:44 +00:00
LLVM GN Syncbot 430bfc4f3b [gn build] Port 33a7b4d9d8 2021-07-01 22:26:09 +00:00
Peter Collingbourne 272af9c700 gn build: Build ubsan_minimal on Android. 2021-06-23 19:25:21 -07:00
Nico Weber e8c8ce0974 [gn build] don't build ubsan_minimal on mac
It doesn't build there, see http://45.33.8.238/macm1/12180/step_4.txt
2021-06-22 22:21:20 -04:00
Peter Collingbourne 0439ba9903 gn build: Only build the TSan runtime on 64-bit platforms.
TSan only supports 64-bit platforms.

Differential Revision: https://reviews.llvm.org/D104755
2021-06-22 17:51:00 -07:00
Peter Collingbourne 6e962fcc3d gn build: Add support for building ubsan_minimal.
Differential Revision: https://reviews.llvm.org/D104754
2021-06-22 17:51:00 -07:00
LLVM GN Syncbot e8bfeebeeb [gn build] Port 6478ef61b1 2021-06-15 20:04:02 +00:00
Vitaly Buka 6478ef61b1 [asan] Remove Asan, Ubsan support of RTEMS and Myriad
Differential Revision: https://reviews.llvm.org/D104279
2021-06-15 12:59:05 -07:00
Nico Weber 9ec6c3bb2f [gn build] (semi-manually) port 944b3c53ae 2021-06-08 15:21:03 -04:00
Vitaly Buka e3258b0894 Revert "Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always)."
Windows is still broken.

This reverts commit 927688a4cd.
2021-06-05 00:39:50 -07:00
Kevin Athey 927688a4cd Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always).
In addition:
  - optionally add global flag to capture compile intent for UAR:
    __asan_detect_use_after_return_always.
    The global is a SANITIZER_WEAK_ATTRIBUTE.

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D103304
2021-06-05 00:26:10 -07:00
Vitaly Buka c2f2c1b32c Revert "[gn build] manually port 60e5243e59 (weak asan symbol)"
Not needed after d8a4a2cb93.

This reverts commit 00542932fe.
2021-06-05 00:02:50 -07:00
Nico Weber 00542932fe [gn build] manually port 60e5243e59 (weak asan symbol) 2021-06-04 19:49:41 -04:00
Nico Weber efea1b1782 [gn build] (semi-manually) port 07c92b2e95 2021-06-04 16:41:42 -04:00
Nico Weber 6915a55824 [gn build] (semi-manually) port bd04d78d64 2021-05-28 08:04:52 -04:00
Nico Weber f47575f83c [gn build] (semi-manually) port 0bccdf82f7 2021-05-23 10:01:06 -04:00
Peter Collingbourne c870e36be1 gn build: Only build the hwasan runtime in aliasing mode on x86.
The LAM mode is currently untested by check-hwasan, so we only need
to build the runtime in aliasing mode. Because LAM mode will always
need to be conditional (because only certain hardware will support
it) we can always just disable the LAM lit tests if it ever starts
being tested.
2021-05-17 11:48:49 -07:00
Nico Weber 452e035729 [gn build] Add build file for msan runtime
Works for the examples on
https://clang.llvm.org/docs/MemorySanitizer.html

Differential Revision: https://reviews.llvm.org/D102554
2021-05-17 06:58:10 -04:00
Nico Weber 46b14dc485 [gn build] (manually) port ad7e12226f 2021-05-14 22:24:39 -04:00
Nico Weber 0ca6e93a9e [gn build] (manually) merge b7d1ab75cf
No check-hwasan-lam target yet, though.
2021-05-14 13:51:10 -04:00
Arthur Eubanks 642df18f14 [gn build] Support compiler-rt/profile on Windows
Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D101961
2021-05-06 10:20:52 -07:00
Nico Weber d7ec48d71b [clang] accept -fsanitize-ignorelist= in addition to -fsanitize-blacklist=
Use that for internal names (including the default ignorelists of the
sanitizers).

Differential Revision: https://reviews.llvm.org/D101832
2021-05-04 10:24:00 -04:00
Nico Weber 476155e68e [gn build] reformat all gn files
$ git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format

(and manually wrap two comments)
2021-04-20 10:34:08 -04:00
Nico Weber 03c41191af [gn build] hook up tsan on macOS too
Mostly just works already.
2021-04-02 19:21:38 -04:00
Nico Weber 8156d899ab [gn build] (manually) port 4c58f333f1 2021-04-02 18:21:37 -04:00
Nico Weber 55978f914e [gn build] add build file for tsan runtime
Linux-only for now. Some mac bits stubbed out, but not tested.

Good enough for the tiny_race.c example at
https://clang.llvm.org/docs/ThreadSanitizer.html :

   $ out/gn/bin/clang -fsanitize=address -g -O1 tiny_race.c
   $ while true; do ./a.out || echo $? ; done

While here, also make `-fsanitize=address` work for .c files.

Differential Revision: https://reviews.llvm.org/D99795
2021-04-02 12:59:14 -04:00
Nico Weber 8315890bdc [gn build] (semi-manually) port 51fa9e0fd9 2021-03-30 06:59:37 -04:00
Nico Weber ab158d35b5 [gn build] rewrap a comment to 80 cols 2021-03-27 12:50:33 -04:00
Nico Weber a431268668 [gn build] (semi-manually) port b136a74efc 2021-03-15 12:51:12 -04:00
Nico Weber 0ec448194e sysroot.py: add support for darwin
This is a tiny bit messy because compiler-rt needs different sysroots for
macOS, iOS, etc. We want sysroot.py to create something that is a hermetic
representation of all build deps, so it needs to create a directory that
contains all needed SDKs, and these subdirectories are then passed to
cmake which passes each of these _subdirectories_ as different -isysroot
flags while building the runtime libraries.

Differential Revision: https://reviews.llvm.org/D96958
2021-02-18 10:48:18 -05:00
Nico Weber 78717f56ba [gn build] Port b4993cf54d 2021-02-11 07:20:21 -05:00
Nico Weber 69f5bd2ec5 [gn build] reformat all gn files
$ git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format
2021-02-08 16:11:01 -05:00