Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as -o - %s | llc -march=cellspu > %t1.s |
| 2 | ; RUN: grep "ilh" %t1.s | count 5 |
Scott Michel | 9de5d0d | 2008-01-11 02:53:15 +0000 | [diff] [blame] | 3 | target datalayout = "E-p:32:32:128-f64:64:128-f32:32:128-i64:32:128-i32:32:128-i16:16:128-i8:8:128-i1:8:128-a0:0:128-v128:128:128-s0:128:128" |
| 4 | target triple = "spu" |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 5 | |
| 6 | define i16 @test_1() { |
| 7 | %x = alloca i16, align 16 |
Scott Michel | 53dec47 | 2008-03-05 23:00:19 +0000 | [diff] [blame^] | 8 | store i16 419, i16* %x ;; ILH via pattern |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 9 | ret i16 0 |
| 10 | } |
| 11 | |
| 12 | define i16 @test_2() { |
| 13 | %x = alloca i16, align 16 |
Scott Michel | 53dec47 | 2008-03-05 23:00:19 +0000 | [diff] [blame^] | 14 | store i16 1023, i16* %x ;; ILH via pattern |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 15 | ret i16 0 |
| 16 | } |
| 17 | |
| 18 | define i16 @test_3() { |
| 19 | %x = alloca i16, align 16 |
Scott Michel | 53dec47 | 2008-03-05 23:00:19 +0000 | [diff] [blame^] | 20 | store i16 -1023, i16* %x ;; ILH via pattern |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 21 | ret i16 0 |
| 22 | } |
| 23 | |
| 24 | define i16 @test_4() { |
| 25 | %x = alloca i16, align 16 |
Scott Michel | 53dec47 | 2008-03-05 23:00:19 +0000 | [diff] [blame^] | 26 | store i16 32767, i16* %x ;; ILH via pattern |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 27 | ret i16 0 |
| 28 | } |
| 29 | |
| 30 | define i16 @test_5() { |
| 31 | %x = alloca i16, align 16 |
Scott Michel | 53dec47 | 2008-03-05 23:00:19 +0000 | [diff] [blame^] | 32 | store i16 -32768, i16* %x ;; ILH via pattern |
Scott Michel | 9999e68 | 2007-12-19 07:35:06 +0000 | [diff] [blame] | 33 | ret i16 0 |
| 34 | } |
| 35 | |
| 36 | define i16 @test_6() { |
| 37 | ret i16 0 |
| 38 | } |
| 39 | |
| 40 | |