Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / AMDGPU / GlobalISel / regbankselect-ptrmask.mir
blobc08e6cf256f7b3d3e6319ca0adc85d98bca07c79
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=amdgcn -run-pass=amdgpu-regbankselect %s -verify-machineinstrs -o - -regbankselect-fast | FileCheck %s
3 # RUN: llc -mtriple=amdgcn -run-pass=amdgpu-regbankselect %s -verify-machineinstrs -o - -regbankselect-greedy | FileCheck %s
5 ---
6 name: ptrmask_p1_s_k
7 legalized: true
9 body: |
10   bb.0:
11     liveins: $sgpr0_sgpr1
13     ; CHECK-LABEL: name: ptrmask_p1_s_k
14     ; CHECK: liveins: $sgpr0_sgpr1
15     ; CHECK-NEXT: {{  $}}
16     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p1) = COPY $sgpr0_sgpr1
17     ; CHECK-NEXT: [[C:%[0-9]+]]:sgpr(s64) = G_CONSTANT i64 1
18     ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:sgpr(p1) = G_PTRMASK [[COPY]], [[C]](s64)
19     %0:_(p1) = COPY $sgpr0_sgpr1
20     %1:_(s64) = G_CONSTANT i64 1
21     %2:_(p1) = G_PTRMASK %0, %1
22 ...
24 ---
25 name: ptrmask_p1_s_s
26 legalized: true
28 body: |
29   bb.0:
30     liveins: $sgpr0_sgpr1, $sgpr2_sgpr3
32     ; CHECK-LABEL: name: ptrmask_p1_s_s
33     ; CHECK: liveins: $sgpr0_sgpr1, $sgpr2_sgpr3
34     ; CHECK-NEXT: {{  $}}
35     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p1) = COPY $sgpr0_sgpr1
36     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:sgpr(s64) = COPY $sgpr2_sgpr3
37     ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:sgpr(p1) = G_PTRMASK [[COPY]], [[COPY1]](s64)
38     %0:_(p1) = COPY $sgpr0_sgpr1
39     %1:_(s64) = COPY $sgpr2_sgpr3
40     %2:_(p1) = G_PTRMASK %0, %1
41 ...
43 ---
44 name: ptrmask_p1_v_k
45 legalized: true
47 body: |
48   bb.0:
49     liveins: $vgpr0_vgpr1
51     ; CHECK-LABEL: name: ptrmask_p1_v_k
52     ; CHECK: liveins: $vgpr0_vgpr1
53     ; CHECK-NEXT: {{  $}}
54     ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(p1) = COPY $vgpr0_vgpr1
55     ; CHECK-NEXT: [[C:%[0-9]+]]:sgpr(s64) = G_CONSTANT i64 1
56     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(s64) = COPY [[C]](s64)
57     ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:vgpr(p1) = G_PTRMASK [[COPY]], [[COPY1]](s64)
58     %0:_(p1) = COPY $vgpr0_vgpr1
59     %1:_(s64) = G_CONSTANT i64 1
60     %2:_(p1) = G_PTRMASK %0, %1
61 ...
63 ---
64 name: ptrmask_p1_v_s
65 legalized: true
67 body: |
68   bb.0:
69     liveins: $vgpr0_vgpr1, $sgpr0_sgpr1
71     ; CHECK-LABEL: name: ptrmask_p1_v_s
72     ; CHECK: liveins: $vgpr0_vgpr1, $sgpr0_sgpr1
73     ; CHECK-NEXT: {{  $}}
74     ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(p1) = COPY $vgpr0_vgpr1
75     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:sgpr(s64) = COPY $sgpr0_sgpr1
76     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:vgpr(s64) = COPY [[COPY1]](s64)
77     ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:vgpr(p1) = G_PTRMASK [[COPY]], [[COPY2]](s64)
78     %0:_(p1) = COPY $vgpr0_vgpr1
79     %1:_(s64) = COPY $sgpr0_sgpr1
80     %2:_(p1) = G_PTRMASK %0, %1
81 ...
83 ---
84 name: ptrmask_p1_v_v
85 legalized: true
87 body: |
88   bb.0:
89     liveins: $vgpr0_vgpr1, $vgpr2_vgpr3
91     ; CHECK-LABEL: name: ptrmask_p1_v_v
92     ; CHECK: liveins: $vgpr0_vgpr1, $vgpr2_vgpr3
93     ; CHECK-NEXT: {{  $}}
94     ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(p1) = COPY $vgpr0_vgpr1
95     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(s64) = COPY $vgpr2_vgpr3
96     ; CHECK-NEXT: [[PTRMASK:%[0-9]+]]:vgpr(p1) = G_PTRMASK [[COPY]], [[COPY1]](s64)
97     %0:_(p1) = COPY $vgpr0_vgpr1
98     %1:_(s64) = COPY $vgpr2_vgpr3
99     %2:_(p1) = G_PTRMASK %0, %1