Skip to content

Commit 07d76b8

Browse files
committed
Fix tests.
Signed-off-by: Eric Schweitz <eschweitz@nvidia.com>
1 parent caf9e1e commit 07d76b8

File tree

8 files changed

+119
-151
lines changed

8 files changed

+119
-151
lines changed

python/tests/mlir/ast_qreg_slice.py

Lines changed: 6 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -97,38 +97,17 @@ def slice():
9797
# CHECK: cc.store %[[VAL_28]], %[[VAL_29]] : !cc.ptr<!cc.stdvec<i64>>
9898
# CHECK: %[[VAL_30:.*]] = cc.load %[[VAL_29]] : !cc.ptr<!cc.stdvec<i64>>
9999
# CHECK: %[[VAL_31:.*]] = cc.stdvec_size %[[VAL_30]] : (!cc.stdvec<i64>) -> i64
100-
# CHECK: %[[VAL_32:.*]] = cc.alloca !cc.struct<{i64, i64}>{{\[}}%[[VAL_31]] : i64]
101-
# CHECK: %[[VAL_33:.*]] = cc.loop while ((%[[VAL_34:.*]] = %[[VAL_6]]) -> (i64)) {
102-
# CHECK: %[[VAL_35:.*]] = arith.cmpi slt, %[[VAL_34]], %[[VAL_31]] : i64
103-
# CHECK: cc.condition %[[VAL_35]](%[[VAL_34]] : i64)
104-
# CHECK: } do {
105-
# CHECK: ^bb0(%[[VAL_36:.*]]: i64):
106-
# CHECK: %[[VAL_37:.*]] = cc.undef !cc.struct<{i64, i64}>
107-
# CHECK: %[[VAL_38:.*]] = cc.stdvec_data %[[VAL_30]] : (!cc.stdvec<i64>) -> !cc.ptr<!cc.array<i64 x ?>>
108-
# CHECK: %[[VAL_39:.*]] = cc.compute_ptr %[[VAL_38]][%[[VAL_36]]] : (!cc.ptr<!cc.array<i64 x ?>>, i64) -> !cc.ptr<i64>
109-
# CHECK: %[[VAL_40:.*]] = cc.load %[[VAL_39]] : !cc.ptr<i64>
110-
# CHECK: %[[VAL_41:.*]] = cc.compute_ptr %[[VAL_32]]{{\[}}%[[VAL_36]]] : (!cc.ptr<!cc.array<!cc.struct<{i64, i64}> x ?>>, i64) -> !cc.ptr<!cc.struct<{i64, i64}>>
111-
# CHECK: %[[VAL_42:.*]] = cc.insert_value %[[VAL_36]], %[[VAL_37]][0] : (!cc.struct<{i64, i64}>, i64) -> !cc.struct<{i64, i64}>
112-
# CHECK: %[[VAL_43:.*]] = cc.insert_value %[[VAL_40]], %[[VAL_42]][1] : (!cc.struct<{i64, i64}>, i64) -> !cc.struct<{i64, i64}>
113-
# CHECK: cc.store %[[VAL_43]], %[[VAL_41]] : !cc.ptr<!cc.struct<{i64, i64}>>
114-
# CHECK: cc.continue %[[VAL_36]] : i64
115-
# CHECK: } step {
116-
# CHECK: ^bb0(%[[VAL_44:.*]]: i64):
117-
# CHECK: %[[VAL_45:.*]] = arith.addi %[[VAL_44]], %[[VAL_3]] : i64
118-
# CHECK: cc.continue %[[VAL_45]] : i64
119-
# CHECK: } {invariant}
120100
# CHECK: %[[VAL_46:.*]] = cc.loop while ((%[[VAL_47:.*]] = %[[VAL_6]]) -> (i64)) {
121101
# CHECK: %[[VAL_48:.*]] = arith.cmpi slt, %[[VAL_47]], %[[VAL_31]] : i64
122102
# CHECK: cc.condition %[[VAL_48]](%[[VAL_47]] : i64)
123103
# CHECK: } do {
124104
# CHECK: ^bb0(%[[VAL_49:.*]]: i64):
125-
# CHECK: %[[VAL_50:.*]] = cc.compute_ptr %[[VAL_32]]{{\[}}%[[VAL_49]]] : (!cc.ptr<!cc.array<!cc.struct<{i64, i64}> x ?>>, i64) -> !cc.ptr<!cc.struct<{i64, i64}>>
126-
# CHECK: %[[VAL_51:.*]] = cc.load %[[VAL_50]] : !cc.ptr<!cc.struct<{i64, i64}>>
127-
# CHECK: %[[VAL_52:.*]] = cc.extract_value %[[VAL_51]][0] : (!cc.struct<{i64, i64}>) -> i64
128-
# CHECK: %[[VAL_53:.*]] = cc.extract_value %[[VAL_51]][1] : (!cc.struct<{i64, i64}>) -> i64
129-
# CHECK: %[[VAL_54:.*]] = arith.remui %[[VAL_52]], %[[VAL_1]] : i64
130-
# CHECK: %[[VAL_55:.*]] = quake.extract_ref %[[VAL_7]]{{\[}}%[[VAL_54]]] : (!quake.veq<4>, i64) -> !quake.ref
131-
# CHECK: %[[VAL_56:.*]] = arith.sitofp %[[VAL_53]] : i64 to f64
105+
# CHECK: %[[VAL_32:.*]] = cc.stdvec_data %[[VAL_30]] : (!cc.stdvec<i64>) -> !cc.ptr<!cc.array<i64 x ?>>
106+
# CHECK: %[[VAL_50:.*]] = cc.compute_ptr %[[VAL_32]][%[[VAL_49]]] : (!cc.ptr<!cc.array<!cc.struct<{i64, i64}> x ?>>, i64) -> !cc.ptr<!cc.struct<{i64, i64}>>
107+
# CHECK: %[[VAL_51:.*]] = cc.load %[[VAL_50]] : !cc.ptr<i64>
108+
# CHECK: %[[VAL_54:.*]] = arith.remui %[[VAL_49]], %[[VAL_1]] : i64
109+
# CHECK: %[[VAL_55:.*]] = quake.extract_ref %[[VAL_7]][%[[VAL_54]]] : (!quake.veq<4>, i64) -> !quake.ref
110+
# CHECK: %[[VAL_56:.*]] = arith.sitofp %[[VAL_51]] : i64 to f64
132111
# CHECK: quake.ry (%[[VAL_56]]) %[[VAL_55]] : (f64, !quake.ref) -> ()
133112
# CHECK: cc.continue %[[VAL_49]] : i64
134113
# CHECK: } step {

python/tests/mlir/conditional.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ def test_function():
5959
# CHECK: %[[VAL_9:.*]] = quake.discriminate %[[VAL_8]] : (!quake.measure) -> i1
6060
# CHECK: cc.if(%[[VAL_9]]) {
6161
# CHECK: quake.x %[[VAL_7]] : (!quake.ref) -> ()
62-
# CHECK: %[[VAL_10:.*]] = quake.mz %[[VAL_7]] name "" : (!quake.ref) -> !quake.measure
62+
# CHECK: %[[VAL_10:.*]] = quake.mz %[[VAL_7]] : (!quake.ref) -> !quake.measure
6363
# CHECK: }
6464
# CHECK: %[[VAL_11:.*]] = cc.loop while ((%[[VAL_12:.*]] = %[[VAL_2]]) -> (i64)) {
6565
# CHECK: %[[VAL_13:.*]] = arith.cmpi slt, %[[VAL_12]], %[[VAL_0]] : i64
@@ -76,7 +76,7 @@ def test_function():
7676
# CHECK: } {invariant}
7777
# CHECK: cc.if(%[[VAL_9]]) {
7878
# CHECK: quake.x %[[VAL_7]] : (!quake.ref) -> ()
79-
# CHECK: %[[VAL_18:.*]] = quake.mz %[[VAL_7]] name "" : (!quake.ref) -> !quake.measure
79+
# CHECK: %[[VAL_18:.*]] = quake.mz %[[VAL_7]] : (!quake.ref) -> !quake.measure
8080
# CHECK: }
8181
# CHECK: return
8282
# CHECK: }
@@ -117,7 +117,7 @@ def then_function():
117117
# CHECK-LABEL: func.func @__nvqpp__mlirgen____nvqppBuilderKernel_{{.*}}() attributes {"cudaq-entrypoint"
118118
# CHECK: %[[VAL_0:.*]] = quake.alloca !quake.ref
119119
# CHECK: quake.x %[[VAL_0]] : (!quake.ref) -> ()
120-
# CHECK: %[[VAL_1:.*]] = quake.mz %[[VAL_0]] name "" : (!quake.ref) -> !quake.measure
120+
# CHECK: %[[VAL_1:.*]] = quake.mz %[[VAL_0]] : (!quake.ref) -> !quake.measure
121121
# CHECK: %[[VAL_2:.*]] = quake.discriminate %[[VAL_1]] : (!quake.measure) -> i1
122122
# CHECK: cc.if(%[[VAL_2]]) {
123123
# CHECK: quake.x %[[VAL_0]] : (!quake.ref) -> ()

python/tests/mlir/control.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ def test_sample_control_qubit_args():
288288
# CHECK: quake.h %{{[0-2]}} : (!quake.ref) -> ()
289289
# CHECK: quake.apply @__nvqpp__mlirgen____nvqppBuilderKernel_{{.*}}[%{{[0-2]}}] %{{[0-2]}} : (!quake.ref, !quake.ref) -> ()
290290
# CHECK: quake.h %{{[0-2]}} : (!quake.ref) -> ()
291-
# CHECK: %[[VAL_2:.*]] = quake.mz %{{[0-2]}} name "" : (!quake.ref) -> !quake.measure
291+
# CHECK: %[[VAL_2:.*]] = quake.mz %{{[0-2]}} : (!quake.ref) -> !quake.measure
292292
# CHECK: return
293293
# CHECK: }
294294

@@ -345,7 +345,7 @@ def test_sample_control_qreg_args():
345345
# CHECK: quake.x %[[VAL_7]] : (!quake.ref) -> ()
346346
# CHECK: quake.x %[[VAL_6]] : (!quake.ref) -> ()
347347
# CHECK: quake.apply @__nvqpp__mlirgen____nvqppBuilderKernel_{{.*}}[%[[VAL_5]]] %[[VAL_6]] : (!quake.veq<2>, !quake.ref) -> ()
348-
# CHECK: %[[VAL_19:.*]] = quake.mz %[[VAL_6]] name "" : (!quake.ref) -> !quake.measure
348+
# CHECK: %[[VAL_19:.*]] = quake.mz %[[VAL_6]] : (!quake.ref) -> !quake.measure
349349
# CHECK: return
350350
# CHECK: }
351351

@@ -403,7 +403,7 @@ def test_sample_apply_call_control():
403403
# CHECK: quake.h %{{[0-2]}} : (!quake.ref) -> ()
404404
# CHECK: quake.apply @__nvqpp__mlirgen____nvqppBuilderKernel_{{.*}} [%{{[0-2]}}] %{{[0-2]}} : (!quake.ref, !quake.ref) -> ()
405405
# CHECK: quake.h %{{[0-2]}} : (!quake.ref) -> ()
406-
# CHECK: %[[VAL_2:.*]] = quake.mz %{{[0-2]}} name "" : (!quake.ref) -> !quake.measure
406+
# CHECK: %[[VAL_2:.*]] = quake.mz %{{[0-2]}} : (!quake.ref) -> !quake.measure
407407
# CHECK: return
408408
# CHECK: }
409409

python/tests/mlir/ghz.py

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -77,36 +77,14 @@ def simple(numQubits: int):
7777
# CHECK: %[[VAL_9:.*]] = arith.subi %[[VAL_8]], %[[VAL_1]] : i64
7878
# CHECK: %[[VAL_10:.*]] = quake.subveq %[[VAL_6]], 0, %[[VAL_9]] : (!quake.veq<?>, i64) -> !quake.veq<?>
7979
# CHECK: %[[VAL_11:.*]] = quake.veq_size %[[VAL_10]] : (!quake.veq<?>) -> i64
80-
# CHECK: %[[VAL_12:.*]] = cc.alloca !cc.struct<{i64, !quake.ref}>{{\[}}%[[VAL_11]] : i64]
81-
# CHECK: %[[VAL_13:.*]] = cc.loop while ((%[[VAL_14:.*]] = %[[VAL_3]]) -> (i64)) {
82-
# CHECK: %[[VAL_15:.*]] = arith.cmpi slt, %[[VAL_14]], %[[VAL_11]] : i64
83-
# CHECK: cc.condition %[[VAL_15]](%[[VAL_14]] : i64)
84-
# CHECK: } do {
85-
# CHECK: ^bb0(%[[VAL_16:.*]]: i64):
86-
# CHECK: %[[VAL_17:.*]] = cc.undef !cc.struct<{i64, !quake.ref}>
87-
# CHECK: %[[VAL_18:.*]] = quake.extract_ref %[[VAL_10]]{{\[}}%[[VAL_16]]] : (!quake.veq<?>, i64) -> !quake.ref
88-
# CHECK: %[[VAL_19:.*]] = cc.compute_ptr %[[VAL_12]]{{\[}}%[[VAL_16]]] : (!cc.ptr<!cc.array<!cc.struct<{i64, !quake.ref}> x ?>>, i64) -> !cc.ptr<!cc.struct<{i64, !quake.ref}>>
89-
# CHECK: %[[VAL_20:.*]] = cc.insert_value %[[VAL_16]], %[[VAL_17]][0] : (!cc.struct<{i64, !quake.ref}>, i64) -> !cc.struct<{i64, !quake.ref}>
90-
# CHECK: %[[VAL_21:.*]] = cc.insert_value %[[VAL_18]], %[[VAL_20]][1] : (!cc.struct<{i64, !quake.ref}>, !quake.ref) -> !cc.struct<{i64, !quake.ref}>
91-
# CHECK: cc.store %[[VAL_21]], %[[VAL_19]] : !cc.ptr<!cc.struct<{i64, !quake.ref}>>
92-
# CHECK: cc.continue %[[VAL_16]] : i64
93-
# CHECK: } step {
94-
# CHECK: ^bb0(%[[VAL_22:.*]]: i64):
95-
# CHECK: %[[VAL_23:.*]] = arith.addi %[[VAL_22]], %[[VAL_2]] : i64
96-
# CHECK: cc.continue %[[VAL_23]] : i64
97-
# CHECK: } {invariant}
9880
# CHECK: %[[VAL_24:.*]] = cc.loop while ((%[[VAL_25:.*]] = %[[VAL_3]]) -> (i64)) {
9981
# CHECK: %[[VAL_26:.*]] = arith.cmpi slt, %[[VAL_25]], %[[VAL_11]] : i64
10082
# CHECK: cc.condition %[[VAL_26]](%[[VAL_25]] : i64)
10183
# CHECK: } do {
10284
# CHECK: ^bb0(%[[VAL_27:.*]]: i64):
103-
# CHECK: %[[VAL_28:.*]] = cc.compute_ptr %[[VAL_12]]{{\[}}%[[VAL_27]]] : (!cc.ptr<!cc.array<!cc.struct<{i64, !quake.ref}> x ?>>, i64) -> !cc.ptr<!cc.struct<{i64, !quake.ref}>>
104-
# CHECK: %[[VAL_29:.*]] = cc.load %[[VAL_28]] : !cc.ptr<!cc.struct<{i64, !quake.ref}>>
105-
# CHECK: %[[VAL_30:.*]] = cc.extract_value %[[VAL_29]][0] : (!cc.struct<{i64, !quake.ref}>) -> i64
106-
# CHECK: %[[VAL_31:.*]] = cc.extract_value %[[VAL_29]][1] : (!cc.struct<{i64, !quake.ref}>) -> !quake.ref
107-
# CHECK: %[[VAL_32:.*]] = arith.addi %[[VAL_30]], %[[VAL_2]] : i64
108-
# CHECK: %[[VAL_33:.*]] = quake.extract_ref %[[VAL_6]]{{\[}}%[[VAL_32]]] : (!quake.veq<?>, i64) -> !quake.ref
109-
# CHECK: quake.x {{\[}}%[[VAL_31]]] %[[VAL_33]] : (!quake.ref, !quake.ref) -> ()
85+
# CHECK: %[[VAL_32:.*]] = arith.addi %[[VAL_27]], %[[VAL_2]] : i64
86+
# CHECK: %[[VAL_33:.*]] = quake.extract_ref %[[VAL_6]][%[[VAL_32]]] : (!quake.veq<?>, i64) -> !quake.ref
87+
# CHECK: quake.x [%[[VAL_31]]] %[[VAL_33]] : (!quake.ref, !quake.ref) -> ()
11088
# CHECK: cc.continue %[[VAL_27]] : i64
11189
# CHECK: } step {
11290
# CHECK: ^bb0(%[[VAL_34:.*]]: i64):

python/tests/mlir/measure.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,12 @@ def test_kernel_measure_1q():
4141
# CHECK: %[[VAL_2:.*]] = quake.alloca !quake.veq<2>
4242
# CHECK: %[[VAL_3:.*]] = quake.extract_ref %[[VAL_2]][0] : (!quake.veq<2>) -> !quake.ref
4343
# CHECK: %[[VAL_4:.*]] = quake.extract_ref %[[VAL_2]][1] : (!quake.veq<2>) -> !quake.ref
44-
# CHECK: %[[VAL_5:.*]] = quake.mx %[[VAL_3]] name "" : (!quake.ref) -> !quake.measure
45-
# CHECK: %[[VAL_6:.*]] = quake.mx %[[VAL_4]] name "" : (!quake.ref) -> !quake.measure
46-
# CHECK: %[[VAL_7:.*]] = quake.my %[[VAL_3]] name "" : (!quake.ref) -> !quake.measure
47-
# CHECK: %[[VAL_8:.*]] = quake.my %[[VAL_4]] name "" : (!quake.ref) -> !quake.measure
48-
# CHECK: %[[VAL_9:.*]] = quake.mz %[[VAL_3]] name "" : (!quake.ref) -> !quake.measure
49-
# CHECK: %[[VAL_10:.*]] = quake.mz %[[VAL_4]] name "" : (!quake.ref) -> !quake.measure
44+
# CHECK: %[[VAL_5:.*]] = quake.mx %[[VAL_3]] : (!quake.ref) -> !quake.measure
45+
# CHECK: %[[VAL_6:.*]] = quake.mx %[[VAL_4]] : (!quake.ref) -> !quake.measure
46+
# CHECK: %[[VAL_7:.*]] = quake.my %[[VAL_3]] : (!quake.ref) -> !quake.measure
47+
# CHECK: %[[VAL_8:.*]] = quake.my %[[VAL_4]] : (!quake.ref) -> !quake.measure
48+
# CHECK: %[[VAL_9:.*]] = quake.mz %[[VAL_3]] : (!quake.ref) -> !quake.measure
49+
# CHECK: %[[VAL_10:.*]] = quake.mz %[[VAL_4]] : (!quake.ref) -> !quake.measure
5050
# CHECK: return
5151
# CHECK: }
5252

@@ -70,9 +70,9 @@ def test_kernel_measure_qreg():
7070

7171
# CHECK-LABEL: func.func @__nvqpp__mlirgen____nvqppBuilderKernel_{{.*}}() attributes {"cudaq-entrypoint"
7272
# CHECK: %[[VAL_0:.*]] = quake.alloca !quake.veq<3>
73-
# CHECK: %[[VAL_1:.*]] = quake.mx %[[VAL_0]] name "" : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
74-
# CHECK: %[[VAL_2:.*]] = quake.my %[[VAL_0]] name "" : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
75-
# CHECK: %[[VAL_3:.*]] = quake.mz %[[VAL_0]] name "" : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
73+
# CHECK: %[[VAL_1:.*]] = quake.mx %[[VAL_0]] : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
74+
# CHECK: %[[VAL_2:.*]] = quake.my %[[VAL_0]] : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
75+
# CHECK: %[[VAL_3:.*]] = quake.mz %[[VAL_0]] : (!quake.veq<3>) -> !cc.stdvec<!quake.measure>
7676
# CHECK: return
7777
# CHECK: }
7878

python/tests/mlir/swap.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def test_swap_2q():
3939
# CHECK: %[[VAL_2:.*]] = quake.extract_ref %[[VAL_0]][1] : (!quake.veq<2>) -> !quake.ref
4040
# CHECK: quake.x %[[VAL_1]] : (!quake.ref) -> ()
4141
# CHECK: quake.swap %[[VAL_1]], %[[VAL_2]] : (!quake.ref, !quake.ref) -> ()
42-
# CHECK: %[[VAL_3:.*]] = quake.mz %[[VAL_0]] name "" : (!quake.veq<2>) -> !cc.stdvec<!quake.measure>
42+
# CHECK: %[[VAL_3:.*]] = quake.mz %[[VAL_0]] : (!quake.veq<2>) -> !cc.stdvec<!quake.measure>
4343
# CHECK: return
4444
# CHECK: }
4545

0 commit comments

Comments
 (0)