hanchenye-llvm-project/llvm/test
Nadav Rotem bdc9ff4498 LoopVectorize: Implement partial loop unrolling when vectorization is not profitable.
This patch enables unrolling of loops when vectorization is legal but not profitable.
We add a new class InnerLoopUnroller, that extends InnerLoopVectorizer and replaces some of the vector-specific logic with scalars.

This patch does not introduce any runtime regressions and improves the following workloads:

SingleSource/Benchmarks/Shootout/matrix -22.64%
SingleSource/Benchmarks/Shootout-C++/matrix -13.06%
External/SPEC/CINT2006/464_h264ref/464_h264ref  -3.99%
SingleSource/Benchmarks/Adobe-C++/simple_types_constant_folding -1.95%

llvm-svn: 189281
2013-08-26 22:33:26 +00:00
..
Analysis FileCheck-ize tests. 2013-08-22 00:51:19 +00:00
Assembler [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
Bindings/Ocaml [PR11606] ocaml bindings tests produce binaries in source dir 2013-08-23 00:55:32 +00:00
Bitcode Add function attribute 'optnone'. 2013-08-23 11:53:55 +00:00
BugPoint [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
CodeGen ARM: Enable machine verifier for a few more tests. 2013-08-26 20:22:08 +00:00
DebugInfo Update to remove the no-frame-pointer-elim-non-leaf flag if it was set to 'false'. 2013-08-22 21:28:54 +00:00
ExecutionEngine In LLVM FMA3 operands are dst, src1, src2, src3, however dst is not encoded as it is always src1. This was causing the encoding of the operands to be off by one. 2013-08-21 05:03:10 +00:00
Feature Add function attribute 'optnone'. 2013-08-23 11:53:55 +00:00
FileCheck [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
Instrumentation DataFlowSanitizer: correctly combine labels in the case where they are equal. 2013-08-23 18:45:06 +00:00
Integer [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
JitListener [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
Linker [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
MC This patch implements trap instructions for mips. The test cases are added. 2013-08-26 10:02:40 +00:00
Object MC CFG: Remap enough for data too, analoguous to r188873. 2013-08-21 19:40:28 +00:00
Other Update to remove the no-frame-pointer-elim-non-leaf flag if it was set to 'false'. 2013-08-22 21:28:54 +00:00
TableGen FileCheckize some tests. 2013-08-22 20:46:05 +00:00
Transforms LoopVectorize: Implement partial loop unrolling when vectorization is not profitable. 2013-08-26 22:33:26 +00:00
Unit [tests] Update to use lit_config and lit package, as appropriate. 2013-08-09 16:22:05 +00:00
Verifier [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
YAMLParser
tools [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
CMakeLists.txt llvm/test/CMakeLists.txt: Add llvm-cov in "check-clang". 2013-07-08 08:44:36 +00:00
Makefile [tests] Remove dead VALGRIND and CLEANED_TESTSUITE makefile variables. 2013-08-08 20:59:27 +00:00
Makefile.tests Remove dead code from the makefile build system. 2013-07-25 20:25:31 +00:00
TestRunner.sh
lit.cfg [tests] Update fma3 check to work with Py3. 2013-08-21 22:26:44 +00:00
lit.site.cfg.in [tests] Update to use lit_config and lit package, as appropriate. 2013-08-09 16:22:05 +00:00