llvm-6502/test/CodeGen
Evan Cheng 9568e5c3c3 Teach dag combine to match halfword byteswap patterns.
1. (((x) & 0xFF00) >> 8) | (((x) & 0x00FF) << 8)
   => (bswap x) >> 16
2. ((x&0xff)<<8)|((x&0xff00)>>8)|((x&0xff000000)>>8)|((x&0x00ff0000)<<8))
   => (rotl (bswap x) 16)

This allows us to eliminate most of the def : Pat patterns for ARM rev16
revsh instructions. It catches many more cases for ARM and x86.

rdar://9609108


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133503 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-21 06:01:08 +00:00
..
Alpha make the asmparser reject function and type redefinitions. 'Merging' hasn't been 2011-06-17 07:06:44 +00:00
ARM Teach dag combine to match halfword byteswap patterns. 2011-06-21 06:01:08 +00:00
Blackfin Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
CBackend Moved to the right place. 2011-06-18 00:59:37 +00:00
CellSPU make the asmparser reject function and type redefinitions. 'Merging' hasn't been 2011-06-17 07:06:44 +00:00
CPP manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
Generic rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
MBlaze
Mips Re-apply 132758 and 132768 which were speculatively reverted in 132777. 2011-06-21 00:40:49 +00:00
MSP430
PowerPC Don't apply on PPC64 the 32bit ADDIC optimizations as there's no overflow 2011-06-20 15:28:39 +00:00
PTX PTX: Fix conversion between predicates and value types 2011-06-20 18:42:48 +00:00
SPARC make the asmparser reject function and type redefinitions. 'Merging' hasn't been 2011-06-17 07:06:44 +00:00
SystemZ manually upgrade a bunch of tests to modern syntax, and remove some that 2011-06-17 03:14:27 +00:00
Thumb rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is 2011-06-18 06:05:24 +00:00
Thumb2 Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
X86 Teach dag combine to match halfword byteswap patterns. 2011-06-21 06:01:08 +00:00
XCore make the asmparser reject function and type redefinitions. 'Merging' hasn't been 2011-06-17 07:06:44 +00:00