This is an archive of the discontinued LLVM Phabricator instance.

[asan] Avoid lifetime analysis for allocas with can be in ambiguous state
ClosedPublic

Authored by vitalybuka on Sep 7 2016, 3:37 PM.

Details

Summary

C allows to jump over variables declaration so lifetime.start can be
avoid before variable usage. To avoid false-positives on such rare cases
we detect them and remove from lifetime analysis.

PR27453
PR28267

Diff Detail

Repository
rL LLVM

Event Timeline

vitalybuka updated this revision to Diff 70612.Sep 7 2016, 3:37 PM
vitalybuka updated this revision to Diff 70613.
vitalybuka retitled this revision from to [asan] Avoid lifetime analysis for allocas with can be in ambiguous state.
vitalybuka updated this object.
vitalybuka added a reviewer: eugenis.
vitalybuka added a subscriber: llvm-commits.

comment

eugenis accepted this revision.Sep 7 2016, 3:50 PM
eugenis edited edge metadata.

LGTM

lib/Transforms/Instrumentation/AddressSanitizer.cpp
838 ↗(On Diff #70612)

please add short comments for these two maps

845 ↗(On Diff #70612)

succ_range

This revision is now accepted and ready to land.Sep 7 2016, 3:50 PM
vitalybuka updated this revision to Diff 70616.Sep 7 2016, 4:17 PM
vitalybuka edited edge metadata.

addressed comments

vitalybuka marked 2 inline comments as done.Sep 7 2016, 4:18 PM
This revision was automatically updated to reflect the committed changes.
vitalybuka reopened this revision.Sep 7 2016, 6:23 PM
This revision is now accepted and ready to land.Sep 7 2016, 6:23 PM
This revision was automatically updated to reflect the committed changes.