summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/stack-reuse.cpp
diff options
context:
space:
mode:
authorSilviu Baranga <silviu.baranga@arm.com>2015-06-08 10:27:06 +0000
committerSilviu Baranga <silviu.baranga@arm.com>2015-06-08 10:27:06 +0000
commit98a137196a4d3f728bddace175528c01fe617fbe (patch)
tree145b37b3973b2c3976101745b29386c7227b56f3 /clang/test/CodeGenCXX/stack-reuse.cpp
parent6aab1117e859b6cb0cc9a4753481a8ef563cf871 (diff)
downloadbcm5719-llvm-98a137196a4d3f728bddace175528c01fe617fbe.tar.gz
bcm5719-llvm-98a137196a4d3f728bddace175528c01fe617fbe.zip
[LAA] Fix estimation of number of memchecks
Summary: We need to add a runtime memcheck for pair of accesses (x,y) where at least one of x and y are writes. Assuming we have w writes and r reads, currently this number is estimated as being w* (w+r-1). This estimation will count (write,write) pairs twice and will overestimate the number of checks required. This change adds a getNumberOfChecks method to RuntimePointerCheck, which will count the number of runtime checks needed (similar in implementation to needsAnyChecking) and uses it to produce the correct number of runtime checks. Test Plan: llvm test suite spec2k spec2k6 Performance results: no changes observed (not surprising since the formula for 1 writer is basically the same, which would covers most cases - at least with the current check limit). Reviewers: anemet Reviewed By: anemet Subscribers: mzolotukhin, llvm-commits Differential Revision: http://reviews.llvm.org/D10217 llvm-svn: 239295
Diffstat (limited to 'clang/test/CodeGenCXX/stack-reuse.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud