llvm-6502/test
Andrea Di Biagio 53daaff125 [X86] Improved lowering of v4x32 build_vector dag nodes.
This patch improves the lowering of v4f32 and v4i32 build_vector dag nodes
that are known to have at least two non-zero elements.

With this patch, a build_vector that performs a blend with zero is 
converted into a shuffle. This is done to let the shuffle legalizer expand
the dag node in a optimal way. For example, if we know that a build_vector
performs a blend with zero, we can try to lower it as a movq/blend instead of
always selecting an insertps.

This patch also improves the logic that lowers a build_vector into a insertps
with zero masking. See for example the extra test cases added to test sse41.ll.

Differential Revision: http://reviews.llvm.org/D6311


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222375 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-19 19:34:29 +00:00
..
Analysis Revert r222039 because of bot failure. 2014-11-19 00:13:26 +00:00
Assembler
Bindings
Bitcode
BugPoint
CodeGen [X86] Improved lowering of v4x32 build_vector dag nodes. 2014-11-19 19:34:29 +00:00
DebugInfo Remove triple in testing case to recover an arm bot. 2014-11-18 16:45:34 +00:00
ExecutionEngine
Feature
FileCheck
Instrumentation [asan] add experimental basic-block tracing to asan-coverage; also fix -fsanitize-coverage=3 which was broken by r221718 2014-11-19 00:22:58 +00:00
Integer
JitListener
Linker IR: Simplify uniquing for MDNode 2014-11-17 23:28:21 +00:00
LTO
MC [mips][micromips] Implement SWM32 and LWM32 instructions 2014-11-19 16:44:02 +00:00
Object
Other
SymbolRewriter
TableGen
tools llvm-readobj: fix off-by-one error in COFFDumper 2014-11-19 02:07:10 +00:00
Transforms Vectorize a reduction chain feeding into a 'return' statement. 2014-11-19 16:07:38 +00:00
Unit
Verifier
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
Makefile
Makefile.tests
TestRunner.sh