Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 1 | ; This test should not contain a sign extend |
Dan Gohman | da594cf | 2009-09-09 00:09:15 +0000 | [diff] [blame] | 2 | ; RUN: llc < %s -march=ppc32 | not grep extsb |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 3 | |
Tanya Lattner | 5ebaf3b | 2008-02-19 08:07:33 +0000 | [diff] [blame] | 4 | define i32 @test(i32 %mode.0.i.0) { |
| 5 | %tmp.79 = trunc i32 %mode.0.i.0 to i8 ; <i8> [#uses=1] |
| 6 | %tmp.80 = sext i8 %tmp.79 to i32 ; <i32> [#uses=1] |
| 7 | %tmp.81 = shl i32 %tmp.80, 24 ; <i32> [#uses=1] |
| 8 | ret i32 %tmp.81 |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 9 | } |
| 10 | |
Tanya Lattner | 5ebaf3b | 2008-02-19 08:07:33 +0000 | [diff] [blame] | 11 | define i32 @test2(i32 %mode.0.i.0) { |
| 12 | %tmp.79 = trunc i32 %mode.0.i.0 to i8 ; <i8> [#uses=1] |
| 13 | %tmp.80 = sext i8 %tmp.79 to i32 ; <i32> [#uses=1] |
| 14 | %tmp.81 = shl i32 %tmp.80, 16 ; <i32> [#uses=1] |
| 15 | %tmp.82 = and i32 %tmp.81, 16711680 ; <i32> [#uses=1] |
| 16 | ret i32 %tmp.82 |
Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 17 | } |
Tanya Lattner | 5ebaf3b | 2008-02-19 08:07:33 +0000 | [diff] [blame] | 18 | |