[PATCH] D11064: Don't rely on the DepCands iteration oreder when constructing checking pointer groups

silviu.baranga at arm.com silviu.baranga at arm.com
Thu Jul 9 08:10:28 PDT 2015


sbaranga created this revision.
sbaranga added a subscriber: llvm-commits.

The checking pointer group construction algorithm relied on the iteration on DepCands.
We would need the same leaders across runs and the same iteration order over the underlying std::set for determinism.

This changes the algorithm to process the pointers in the order in which they were added to the runtime check, which is deterministic.
We need to update the tests, since the order in which pointers appear has changed.

No new tests were added, since it is impossible to test for non-determinism.

http://reviews.llvm.org/D11064

Files:
  lib/Analysis/LoopAccessAnalysis.cpp
  test/Analysis/LoopAccessAnalysis/number-of-memchecks.ll
  test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D11064.29335.patch
Type: text/x-patch
Size: 7583 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150709/473edd08/attachment.bin>


More information about the llvm-commits mailing list