|
1 | 1 | ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a < %s | FileCheck %s |
2 | 2 |
|
3 | 3 | ; CHECK-LABEL: {{^}}qux |
4 | | -; CHECK: .set qux.num_vgpr, max(41, foo.num_vgpr) |
| 4 | +; CHECK: .set qux.num_vgpr, max(71, foo.num_vgpr) |
5 | 5 | ; CHECK: .set qux.num_agpr, max(0, foo.num_agpr) |
6 | | -; CHECK: .set qux.numbered_sgpr, max(34, foo.numbered_sgpr) |
| 6 | +; CHECK: .set qux.numbered_sgpr, max(46, foo.numbered_sgpr) |
7 | 7 | ; CHECK: .set qux.private_seg_size, 16 |
8 | 8 | ; CHECK: .set qux.uses_vcc, or(1, foo.uses_vcc) |
9 | 9 | ; CHECK: .set qux.uses_flat_scratch, or(0, foo.uses_flat_scratch) |
|
12 | 12 | ; CHECK: .set qux.has_indirect_call, or(0, foo.has_indirect_call) |
13 | 13 |
|
14 | 14 | ; CHECK-LABEL: {{^}}baz |
15 | | -; CHECK: .set baz.num_vgpr, max(42, qux.num_vgpr) |
| 15 | +; CHECK: .set baz.num_vgpr, max(61, qux.num_vgpr) |
16 | 16 | ; CHECK: .set baz.num_agpr, max(0, qux.num_agpr) |
17 | | -; CHECK: .set baz.numbered_sgpr, max(34, qux.numbered_sgpr) |
| 17 | +; CHECK: .set baz.numbered_sgpr, max(51, qux.numbered_sgpr) |
18 | 18 | ; CHECK: .set baz.private_seg_size, 16+(max(qux.private_seg_size)) |
19 | 19 | ; CHECK: .set baz.uses_vcc, or(1, qux.uses_vcc) |
20 | 20 | ; CHECK: .set baz.uses_flat_scratch, or(0, qux.uses_flat_scratch) |
|
23 | 23 | ; CHECK: .set baz.has_indirect_call, or(0, qux.has_indirect_call) |
24 | 24 |
|
25 | 25 | ; CHECK-LABEL: {{^}}bar |
26 | | -; CHECK: .set bar.num_vgpr, max(42, baz.num_vgpr) |
| 26 | +; CHECK: .set bar.num_vgpr, max(51, baz.num_vgpr) |
27 | 27 | ; CHECK: .set bar.num_agpr, max(0, baz.num_agpr) |
28 | | -; CHECK: .set bar.numbered_sgpr, max(34, baz.numbered_sgpr) |
| 28 | +; CHECK: .set bar.numbered_sgpr, max(61, baz.numbered_sgpr) |
29 | 29 | ; CHECK: .set bar.private_seg_size, 16+(max(baz.private_seg_size)) |
30 | 30 | ; CHECK: .set bar.uses_vcc, or(1, baz.uses_vcc) |
31 | 31 | ; CHECK: .set bar.uses_flat_scratch, or(0, baz.uses_flat_scratch) |
|
34 | 34 | ; CHECK: .set bar.has_indirect_call, or(0, baz.has_indirect_call) |
35 | 35 |
|
36 | 36 | ; CHECK-LABEL: {{^}}foo |
37 | | -; CHECK: .set foo.num_vgpr, max(42, amdgpu.max_num_vgpr) |
| 37 | +; CHECK: .set foo.num_vgpr, max(46, amdgpu.max_num_vgpr) |
38 | 38 | ; CHECK: .set foo.num_agpr, max(0, amdgpu.max_num_agpr) |
39 | | -; CHECK: .set foo.numbered_sgpr, max(34, amdgpu.max_num_sgpr) |
| 39 | +; CHECK: .set foo.numbered_sgpr, max(71, amdgpu.max_num_sgpr) |
40 | 40 | ; CHECK: .set foo.private_seg_size, 16 |
41 | 41 | ; CHECK: .set foo.uses_vcc, 1 |
42 | 42 | ; CHECK: .set foo.uses_flat_scratch, 0 |
|
47 | 47 | define void @foo() { |
48 | 48 | entry: |
49 | 49 | call void @bar() |
| 50 | + call void asm sideeffect "", "~{v45}"() |
| 51 | + call void asm sideeffect "", "~{s70}"() |
50 | 52 | ret void |
51 | 53 | } |
52 | 54 |
|
53 | 55 | define void @bar() { |
54 | 56 | entry: |
55 | 57 | call void @baz() |
| 58 | + call void asm sideeffect "", "~{v50}"() |
| 59 | + call void asm sideeffect "", "~{s60}"() |
56 | 60 | ret void |
57 | 61 | } |
58 | 62 |
|
59 | 63 | define void @baz() { |
60 | 64 | entry: |
61 | 65 | call void @qux() |
| 66 | + call void asm sideeffect "", "~{v60}"() |
| 67 | + call void asm sideeffect "", "~{s50}"() |
62 | 68 | ret void |
63 | 69 | } |
64 | 70 |
|
65 | 71 | define void @qux() { |
66 | 72 | entry: |
67 | 73 | call void @foo() |
| 74 | + call void asm sideeffect "", "~{v70}"() |
| 75 | + call void asm sideeffect "", "~{s45}"() |
68 | 76 | ret void |
69 | 77 | } |
70 | 78 |
|
|
0 commit comments