llvm-project/llvm/test/CodeGen
Evan Cheng 104dbb0fd1 For x86, canonicalize max
(x > y) ? x : y
=>
(x >= y) ? x : y

So for something like
(x - y) > 0 : (x - y) ? 0
It will be
(x - y) >= 0 : (x - y) ? 0

This makes is possible to test sign-bit and eliminate a comparison against
zero. e.g.
subl   %esi, %edi
testl  %edi, %edi
movl   $0, %eax
cmovgl %edi, %eax
=>
xorl   %eax, %eax
subl   %esi, $edi
cmovsl %eax, %edi

rdar://10633221

llvm-svn: 147512
2012-01-04 01:41:39 +00:00
..
ARM Revert r146997, "Heed spill slot alignment on ARM." 2012-01-03 22:34:35 +00:00
CBackend Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
CPP manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
CellSPU Remove histogram tests. 2011-11-12 22:39:40 +00:00
Generic Manually upgrade the test suite to specify the flag to cttz and ctlz. 2011-12-12 11:59:10 +00:00
Hexagon Hexagon: Fix a nasty order-of-initialization bug. 2011-12-16 19:08:59 +00:00
MBlaze Change the default scheduler from Latency to ILP, since Latency 2011-10-24 17:45:02 +00:00
MSP430 Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
Mips Test case for r147232. 2011-12-24 03:05:43 +00:00
PTX PTX: Continue to fix up the register mess. 2011-12-06 17:39:48 +00:00
PowerPC Cleanup stack/frame register define/kill states. This fixes two bugs: 2011-12-30 00:34:00 +00:00
SPARC Sparc CodeGen: Fix AnalyzeBranch for PR 10282. Removing addSuccessor() since 2011-12-03 21:24:48 +00:00
Thumb Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
Thumb2 Revert r146997, "Heed spill slot alignment on ARM." 2012-01-03 22:34:35 +00:00
X86 For x86, canonicalize max 2012-01-04 01:41:39 +00:00
XCore Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00