gcc/libsanitizer
Tamar Christina a73421bcf3 libsanitizer: Sync fixes for asan interceptors from upstream
This cherry-picks and squashes the differences between commits

d3e5c20ab846303874a2a25e5877c72271fc798b..76e1e45922e6709392fb82aac44bebe3dbc2ea63
from LLVM upstream from compiler-rt/lib/hwasan/ to GCC on the changes relevant
for GCC.

This is required to fix the linked PR.

As mentioned in the PR the last sync brought in a bug from upstream[1] where
operations became non-recoverable and as such the tests in AArch64 started
failing.  This cherry picks the fix and there are minor updates needed to GCC
after this to fix the cases.

[1] https://github.com/llvm/llvm-project/pull/74000

PR sanitizer/112644
Cherry-pick llvm-project revision
672b71cc1003533460a82f06b7d24fbdc02ffd58,
5fcf3bbb1acfe226572474636714ede86fffcce8,
3bded112d02632209bd55fb28c6c5c234c23dec3 and
76e1e45922e6709392fb82aac44bebe3dbc2ea63.
2024-01-31 14:49:21 +00:00
..
asan libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
builtins libsanitizer: merge from upstream (3185e47b5a8444e9fd). 2023-04-26 15:51:56 +02:00
hwasan libsanitizer: Sync fixes for asan interceptors from upstream 2024-01-31 14:49:21 +00:00
include libsanitizer: merge from upstream (c425db2eb558c263) 2023-11-15 12:45:58 +01:00
interception Sanitizer/MIPS: Use $t9 for preemptible function call 2024-01-17 17:03:08 +08:00
libbacktrace libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
lsan libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
sanitizer_common libsanitizer: Replace memcpy with internal version in sanitizer_common 2024-01-19 10:40:10 +01:00
tsan libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
ubsan libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
acinclude.m4
aclocal.m4 make -Werror optional in libatomic/libbacktrace/libgomp/libitm/libsanitizer 2022-02-03 16:10:18 +01:00
ChangeLog Daily bump. 2024-01-20 00:18:14 +00:00
config.h.in Update build system: include new files and run autoheader, autoconf, automake 2018-10-31 11:15:57 +00:00
configure libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
configure.ac libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
configure.tgt libsanitizer: Enable LSan and TSan for riscv64 2024-01-02 18:52:30 +01:00
HOWTO_MERGE Remove references to SVN in libsanitizer. 2020-05-29 11:50:54 +02:00
libsanitizer.spec.in libsanitizer: Tie the hwasan library into our build system 2020-11-25 16:35:33 +00:00
LICENSE.TXT
LOCAL_PATCHES libsanitizer: Update LOCAL_PATCHES 2023-11-28 15:00:31 +01:00
Makefile.am Fix PR 62157: disclean in libsanitizer not working 2021-11-28 22:40:36 +00:00
Makefile.in libsanitizer: Check assembler support for symbol assignment [PR112563] 2023-11-28 14:54:34 +01:00
MERGE libsanitizer: merge from upstream (c425db2eb558c263) 2023-11-15 12:45:58 +01:00
merge.sh libsanitizer: use git clone --depth 1 2022-11-15 14:18:27 +01:00
README.gcc libsanitizer: add hwasan. 2020-11-25 16:35:30 +00:00

AddressSanitizer and ThreadSanitizer (https://github.com/google/sanitizers) are
projects initially developed by Google Inc.

Both tools consist of a compiler module and a run-time library.
The sources of the run-time library for these projects are hosted at
https://github.com/llvm/llvm-project in the following directories:
  compiler-rt/include/sanitizer
  compiler-rt/lib/sanitizer_common
  compiler-rt/lib/interception
  compiler-rt/lib/asan
  compiler-rt/lib/tsan
  compiler-rt/lib/lsan
  compiler-rt/lib/ubsan
  compiler-rt/lib/hwasan

Trivial and urgent fixes (portability, build fixes, etc.) may go directly to the
GCC tree.  All non-trivial changes, functionality improvements, etc. should go
through the upstream tree first and then be merged back to the GCC tree.
The merges from upstream should be done with the aid of the merge.sh script;
it will also update the file MERGE to contain the upstream revision
we merged with.