Displaying 2 results from an estimated 2 matches for "byte3".
Did you mean:
byte
2016 Dec 09
0
BSWAP matching in codegen
...match the patterns we use in our tests, one of
> which looks like this:
>
> define i32 @test_tree(i32 %x) {
>
> %byte0 = and i32 %x, 255 ; 0x000000ff
>
> %byte1 = and i32 %x, 65280 ; 0x0000ff00
>
> %byte2 = and i32 %x, 16711680 ; 0x00ff0000
>
> %byte3 = and i32 %x, 4278190080 ; 0xff000000
>
> %tmp0 = shl i32 %byte0, 8
>
> %tmp1 = lshr i32 %byte1, 8
>
> %tmp2 = shl i32 %byte2, 8
>
> %tmp3 = lshr i32 %byte3, 8
>
> %or0 = or i32 %tmp0, %tmp1
>
> %or1 = or i32 %tmp2, %tmp3
>
> %result = or i32...
2016 Dec 08
2
BSWAP matching in codegen
>> Are you sure there isn't any test coverage? As far as I can tell, the tests from https://reviews.llvm.org/rL133503 are still in the tree.
I looked at those, but none of them include the full pattern that decomposes into bswap and rol. I debugged through the X86 bswap.ll test and verified none of those cases make it through MatchBSwapHWord (they get handled in MatchBSwapHWordLow