1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
Go to file
Jay Foad 6c1703b074 [SDA] Don't stop divergence propagation at the IPD.
Summary:
This fixes B42473 and B42706.

This patch makes the SDA propagate branch divergence until the end of the RPO traversal. Before, the SyncDependenceAnalysis propagated divergence only until the IPD in rpo order. RPO is incompatible with post dominance in the presence of loops. This made the SDA crash because blocks were missed in the propagation.

Reviewers: foad, nhaehnle

Reviewed By: foad

Subscribers: jvesely, llvm-commits

Tags: #llvm

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

llvm-svn: 372223
2019-09-18 13:40:22 +00:00
benchmarks
bindings Bump llvm-go to C++14 2019-08-15 10:55:25 +00:00
cmake [cmake] Changes to get Windows self-host working with PGO 2019-09-18 09:43:13 +00:00
docs Reland "[docs][Bugpoint]Add notes about multiple crashes" 2019-09-17 21:09:41 +00:00
examples [Orc] Roll back ThreadPool to std::function 2019-09-13 11:59:51 +00:00
include Fix -Wdocumentation warning. NFCI. 2019-09-18 11:22:22 +00:00
lib [SDA] Don't stop divergence propagation at the IPD. 2019-09-18 13:40:22 +00:00
projects
resources
runtimes Revert "Adding support for overriding LLVM_ENABLE_RUNTIMES for runtimes builds." 2019-09-11 00:43:35 +00:00
test [SDA] Don't stop divergence propagation at the IPD. 2019-09-18 13:40:22 +00:00
tools Fix -Wdocumentation "@returns in a void function" warning. NFCI. 2019-09-18 10:39:16 +00:00
unittests [Alignment] Add a None() member function 2019-09-18 09:24:40 +00:00
utils gn build: Merge r372168 2019-09-17 19:41:36 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes Fix the "git modified" issue on the preserve-comments-crlf.s. 2019-09-10 12:17:49 +00:00
.gitignore
CMakeLists.txt [cmake] Changes to get Windows self-host working with PGO 2019-09-18 09:43:13 +00:00
CODE_OWNERS.TXT
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT

The LLVM Compiler Infrastructure
================================

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

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.