llvm-6502/test/CodeGen
Andrea Di Biagio cfdf805286 [X86] Teach how to combine horizontal binop even in the presence of undefs.
Before this change, the backend was unable to fold a build_vector dag
node with UNDEF operands into a single horizontal add/sub.

This patch teaches how to combine a build_vector with UNDEF operands into a
horizontal add/sub when possible. The algorithm conservatively avoids to combine
a build_vector with only a single non-UNDEF operand.

Added test haddsub-undef.ll to verify that we correctly fold horizontal binop
even in the presence of UNDEFs.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211265 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-19 10:29:41 +00:00
..
AArch64 Add a triple so that right syntax is choosen on mac osx systems 2014-06-18 17:20:49 +00:00
ARM ARM: implement correct atomic operations on v7M 2014-06-16 18:49:36 +00:00
CPP IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
Generic Add a new attribute called 'jumptable' that creates jump-instruction tables for functions marked with this attribute. 2014-06-05 19:29:43 +00:00
Hexagon Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
Inputs
Mips [mips] SYNC $stype instruction was added in Mips32 2014-06-18 17:10:30 +00:00
MSP430 Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
NVPTX Canonicalize addrspacecast ConstExpr between different pointer types 2014-06-15 21:40:57 +00:00
PowerPC [PowerPC] Simplify and improve loading into TOC register 2014-06-18 17:52:49 +00:00
R600 R600: Add a few tests I forgot to add. 2014-06-19 04:24:43 +00:00
SPARC IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
SystemZ IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
Thumb ARM: Fix fastcc calling convention for Thumb1 2014-06-13 08:33:03 +00:00
Thumb2 Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
X86 [X86] Teach how to combine horizontal binop even in the presence of undefs. 2014-06-19 10:29:41 +00:00
XCore Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00