llvm-project/llvm
Jun Bum Lim 22855c26a5 [LICM] Allow sinking when foldable in loop
Summary:
Continue trying to sink an instruction if its users in the loop is foldable.
This will allow the instruction to be folded in the loop by decoupling it from
the user outside of the loop.

Reviewers: hfinkel, majnemer, davidxl, efriedma, danielcdh, bmakam, mcrosier

Reviewed By: hfinkel

Subscribers: javed.absar, bmakam, mcrosier, llvm-commits

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

llvm-svn: 320823
2017-12-15 16:09:54 +00:00
..
bindings
cmake [cmake] Fix clang-cl cross-compilation on macOS 2017-12-15 01:05:48 +00:00
docs [CodeGen] Print MCSymbol operands as <mcsymbol sym> in both MIR and debug output 2017-12-14 10:03:23 +00:00
examples [CMake] Use PRIVATE in target_link_libraries for executables 2017-12-05 21:49:56 +00:00
include [LICM] Allow sinking when foldable in loop 2017-12-15 16:09:54 +00:00
lib [LICM] Allow sinking when foldable in loop 2017-12-15 16:09:54 +00:00
projects [cmake] Support moving debuginfo-tests to llvm/projects 2017-12-12 17:06:08 +00:00
resources
runtimes [runtimes] Add install-*-stripped targets 2017-12-08 19:42:46 +00:00
test [LICM] Allow sinking when foldable in loop 2017-12-15 16:09:54 +00:00
tools [LLVMgold] Don't set undefined symbol as prevailing 2017-12-15 09:18:21 +00:00
unittests [Unit][AArch64] Additional tests for target parsing 2017-12-14 23:13:04 +00:00
utils [debuginfo] Remove obsolete test_debuginfo.pl that was moved to debuginfo-tests. 2017-12-15 00:06:26 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes [MC] Fix regression tests on Windows when git “core.autocrlf” is set to true. 2017-11-17 21:59:43 +00:00
.gitignore
CMakeLists.txt [cmake] Only attempt to install MSVC system libraries on Windows 2017-12-14 18:41:49 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

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.

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.