currently 1 byte global object has a ridiculous 63 bytes redzone. This patch reduces the redzone size to be less than 32 if the size of global object is less than half of 32 (the minimal size of redzone). So that a 12 bytes object has a 20 bytes redzone, a 20 bytes object has a 44 bytes redzone.
Details
Details
- Reviewers
condy zsrkmyn MaskRay eugenis vitalybuka - Group Reviewers
Restricted Project - Commits
- rGdbc641deb988: [sanitizer] Reduce redzone size for small size global objects
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
2556–2559 |
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
2556–2559 | Updated |
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
2556 | I wonder whether 16-byte array should use this optimization as well (i.e. < => <=) |
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
2556 | Agree, <= cutoff looks better here |
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | ||
---|---|---|
2556 | @MaskRay @vitalybuka Applied |
I wonder whether 16-byte array should use this optimization as well (i.e. < => <=)
@vitalybuka