This is an archive of the discontinued LLVM Phabricator instance.

Disabling speculative loads under asan.
ClosedPublic

Authored by aizatsky on Sep 29 2015, 12:00 PM.

Details

Reviewers
kcc
Summary

While instrumenting std::string with asan I discovered that speculative load might load data from poisoned region. Disabling all speculative loads for asan-annotated functions.

Performance tests of asan with spec_cpu2006 didn't show any significant difference due to high variance of results.

Corresponding CL in compiler-rt: http://reviews.llvm.org/D13265

Diff Detail

Event Timeline

aizatsky updated this revision to Diff 36020.Sep 29 2015, 12:00 PM
aizatsky retitled this revision from to Disabling speculative loads under asan.
aizatsky updated this object.
aizatsky retitled this revision from Disabling speculative loads under asan to Disabling speculative loads under asan..Sep 29 2015, 12:10 PM
aizatsky updated this object.
aizatsky updated this object.
aizatsky updated this object.Oct 12 2015, 2:25 PM
aizatsky added a reviewer: kcc.
aizatsky added a subscriber: llvm-commits.
kcc edited edge metadata.Oct 12 2015, 3:16 PM

This will need an llvm-ir .lit test (in addition to http://reviews.llvm.org/D13265)

lib/Analysis/ValueTracking.cpp
3191

clang-format, please

aizatsky updated this revision to Diff 37268.Oct 13 2015, 10:38 AM
aizatsky edited edge metadata.
  • ir-based test
aizatsky updated this revision to Diff 37269.Oct 13 2015, 10:40 AM
aizatsky marked an inline comment as done.
  • clang-format

Added IR test.

kcc accepted this revision.Oct 13 2015, 10:49 AM
kcc edited edge metadata.

LGTM
Let me commit it

This revision is now accepted and ready to land.Oct 13 2015, 10:49 AM
kcc added a comment.Oct 13 2015, 10:52 AM

Oh, I did not mean clang-format the entire file. This created too many white-space changes.
NP for now, but next time just do local clang-format, please.

kcc closed this revision.Oct 13 2015, 5:23 PM

r250259.