Skip to content

Commit bf5e1ff

Browse files
committed
Fix unit new tests from main
1 parent 8e24bb0 commit bf5e1ff

File tree

4 files changed

+51
-24
lines changed

4 files changed

+51
-24
lines changed

source/compiler/qsc_partial_eval/src/tests/arrays.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -285,9 +285,10 @@ fn result_array_value_at_negative_index_works() {
285285
BlockId(0),
286286
&expect![[r#"
287287
Block:
288-
Call id(1), args( Qubit(0), Result(0), )
289-
Call id(1), args( Qubit(1), Result(1), )
290-
Call id(2), args( Result(1), Pointer, )
288+
Call id(1), args( Pointer, )
289+
Call id(2), args( Qubit(0), Result(0), )
290+
Call id(2), args( Qubit(1), Result(1), )
291+
Call id(3), args( Result(1), Tag(0, 3), )
291292
Return"#]],
292293
);
293294
}

source/compiler/qsc_qasm/src/tests/expression/function_call.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -371,14 +371,19 @@ fn qdk_qir_intrinsic_on_def_stmt_generates_correct_qir() -> miette::Result<(), V
371371
%Result = type opaque
372372
%Qubit = type opaque
373373
374-
define void @ENTRYPOINT__main() #0 {
374+
@empty_tag = internal constant [1 x i8] c"\00"
375+
376+
define i64 @ENTRYPOINT__main() #0 {
375377
block_0:
378+
call void @__quantum__rt__initialize(i8* null)
376379
call void @my_gate(%Qubit* inttoptr (i64 0 to %Qubit*))
377380
call void @__quantum__qis__m__body(%Qubit* inttoptr (i64 0 to %Qubit*), %Result* inttoptr (i64 0 to %Result*))
378-
call void @__quantum__rt__tuple_record_output(i64 0, i8* null)
379-
ret void
381+
call void @__quantum__rt__tuple_record_output(i64 0, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @empty_tag, i64 0, i64 0))
382+
ret i64 0
380383
}
381384
385+
declare void @__quantum__rt__initialize(i8*)
386+
382387
declare void @my_gate(%Qubit*)
383388
384389
declare void @__quantum__qis__m__body(%Qubit*, %Result*) #1
@@ -396,7 +401,7 @@ fn qdk_qir_intrinsic_on_def_stmt_generates_correct_qir() -> miette::Result<(), V
396401
!1 = !{i32 7, !"qir_minor_version", i32 0}
397402
!2 = !{i32 1, !"dynamic_qubit_management", i1 false}
398403
!3 = !{i32 1, !"dynamic_result_management", i1 false}
399-
!4 = !{i32 1, !"int_computations", !"i64"}
404+
!4 = !{i32 5, !"int_computations", !{!"i64"}}
400405
"#]]
401406
.assert_eq(&qsharp);
402407
Ok(())

source/compiler/qsc_qasm/src/tests/output.rs

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -350,16 +350,21 @@ fn qir_generation_for_box_with_simulatable_intrinsic() -> miette::Result<(), Vec
350350
%Result = type opaque
351351
%Qubit = type opaque
352352
353-
define void @ENTRYPOINT__main() #0 {
353+
@empty_tag = internal constant [1 x i8] c"\00"
354+
355+
define i64 @ENTRYPOINT__main() #0 {
354356
block_0:
357+
call void @__quantum__rt__initialize(i8* null)
355358
call void @box_begin()
356359
call void @__quantum__qis__x__body(%Qubit* inttoptr (i64 0 to %Qubit*))
357360
call void @box_end()
358361
call void @__quantum__qis__m__body(%Qubit* inttoptr (i64 0 to %Qubit*), %Result* inttoptr (i64 0 to %Result*))
359-
call void @__quantum__rt__tuple_record_output(i64 0, i8* null)
360-
ret void
362+
call void @__quantum__rt__tuple_record_output(i64 0, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @empty_tag, i64 0, i64 0))
363+
ret i64 0
361364
}
362365
366+
declare void @__quantum__rt__initialize(i8*)
367+
363368
declare void @box_begin()
364369
365370
declare void @__quantum__qis__x__body(%Qubit*)
@@ -381,7 +386,7 @@ fn qir_generation_for_box_with_simulatable_intrinsic() -> miette::Result<(), Vec
381386
!1 = !{i32 7, !"qir_minor_version", i32 0}
382387
!2 = !{i32 1, !"dynamic_qubit_management", i1 false}
383388
!3 = !{i32 1, !"dynamic_result_management", i1 false}
384-
!4 = !{i32 1, !"int_computations", !"i64"}
389+
!4 = !{i32 5, !"int_computations", !{!"i64"}}
385390
"#]]
386391
.assert_eq(&qir);
387392

@@ -415,16 +420,21 @@ fn qir_generation_for_box_with_qdk_qir_intrinsic() -> miette::Result<(), Vec<Rep
415420
%Result = type opaque
416421
%Qubit = type opaque
417422
418-
define void @ENTRYPOINT__main() #0 {
423+
@empty_tag = internal constant [1 x i8] c"\00"
424+
425+
define i64 @ENTRYPOINT__main() #0 {
419426
block_0:
427+
call void @__quantum__rt__initialize(i8* null)
420428
call void @box_begin()
421429
call void @__quantum__qis__x__body(%Qubit* inttoptr (i64 0 to %Qubit*))
422430
call void @box_end()
423431
call void @__quantum__qis__m__body(%Qubit* inttoptr (i64 0 to %Qubit*), %Result* inttoptr (i64 0 to %Result*))
424-
call void @__quantum__rt__tuple_record_output(i64 0, i8* null)
425-
ret void
432+
call void @__quantum__rt__tuple_record_output(i64 0, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @empty_tag, i64 0, i64 0))
433+
ret i64 0
426434
}
427435
436+
declare void @__quantum__rt__initialize(i8*)
437+
428438
declare void @box_begin()
429439
430440
declare void @__quantum__qis__x__body(%Qubit*)
@@ -446,7 +456,7 @@ fn qir_generation_for_box_with_qdk_qir_intrinsic() -> miette::Result<(), Vec<Rep
446456
!1 = !{i32 7, !"qir_minor_version", i32 0}
447457
!2 = !{i32 1, !"dynamic_qubit_management", i1 false}
448458
!3 = !{i32 1, !"dynamic_result_management", i1 false}
449-
!4 = !{i32 1, !"int_computations", !"i64"}
459+
!4 = !{i32 5, !"int_computations", !{!"i64"}}
450460
"#]]
451461
.assert_eq(&qir);
452462

source/compiler/qsc_qasm/src/tests/statement/gate_call.rs

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -666,14 +666,19 @@ fn qdk_qir_intrinsic_on_gate_stmt_generates_correct_qir() -> miette::Result<(),
666666
%Result = type opaque
667667
%Qubit = type opaque
668668
669-
define void @ENTRYPOINT__main() #0 {
669+
@empty_tag = internal constant [1 x i8] c"\00"
670+
671+
define i64 @ENTRYPOINT__main() #0 {
670672
block_0:
673+
call void @__quantum__rt__initialize(i8* null)
671674
call void @my_gate(%Qubit* inttoptr (i64 0 to %Qubit*))
672675
call void @__quantum__qis__m__body(%Qubit* inttoptr (i64 0 to %Qubit*), %Result* inttoptr (i64 0 to %Result*))
673-
call void @__quantum__rt__tuple_record_output(i64 0, i8* null)
674-
ret void
676+
call void @__quantum__rt__tuple_record_output(i64 0, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @empty_tag, i64 0, i64 0))
677+
ret i64 0
675678
}
676679
680+
declare void @__quantum__rt__initialize(i8*)
681+
677682
declare void @my_gate(%Qubit*)
678683
679684
declare void @__quantum__qis__m__body(%Qubit*, %Result*) #1
@@ -691,7 +696,7 @@ fn qdk_qir_intrinsic_on_gate_stmt_generates_correct_qir() -> miette::Result<(),
691696
!1 = !{i32 7, !"qir_minor_version", i32 0}
692697
!2 = !{i32 1, !"dynamic_qubit_management", i1 false}
693698
!3 = !{i32 1, !"dynamic_result_management", i1 false}
694-
!4 = !{i32 1, !"int_computations", !"i64"}
699+
!4 = !{i32 5, !"int_computations", !{!"i64"}}
695700
"#]].assert_eq(&qsharp);
696701
Ok(())
697702
}
@@ -1475,15 +1480,21 @@ fn qasm2_qdk_qir_intrinsic_on_gate_stmt_generates_correct_qir() -> miette::Resul
14751480
%Result = type opaque
14761481
%Qubit = type opaque
14771482
1478-
define void @ENTRYPOINT__main() #0 {
1483+
@empty_tag = internal constant [1 x i8] c"\00"
1484+
@0 = internal constant [6 x i8] c"0_a0r\00"
1485+
1486+
define i64 @ENTRYPOINT__main() #0 {
14791487
block_0:
1488+
call void @__quantum__rt__initialize(i8* null)
14801489
call void @my_gate(%Qubit* inttoptr (i64 0 to %Qubit*))
14811490
call void @__quantum__qis__m__body(%Qubit* inttoptr (i64 0 to %Qubit*), %Result* inttoptr (i64 0 to %Result*))
1482-
call void @__quantum__rt__array_record_output(i64 1, i8* null)
1483-
call void @__quantum__rt__result_record_output(%Result* inttoptr (i64 0 to %Result*), i8* null)
1484-
ret void
1491+
call void @__quantum__rt__array_record_output(i64 1, i8* getelementptr inbounds ([1 x i8], [1 x i8]* @empty_tag, i64 0, i64 0))
1492+
call void @__quantum__rt__result_record_output(%Result* inttoptr (i64 0 to %Result*), i8* getelementptr inbounds ([6 x i8], [6 x i8]* @0, i64 0, i64 0))
1493+
ret i64 0
14851494
}
14861495
1496+
declare void @__quantum__rt__initialize(i8*)
1497+
14871498
declare void @my_gate(%Qubit*)
14881499
14891500
declare void @__quantum__qis__m__body(%Qubit*, %Result*) #1
@@ -1503,7 +1514,7 @@ fn qasm2_qdk_qir_intrinsic_on_gate_stmt_generates_correct_qir() -> miette::Resul
15031514
!1 = !{i32 7, !"qir_minor_version", i32 0}
15041515
!2 = !{i32 1, !"dynamic_qubit_management", i1 false}
15051516
!3 = !{i32 1, !"dynamic_result_management", i1 false}
1506-
!4 = !{i32 1, !"int_computations", !"i64"}
1517+
!4 = !{i32 5, !"int_computations", !{!"i64"}}
15071518
"#]].assert_eq(&qsharp);
15081519
Ok(())
15091520
}

0 commit comments

Comments
 (0)