llvm with tablegen backend for capstone disassembler
Go to file
Andrea Di Biagio b2921c7ca0 [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.

llvm-svn: 212748
2014-07-10 18:04:55 +00:00
clang [PowerPC] ABI support for aligned by-value aggregates 2014-07-10 17:20:07 +00:00
clang-tools-extra Removed the "-fix" suffix from tests that verify both fixes and messages. 2014-07-09 21:21:39 +00:00
compiler-rt [msan] Fix performance issue in fast_memset. 2014-07-10 12:45:56 +00:00
debuginfo-tests relax testcase for LLDB output format compatibility. 2014-03-19 23:06:18 +00:00
libclc prepare-builtins: Fix broken build due to recent LLVM API change 2014-07-07 17:46:45 +00:00
libcxx Support the built-in type-trait support in gcc 4.7 and later. Thanks to Albert Wong for the patch. 2014-07-10 15:38:20 +00:00
libcxxabi Add lit configs for libcxxabi tests. 2014-07-10 02:20:11 +00:00
lld [mach-o]: support -Z option to skip standard library paths 2014-07-10 11:46:13 +00:00
lldb Reapply typo fix. 2014-07-10 14:45:57 +00:00
llvm [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
openmp CMake: remove duplicated source file from list 2014-06-02 13:09:24 +00:00
polly clang-format polly to avoid buildbot noise 2014-07-09 10:50:10 +00:00