aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/Compression.cpp
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2020-07-22 13:45:14 -0700
committerPeter Collingbourne <peter@pcc.me.uk>2020-07-23 15:09:13 -0700
commitb83417aa7e26ca76c433ec5befdecd5c571408a6 (patch)
treedb82b138051809b291e934609d4ab41cc93a0d03 /llvm/lib/Support/Compression.cpp
parent3ac828b8f7a848ab1d801fcacc515b51a9cb684a (diff)
downloadllvm-b83417aa7e26ca76c433ec5befdecd5c571408a6.zip
llvm-b83417aa7e26ca76c433ec5befdecd5c571408a6.tar.gz
llvm-b83417aa7e26ca76c433ec5befdecd5c571408a6.tar.bz2
scudo: Interleave odd and even tags for adjacent blocks.
This guarantees that we will detect a buffer overflow or underflow that overwrites an adjacent block. This spatial guarantee is similar to the temporal guarantee that we provide for immediate use-after-free. Enabling odd/even tags involves a tradeoff between use-after-free detection and buffer overflow detection. Odd/even tags make it more likely for buffer overflows to be detected by increasing the size of the guaranteed "red zone" around the allocation, but on the other hand use-after-free is less likely to be detected because the tag space for any particular chunk is cut in half. Therefore we introduce a tuning setting to control whether odd/even tags are enabled. Differential Revision: https://reviews.llvm.org/D84361
Diffstat (limited to 'llvm/lib/Support/Compression.cpp')
0 files changed, 0 insertions, 0 deletions