llvm-project/llvm/test
Dorit Nuzman 3ec99fe21b [IAI,LV] Avoid creating a scalar epilogue due to gaps in interleave-groups when
optimizing for size

LV is careful to respect -Os and not to create a scalar epilog in all cases
(runtime tests, trip-counts that require a remainder loop) except for peeling
due to gaps in interleave-groups. This patch fixes that; -Os will now have us
invalidate such interleave-groups and vectorize without an epilog.

The patch also removes a related FIXME comment that is now obsolete, and was
also inaccurate:
"FIXME: return None if loop requiresScalarEpilog(<MaxVF>), or look for a smaller
MaxVF that does not require a scalar epilog."
(requiresScalarEpilog() has nothing to do with VF).

Reviewers: Ayal, hsaito, dcaballe, fhahn

Reviewed By: Ayal

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

llvm-svn: 344883
2018-10-22 06:17:09 +00:00
..
Analysis [CostModel][X86] Add some initial extract/insert subvector shuffle cost tests 2018-10-20 17:38:33 +00:00
Assembler Emit template type and value parameter DIEs for template variables. 2018-10-03 18:44:53 +00:00
Bindings [LLVM-C] Add more debug information accessors to GlobalObject and Instruction 2018-09-28 15:35:18 +00:00
Bitcode Fix some missing opcodes in bcanalyzer 2018-09-24 12:47:17 +00:00
BugPoint
CodeGen [X86] Stop promoting integer loads to vXi64 2018-10-21 21:30:26 +00:00
DebugInfo DebugInfo: Use base address specifiers more aggressively 2018-10-20 09:16:49 +00:00
Demangle
Examples
ExecutionEngine [ORC] Add some more basic sanity tests for the LLJIT. 2018-10-20 20:39:53 +00:00
Feature
FileCheck
Instrumentation [PassManager/Sanitizer] Port of AddresSanitizer pass from legacy to new PassManager 2018-10-11 18:31:51 +00:00
Integer
JitListener
LTO Update test of r344198 to work with release builds. 2018-10-11 20:19:25 +00:00
Linker llvm-link: Improve diagnostic for module-level metadata mismatch 2018-10-09 01:17:27 +00:00
MC [WebAssembly] Change tabs to spaces in basic-assembly.s 2018-10-21 11:16:50 +00:00
Object llvm-ar: Darwin archive format fixes. 2018-10-10 21:07:02 +00:00
ObjectYAML Make YAML quote forward slashes. 2018-10-12 16:31:20 +00:00
Other Schedule Hot Cold Splitting pass after most optimization passes 2018-10-21 18:11:56 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [TableGen] fix assert in !cast when used out of definition in a multiclass 2018-10-10 10:52:57 +00:00
ThinLTO/X86 [LTO] Call InitLLVM from llvm-lto2 2018-10-16 17:37:45 +00:00
Transforms [IAI,LV] Avoid creating a scalar epilogue due to gaps in interleave-groups when 2018-10-22 06:17:09 +00:00
Unit
Verifier [machineverifier] Detect PHI's that are preceeded by non-PHI's 2018-10-03 22:05:31 +00:00
YAMLParser
tools llvm-dwarfdump: Support RLE_addressx and RLE_startx_length in .debug_rnglists 2018-10-20 06:16:25 +00:00
.clang-format
CMakeLists.txt Reapply r343058 with a fix for -DLLVM_ENABLE_THREADS=OFF. 2018-09-26 16:26:59 +00:00
TestRunner.sh
lit.cfg.py Reapply r343058 with a fix for -DLLVM_ENABLE_THREADS=OFF. 2018-09-26 16:26:59 +00:00
lit.site.cfg.py.in Reapply r343058 with a fix for -DLLVM_ENABLE_THREADS=OFF. 2018-09-26 16:26:59 +00:00