diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2017-08-24 20:10:33 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2017-08-24 20:10:33 +0000 |
commit | 376c28e296b708586bbfd6293519341c6ef911ee (patch) | |
tree | d945f6b4c79434cc6596a4c554931fd7679f43d6 /llvm/lib/CodeGen/MachineBlockPlacement.cpp | |
parent | 68107657d40f9871724f9f61098d0c2e115bb64f (diff) | |
download | llvm-376c28e296b708586bbfd6293519341c6ef911ee.zip llvm-376c28e296b708586bbfd6293519341c6ef911ee.tar.gz llvm-376c28e296b708586bbfd6293519341c6ef911ee.tar.bz2 |
[ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' pointer (if any).
Do not sanitize the 'this' pointer of a member call operator for a lambda with
no capture-default, since that call operator can legitimately be called with a
null this pointer from the static invoker function. Any actual call with a null
this pointer should still be caught in the caller (if it is being sanitized).
This reinstates r311589 (reverted in r311680) with the above fix.
llvm-svn: 311695
Diffstat (limited to 'llvm/lib/CodeGen/MachineBlockPlacement.cpp')
0 files changed, 0 insertions, 0 deletions