aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaModule.cpp
diff options
context:
space:
mode:
authorThurston Dang <thurston.dang@gmail.com>2023-11-02 09:49:19 -0700
committerGitHub <noreply@github.com>2023-11-02 09:49:19 -0700
commit7d039effc4930be9240446a4241d268a39960e0b (patch)
treeb02f0131b1512127e2d409ef4105de659776091a /clang/lib/Sema/SemaModule.cpp
parent3b449bd46a11a55a40cbc0016a99b202fa05248e (diff)
downloadllvm-7d039effc4930be9240446a4241d268a39960e0b.zip
llvm-7d039effc4930be9240446a4241d268a39960e0b.tar.gz
llvm-7d039effc4930be9240446a4241d268a39960e0b.tar.bz2
[tsan] Increase size of shadow mappings for C/C++ on linux/x86_64 (#70517)
The current TSan mappings for C/C++ on linux/x86_64 have 0.5TB for low app mem, 1.5TB (1.17TB usable) for mid app mem and 1.5TB for high app mem. This can get a bit cramped if the apps are huge, and/or (in the case of mid/high app mem) with significant ASLR entropy (default ASLR setting of 28-bits = 1TB). This patch increases the mapping sizes to 2TB, 5TB, and 6TB for the low, mid and high app regions respectively. This is compatible with up to 30-bits of ASLR entropy. It is difficult to make the mappings any larger, given the 44-bit pointer compression. It also moves the heap region to avoid HeapEnd() overlapping with the newly enlarged high app region. For convenience, we now use kShadowAdd instead of kShadowXor for this set of mappings. This should be roughly equivalent in runtime performance.
Diffstat (limited to 'clang/lib/Sema/SemaModule.cpp')
0 files changed, 0 insertions, 0 deletions