llvm-project/llvm/test
Simon Pilgrim 6c8f4ada36 [X86][SSE] Recognise vXi1 boolean anyof/allof reduction patterns
Currently combineHorizontalPredicateResult only handles anyof/allof reduction patterns of legal types, which can be tricky to match as type legalization of bools can introduce bitcasts/truncs/extensions.

This patch extends combineHorizontalPredicateResult to recognise vXi1 bool reductions as well and uses the existing combineBitcastvxi1 helper to create the MOVMSK necessary to then compare the signmask result.

This ensures the accuracy of the reduction costs added in D60403 which assume the MOVMSK generation.

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

llvm-svn: 358286
2019-04-12 14:22:57 +00:00
..
Analysis [CostModel][X86] Add more exhaustive masked load/store/gather/scatter/expand/compress cost tests 2019-04-06 12:08:37 +00:00
Assembler Add LLVM IR debug info support for Fortran COMMON blocks 2019-04-08 19:13:55 +00:00
Bindings
Bitcode [ObjC][ARC] Convert the retainRV marker that is passed as a named 2019-04-10 06:20:20 +00:00
BugPoint
CodeGen [X86][SSE] Recognise vXi1 boolean anyof/allof reduction patterns 2019-04-12 14:22:57 +00:00
DebugInfo [DebugInfo] Combine Trivial and NonTrivial flags 2019-04-11 20:25:10 +00:00
Demangle llvm-undname: Fix out-of-bounds read on invalid intrinsic function code 2019-04-11 23:11:33 +00:00
Examples
ExecutionEngine
Feature
FileCheck
Instrumentation Fix a hang when lowering __builtin_dynamic_object_size 2019-04-10 23:42:11 +00:00
Integer
JitListener
LTO Revert [ThinLTO] Fix ThinLTOCodegenerator to export llvm.used symbols 2019-04-08 18:53:21 +00:00
Linker
MC [RISCV] Diagnose invalid second input register operand when using %tprel_add 2019-04-11 15:13:12 +00:00
MachineVerifier [X86] Merge the different Jcc instructions for each condition code into single instructions that store the condition code as an operand. 2019-04-05 19:28:09 +00:00
Object [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping. 2019-04-03 14:53:42 +00:00
ObjectYAML [WebAssembly] Target features section 2019-03-20 20:26:45 +00:00
Other [NewPM] Fix a nasty bug with analysis invalidation in the new PM. 2019-03-28 00:51:36 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [TableGen] Introduce !listsplat 'binary' operator 2019-04-10 18:26:36 +00:00
ThinLTO/X86 Commit accidentally omitted test case. 2019-04-01 16:29:40 +00:00
Transforms [DebugInfo] Fix pr41175 Dead Store Elimination missing debug loc 2019-04-12 09:47:35 +00:00
Unit
Verifier Remove immarg from llvm.expect 2019-03-17 23:16:18 +00:00
YAMLParser
tools [llvm-objcopy] Fill .symtab_shndx section correctly 2019-04-12 11:59:30 +00:00
.clang-format
CMakeLists.txt
TestRunner.sh
lit.cfg.py Fix llvm-rc tests. 2019-03-27 20:15:08 +00:00
lit.site.cfg.py.in