llvm-6502/test
Andrea Di Biagio 3996e5290a [DAG] Further improve the logic in DAGCombiner that folds a pair of shuffles into a single shuffle if the resulting mask is legal.
This patch teaches the DAGCombiner how to fold shuffles according to the
following new rules:
  1. shuffle(shuffle(x, y), undef) -> x
  2. shuffle(shuffle(x, y), undef) -> y
  3. shuffle(shuffle(x, y), undef) -> shuffle(x, undef)
  4. shuffle(shuffle(x, y), undef) -> shuffle(y, undef)

The backend avoids to combine shuffles according to rules 3. and 4. if
the resulting shuffle does not have a legal mask. This is to avoid introducing
illegal shuffles that are potentially expanded into a sub-optimal sequence of
target specific dag nodes during vector legalization.

Added test case combine-vec-shuffle-2.ll to verify that we correctly triggers
the new rules when combining shuffles.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212748 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-10 18:04:55 +00:00
..
Analysis Improve BasicAA CS-CS queries 2014-07-08 23:16:49 +00:00
Assembler IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
Bindings Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
Bitcode Add some test files for r211710. 2014-06-25 15:41:39 +00:00
BugPoint Revert r206989, "Mark llvm/test/BugPoint/compile-custom.ll as XFAIL:vg_leak." It has been fixed since r207265. 2014-04-27 11:59:33 +00:00
CodeGen [DAG] Further improve the logic in DAGCombiner that folds a pair of shuffles into a single shuffle if the resulting mask is legal. 2014-07-10 18:04:55 +00:00
DebugInfo [SystemZ] Fix FPR dwarf numbering 2014-07-10 10:45:11 +00:00
ExecutionEngine Fix this test to not write to the source tree, and instead to write to 2014-06-28 05:18:49 +00:00
Feature IR: Aliases don't belong to an explicit comdat 2014-07-10 16:26:10 +00:00
FileCheck
Instrumentation [dfsan] Handle bitcast aliases. 2014-07-10 01:30:39 +00:00
Integer
JitListener
Linker IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
LTO Change the default input for llvm-nm to be a.out instead of standard input 2014-06-23 20:27:53 +00:00
MC [AArch64] Add logical alias instructions to MC AsmParser 2014-07-10 15:12:26 +00:00
Object Changed the lvm-nm alias "-s" for -print-armap to "-M". 2014-07-08 23:47:31 +00:00
Other IR: Fold away compares between GV GEPs and GVs 2014-07-04 22:05:26 +00:00
TableGen Fix error in tablegen when either operand of !if is an empty list. 2014-06-10 20:10:08 +00:00
tools [llvm-readobj] Fix output of MIPS GOT without local and global entries. 2014-07-05 19:28:49 +00:00
Transforms InstCombine: Fix a crash in Descale for multiply-by-zero 2014-07-10 17:13:27 +00:00
Unit Let test/Unit/lit.cfg add config.shlibdir to $PATH on DLL platforms like cygming. 2014-07-04 05:11:55 +00:00
Verifier IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
YAMLParser
.clang-format
CMakeLists.txt OK, NAKAMURA Takumi beat me to this change. So backing out my addition of 2014-05-19 23:26:51 +00:00
lit.cfg Delete utils/FileUpdate. 2014-06-23 17:58:39 +00:00
lit.site.cfg.in
Makefile lld test for configure & make 2014-06-06 09:06:25 +00:00
Makefile.tests
TestRunner.sh