llvm-6502/lib/Transforms
Nate Begeman 95743d8748 Add the minimal amount of smarts necessary to instcombine of shufflevectors to recognize
patterns generated by clang for transpose of a matrix in generic vectors.  This is made
of two parts:

1) Propagating vector extracts of hi/lo half into their users
2) Recognizing an insertion of even elements followed by the odd elements as an unpack.

Testcase to come, but this shrinks the # of shuffle instructions generated on x86 from ~40 to the minimal 8.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110734 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 21:38:12 +00:00
..
Hello Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
InstCombine Add the minimal amount of smarts necessary to instcombine of shufflevectors to recognize 2010-08-10 21:38:12 +00:00
Instrumentation Reapply r110396, with fixes to appease the Linux buildbot gods. 2010-08-06 18:33:48 +00:00
IPO Fix a use after free error caught by the valgrind builders. 2010-08-09 21:03:28 +00:00
Scalar Don't attempt the PRE inline asm calls, since we don't value number them yet. Fixes PR7835. 2010-08-07 00:20:35 +00:00
Utils Eliminate PromoteMemoryToRegisterID; just use addPreserved("mem2reg") 2010-08-06 21:48:06 +00:00
Makefile Revert r100896 and around - this breaks the only mingw32 buildbot we have. 2010-04-15 19:51:42 +00:00