Evan Cheng
4c0bd9629d
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
llvm-svn: 133503
2011-06-21 06:01:08 +00:00
Evan Cheng
7552a62af5
Add an alternative rev16 pattern. We should figure out a better way to handle these complex rev patterns. rdar://9609108
...
llvm-svn: 133289
2011-06-17 20:47:21 +00:00
Evan Cheng
678b691aa3
Another revsh pattern. rdar://9609059
...
llvm-svn: 133064
2011-06-15 17:17:48 +00:00
Evan Cheng
dc1d626a3d
Match a few more obvious patterns to revsh. rdar://9147637.
...
llvm-svn: 127913
2011-03-18 21:52:42 +00:00
Jim Grosbach
db7415075d
FileCheck-ize a few tests.
...
llvm-svn: 117156
2010-10-22 21:55:03 +00:00
Dan Gohman
c8054d90fb
Eliminate more uses of llvm-as and llvm-dis.
...
llvm-svn: 81293
2009-09-09 00:09:15 +00:00
Tanya Lattner
f697c03883
Remove llvm-upgrade.
...
llvm-svn: 47238
2008-02-17 20:02:20 +00:00
Reid Spencer
b5dc70c270
For PR1319: Upgrade to use new test harness
...
llvm-svn: 36076
2007-04-15 19:11:47 +00:00
Evan Cheng
a5007faaa6
ARM test cases contributed by Apple.
...
llvm-svn: 33354
2007-01-19 09:20:23 +00:00