This is an archive of the discontinued LLVM Phabricator instance.

[asan] Change dynamic alloca instrumentation to only consider allocas that are dominating all exits from function.
ClosedPublic

Authored by ygribov on Nov 26 2014, 12:06 AM.

Details

Summary

This patch follows Kostya's suggestion in http://reviews.llvm.org/D6055 to only consider dynamic allocas that dominate all exits from function. This would filter out non-trivial cases like allocas inside conditional statements or loops which can not be easily unpoisoned until we have a better solution.

Diff Detail

Event Timeline

ygribov updated this revision to Diff 16635.Nov 26 2014, 12:06 AM
ygribov retitled this revision from to [asan] Change dynamic alloca instrumentation to only consider allocas that are dominating all exits from function..
ygribov updated this object.
ygribov edited the test plan for this revision. (Show Details)
ygribov added reviewers: kcc, samsonov, eugenis.
ygribov added subscribers: Unknown Object (MLST), m.ostapenko.
eugenis accepted this revision.Nov 26 2014, 1:45 AM
eugenis edited edge metadata.

LGTM

lib/Transforms/Instrumentation/AddressSanitizer.cpp
660

On an unrelated note, we should probably do the same for DataLayoutPass dependency.

This revision is now accepted and ready to land.Nov 26 2014, 1:45 AM

Done in r222991.

ygribov closed this revision.Jan 27 2015, 12:09 AM