1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test
Artur Pilipenko f5935363ed Rework loop predication pass
We've found a serious issue with the current implementation of loop predication.
The current implementation relies on SCEV and this turned out to be problematic.
To fix the problem we had to rework the pass substantially. We have had the
reworked implementation in our downstream tree for a while. This is the initial
patch of the series of changes to upstream the new implementation.

For now the transformation is limited to the following case:
  * The loop has a single latch with either ult or slt icmp condition.
  * The step of the IV used in the latch condition is 1.
  * The IV of the latch condition is the same as the post increment IV of the guard condition.
  * The guard condition is ult.

See the review or the LoopPredication.cpp header for the details about the
problem and the new implementation.

Reviewed By: sanjoy, mkazantsev

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

llvm-svn: 313981
2017-09-22 13:13:57 +00:00
..
Analysis
Assembler
Bindings
Bitcode Fix a bug in a historic bitcode testcase. 2017-09-21 23:14:55 +00:00
BugPoint
CodeGen Recommit r310809 with a fix for the spill problem 2017-09-22 11:50:25 +00:00
DebugInfo [dwarfdump] Add verbose output for .debug-line section 2017-09-21 20:15:30 +00:00
DllTool
Examples
ExecutionEngine Revert "Revert "ExecutionEngine: add R_AARCH64_ABS{16,32}"" 2017-09-20 21:32:44 +00:00
Feature
FileCheck
Instrumentation [MSan] Disable sanitization for __sanitizer_dtor_callback. 2017-09-20 22:53:08 +00:00
Integer
JitListener
LibDriver
Linker
LTO
MC [ARM] Fix assembly and disassembly for VMRS/VMSR 2017-09-22 12:17:42 +00:00
Object [yaml2obj] - Don't crash on one more invalid document. 2017-09-21 08:25:59 +00:00
ObjectYAML
Other
SafepointIRVerifier
SymbolRewriter
TableGen
ThinLTO/X86
tools [obj2yaml] Don't crash for input files without symbol table 2017-09-22 09:30:40 +00:00
Transforms Rework loop predication pass 2017-09-22 13:13:57 +00:00
Unit [lit] Make lit support config files with .py extension. 2017-09-21 00:24:52 +00:00
Verifier
YAMLParser
.clang-format
CMakeLists.txt [lit] Make lit support config files with .py extension. 2017-09-21 00:24:52 +00:00
lit.cfg.py Resubmit "[lit] Refactor out some more common lit configuration code." 2017-09-21 22:16:40 +00:00
lit.site.cfg.py.in [lit] Make lit support config files with .py extension. 2017-09-21 00:24:52 +00:00
TestRunner.sh