Go to file
Philip Reames 15d5563cea [RewriteStatepointsForGC] Make base pointer inference deterministic
Previously, the base pointer algorithm wasn't deterministic. The core fixed point was (of course), but we were inserting new nodes and optimizing them in an order which was unspecified and variable. We'd somewhat hacked around this for testing by sorting by value name, but that doesn't solve the general determinism problem.

Instead, we can use the order of traversal over the def/use graph to give us a single consistent ordering. Today, this is a DFS order, but the exact order doesn't mater provided it's deterministic for a given input.

(Q: It is safe to rely on a deterministic order of operands right?)

Note that this only fixes the determinism within a single inference step. The inference step is currently invoked many times in a non-deterministic order. That's a future change in the sequence. :)

Differential Revision: http://reviews.llvm.org/D12640

llvm-svn: 247208
2015-09-09 23:26:08 +00:00
clang Fix access control for lookups using the Microsoft __super extension. 2015-09-09 23:04:17 +00:00
clang-tools-extra [clang-tidy] Fix PR22785. 2015-09-09 17:06:09 +00:00
compiler-rt [msan] Unpoison dlpi_phdr in dl_iterate_phdr. 2015-09-08 23:14:44 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc Update mailing list reference. 2015-08-24 22:43:24 +00:00
libcxx Implementation of Boyer-Moore and Boyer-Moore-Horspool searchers for the LFTS. 2015-09-08 17:59:09 +00:00
libcxxabi Convert LIBCXXABI_BUILD_32_BITS to LLVM_BUILD_32_BITS. 2015-09-01 01:02:06 +00:00
libunwind unwind: cleanup -Wunused-parameter 2015-09-01 04:29:03 +00:00
lld Change the load addr into something that works on linux x86_64. 2015-09-09 22:53:55 +00:00
lldb Fix a small comment typo in Windows Process code. 2015-09-09 22:58:23 +00:00
llgo [llgo] drop debug/DIBuilder.Declare 2015-09-01 11:52:37 +00:00
llvm [RewriteStatepointsForGC] Make base pointer inference deterministic 2015-09-09 23:26:08 +00:00
openmp Remove duplicate of num_threads assignment. 2015-09-02 20:28:50 +00:00
polly [PM] Update Polly for the new AA infrastructure landed in r247167. 2015-09-09 22:13:56 +00:00