aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2013-04-01 14:38:56 +0000
committerAlexander Potapenko <glider@google.com>2013-04-01 14:38:56 +0000
commit1d021bff28af24cd8ff45b47233e41de326478cf (patch)
treeeff6851cf7ade10fd6812da6bcae03ead33c4770 /llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
parent401bed0b9ae0e11e0ab5d340c12e6748dba8ef2e (diff)
downloadllvm-1d021bff28af24cd8ff45b47233e41de326478cf.zip
llvm-1d021bff28af24cd8ff45b47233e41de326478cf.tar.gz
llvm-1d021bff28af24cd8ff45b47233e41de326478cf.tar.bz2
[libsanitizer] Run the callback on a separate stack in StopTheWorld.
Currently the callback runs on the caller's stack. If this stack contains values that have gone out of scope, and we are not super careful, those values can propagate into global variables (the libc sigaction() in particular has a side effect that can lead to this). This has caused false negatives in leak checking code. Changes: map a separate stack space for the tracer thread. Also, move some globals into local scope (they had no business being global anyway). Patch by Sergey Matveev (earthdok@google.com) llvm-svn: 178464
Diffstat (limited to 'llvm/lib/ExecutionEngine/Interpreter/Execution.cpp')
0 files changed, 0 insertions, 0 deletions