Skip to content

Commit 4a9ba65

Browse files
committed
Feat: added explicit register tests; added prefix to check_reg asm string
1 parent 96381d3 commit 4a9ba65

File tree

1 file changed

+37
-1
lines changed

1 file changed

+37
-1
lines changed

src/test/assembly/asm/s390x-types.rs

+37-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ macro_rules! check_reg { ($func:ident, $ty:ty, $reg:tt, $mov:literal) => {
6565
dont_merge(stringify!($func));
6666

6767
let y;
68-
asm!(concat!($mov, " ", $reg, ", ", $reg), lateout($reg) y, in($reg) x);
68+
asm!(concat!($mov, " %", $reg, ", %", $reg), lateout($reg) y, in($reg) x);
6969
y
7070
}
7171
};}
@@ -130,3 +130,39 @@ check!(reg_f64, f64, freg, "ldr");
130130
// CHECK: lgr %r{{[0-9]+}}, %r{{[0-9]+}}
131131
// CHECK: #NO_APP
132132
check!(reg_ptr, ptr, reg, "lgr");
133+
134+
// CHECK-LABEL: r0_i8:
135+
// CHECK: #APP
136+
// CHECK: lr %r0, %r0
137+
// CHECK: #NO_APP
138+
check_reg!(r0_i8, i8, "r0", "lr");
139+
140+
// CHECK-LABEL: r0_i16:
141+
// CHECK: #APP
142+
// CHECK: lr %r0, %r0
143+
// CHECK: #NO_APP
144+
check_reg!(r0_i16, i16, "r0", "lr");
145+
146+
// CHECK-LABEL: r0_i32:
147+
// CHECK: #APP
148+
// CHECK: lr %r0, %r0
149+
// CHECK: #NO_APP
150+
check_reg!(r0_i32, i32, "r0", "lr");
151+
152+
// CHECK-LABEL: r0_i64:
153+
// CHECK: #APP
154+
// CHECK: lr %r0, %r0
155+
// CHECK: #NO_APP
156+
check_reg!(r0_i64, i64, "r0", "lr");
157+
158+
// CHECK-LABEL: f0_f32:
159+
// CHECK: #APP
160+
// CHECK: ler %f0, %f0
161+
// CHECK: #NO_APP
162+
check_reg!(f0_f32, f32, "f0", "ler");
163+
164+
// CHECK-LABEL: f0_f64:
165+
// CHECK: #APP
166+
// CHECK: ldr %f0, %f0
167+
// CHECK: #NO_APP
168+
check_reg!(f0_f64, f64, "f0", "ldr");

0 commit comments

Comments
 (0)