Justin Holewinski | d068943 | 2013-03-20 00:10:32 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s |
| 2 | |
| 3 | define void @foo(<2 x i32>* %a) { |
| 4 | ; CHECK: .func foo |
| 5 | ; CHECK: ld.v2.u32 |
| 6 | ; CHECK-NEXT: ld.v2.u32 |
Dehao Chen | 02828a9 | 2017-05-17 20:18:13 +0000 | [diff] [blame] | 7 | ; CHECK-NEXT: ld.v2.u32 |
Justin Holewinski | d068943 | 2013-03-20 00:10:32 +0000 | [diff] [blame] | 8 | ; CHECK-NEXT: ld.v2.u32 |
| 9 | ; CHECK-NEXT: add.s32 |
| 10 | ; CHECK-NEXT: add.s32 |
Dehao Chen | 02828a9 | 2017-05-17 20:18:13 +0000 | [diff] [blame] | 11 | ; CHECK-NEXT: add.s32 |
| 12 | ; CHECK-NEXT: add.s32 |
Justin Holewinski | d068943 | 2013-03-20 00:10:32 +0000 | [diff] [blame] | 13 | ; CHECK-NEXT: add.s32 |
| 14 | ; CHECK-NEXT: add.s32 |
David Blaikie | 79e6c74 | 2015-02-27 19:29:02 +0000 | [diff] [blame] | 15 | %ptr0 = getelementptr <2 x i32>, <2 x i32>* %a, i32 0 |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 16 | %val0 = load <2 x i32>, <2 x i32>* %ptr0 |
David Blaikie | 79e6c74 | 2015-02-27 19:29:02 +0000 | [diff] [blame] | 17 | %ptr1 = getelementptr <2 x i32>, <2 x i32>* %a, i32 1 |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 18 | %val1 = load <2 x i32>, <2 x i32>* %ptr1 |
David Blaikie | 79e6c74 | 2015-02-27 19:29:02 +0000 | [diff] [blame] | 19 | %ptr2 = getelementptr <2 x i32>, <2 x i32>* %a, i32 2 |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 20 | %val2 = load <2 x i32>, <2 x i32>* %ptr2 |
David Blaikie | 79e6c74 | 2015-02-27 19:29:02 +0000 | [diff] [blame] | 21 | %ptr3 = getelementptr <2 x i32>, <2 x i32>* %a, i32 3 |
David Blaikie | a79ac14 | 2015-02-27 21:17:42 +0000 | [diff] [blame] | 22 | %val3 = load <2 x i32>, <2 x i32>* %ptr3 |
Justin Holewinski | d068943 | 2013-03-20 00:10:32 +0000 | [diff] [blame] | 23 | |
| 24 | %t0 = add <2 x i32> %val0, %val1 |
| 25 | %t1 = add <2 x i32> %t0, %val2 |
| 26 | %t2 = add <2 x i32> %t1, %val3 |
| 27 | |
| 28 | store <2 x i32> %t2, <2 x i32>* %a |
| 29 | |
| 30 | ret void |
| 31 | } |
| 32 | |