[llvm] [Sanitizers] Don't inline unpoisoning of small stacks when inlining disabled (PR #75555)
Mariusz Borsa via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 15 14:00:14 PST 2023
================
@@ -3505,7 +3505,7 @@ void FunctionStackPoisoner::processStaticAllocas() {
SplitBlockAndInsertIfThenElse(Cmp, Ret, &ThenTerm, &ElseTerm);
IRBuilder<> IRBPoison(ThenTerm);
- if (StackMallocIdx <= 4) {
+ if (ASan.MaxInlinePoisoningSize != 0 && StackMallocIdx <= 4) {
----------------
wrotki wrote:
Perhaps I used wrong setting for this (MaxInlinePoisoningSize), which caused misunderstanding. I want no inline shadow accesses at all. So this optimization `StackMallocIdx <= 4)` for small frames should be turned off (use code under else) when ClInstrumentationWithCallsThreshold() == 0. Would that work / be more explicit when I change it to be this way?
https://github.com/llvm/llvm-project/pull/75555
More information about the llvm-commits
mailing list