Go to file
Michael Zolotukhin 046da97806 [IDF] Enforce the returned blocks to be sorted.
Summary:
Currently the order of blocks returned by `IDF::calculate` can be
non-deterministic. This was discovered in several attempts to enable
SSAUpdaterBulk for JumpThreading (which led to miscompare in bootstrap between
stage 3 and stage4). Originally, the blocks were put into a priority queue with
a depth level as their key, and this patch adds a DFSIn number as a second key
to specify a deterministic order across blocks from one level.

The solution was suggested by Daniel Berlin.

Reviewers: dberlin, davide

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D46646

llvm-svn: 332167
2018-05-12 01:44:32 +00:00
clang Add requirement of x86 target for test. 2018-05-12 00:39:17 +00:00
clang-tools-extra [clang-tidy] Fixing fuchsia-restrict-includes-headers test 2018-05-11 22:58:45 +00:00
compiler-rt [sanitizer] Allow Fuchsia symbolizer to be reused by Myriad RTEMS 2018-05-11 23:52:19 +00:00
debuginfo-tests [Darwin] Specify DWARF 2/4 when running apple accelerator tests. 2018-02-26 20:56:45 +00:00
libclc remquo: Flush denormals if not supported 2018-05-03 05:44:28 +00:00
libcxx [libcxx] [test] Update msvc_stdlib_force_include.hpp. 2018-05-11 23:57:32 +00:00
libcxxabi Fix test failure for missing _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS 2018-05-03 12:44:27 +00:00
libunwind [cmake] Remove duplicate command line options from build 2018-04-05 20:27:50 +00:00
lld COFF: Add a flag for disabling string tail merging. 2018-05-11 22:21:36 +00:00
lldb Revert "[LLDB] Support GNU-style compressed debug sections (.zdebug)" 2018-05-12 01:25:48 +00:00
llgo
llvm [IDF] Enforce the returned blocks to be sorted. 2018-05-12 01:44:32 +00:00
openmp [OMPT] Fix thread_num for implicit_task_end callbacks in nested parallel regions 2018-05-07 12:42:21 +00:00
parallel-libs
polly Adjust to debug info metadata format change. 2018-05-10 07:09:10 +00:00
README.md

README.md

Low Level Virtual Machine (LLVM)

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.