llvm-6502/test
Simon Pilgrim 62ba058dea [DAGCombiner] SCALAR_TO_VECTOR(EXTRACT_VECTOR_ELT(V,C)) -> VECTOR_SHUFFLE
This patch attempts to convert a SCALAR_TO_VECTOR using an operand from an EXTRACT_VECTOR_ELT into a VECTOR_SHUFFLE.

This prevents many cases of spilling scalar data between the gpr + simd registers. 

At present the optimization only accepts cases where there is no TRUNC of the scalar type (i.e. all types must match).

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231554 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-07 05:52:42 +00:00
..
Analysis [SCEV] make SCEV smarter about proving no-wrap. 2015-03-04 22:24:17 +00:00
Assembler
Bindings
Bitcode Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
BugPoint
CodeGen [DAGCombiner] SCALAR_TO_VECTOR(EXTRACT_VECTOR_ELT(V,C)) -> VECTOR_SHUFFLE 2015-03-07 05:52:42 +00:00
DebugInfo Use the existing begin and end symbol for debug info. 2015-03-05 02:05:42 +00:00
ExecutionEngine
Feature
FileCheck
Instrumentation [sanitizer] add nosanitize metadata to more coverage instrumentation instructions 2015-03-05 01:20:05 +00:00
Integer
JitListener
Linker Remember to move a type to the correct set when setting the body. 2015-03-06 00:50:21 +00:00
LTO
MC [AsmPrinter][TLOF] Remove AArch64 test to appease buildbots 2015-03-06 19:42:18 +00:00
Object
Other Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SymbolRewriter
TableGen
tools [dsymutil] Apply relocations to DIE data before cloning. 2015-03-07 01:25:09 +00:00
Transforms Do not restrict interleaved unrolling to small loops, depending on the target. 2015-03-06 23:12:04 +00:00
Unit
Verifier Replace llvm.frameallocate with llvm.frameescape 2015-03-05 18:26:34 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
Makefile
Makefile.tests
TestRunner.sh