@@ -2419,10 +2419,10 @@ module ConcurrentAssert(input clk);
24192419 // CHECK: moore.procedure always
24202420 // CHECK: [[READ_A:%.+]] = moore.read [[A]] : <i1>
24212421 // CHECK: [[CONV_A:%.+]] = moore.to_builtin_bool [[READ_A]] : i1
2422- // CHECK: [[DELAY_A:%.+]] = ltl.delay [[CONV_A]], 0, 0 : i1
2422+ // CHECK: [[DELAY_A:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 0, 0 : i1
24232423 // CHECK: [[READ_B:%.+]] = moore.read [[B]] : <l1>
24242424 // CHECK: [[CONV_B:%.+]] = moore.to_builtin_bool [[READ_B]] : l1
2425- // CHECK: [[DELAY_B:%.+]] = ltl.delay [[CONV_B]], 0, 0 : i1
2425+ // CHECK: [[DELAY_B:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_B]], 0, 0 : i1
24262426 // CHECK: [[CONCAT_OP:%.+]] = ltl.concat [[DELAY_A]], [[DELAY_B]] : !ltl.sequence, !ltl.sequence
24272427 // CHECK: verif.assert [[CONCAT_OP]] : !ltl.sequence
24282428 // CHECK: moore.return
@@ -2431,13 +2431,13 @@ module ConcurrentAssert(input clk);
24312431 // CHECK: moore.procedure always
24322432 // CHECK: [[READ_A:%.+]] = moore.read [[A]] : <i1>
24332433 // CHECK: [[CONV_A:%.+]] = moore.to_builtin_bool [[READ_A]] : i1
2434- // CHECK: [[DELAY_A:%.+]] = ltl.delay [[CONV_A]], 0, 0 : i1
2434+ // CHECK: [[DELAY_A:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 0, 0 : i1
24352435 // CHECK: [[READ_B:%.+]] = moore.read [[B]] : <l1>
24362436 // CHECK: [[CONV_B:%.+]] = moore.to_builtin_bool [[READ_B]] : l1
2437- // CHECK: [[DELAY_B:%.+]] = ltl.delay [[CONV_B]], 1 : i1
2437+ // CHECK: [[DELAY_B:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_B]], 1 : i1
24382438 // CHECK: [[READ_A2:%.+]] = moore.read [[A]] : <i1>
24392439 // CHECK: [[CONV_A2:%.+]] = moore.to_builtin_bool [[READ_A2]] : i1
2440- // CHECK: [[DELAY_A2:%.+]] = ltl.delay [[CONV_A2]], 3, 2 : i1
2440+ // CHECK: [[DELAY_A2:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A2]], 3, 2 : i1
24412441 // CHECK: [[CONCAT_OP:%.+]] = ltl.concat [[DELAY_A]], [[DELAY_B]], [[DELAY_A2]] : !ltl.sequence, !ltl.sequence, !ltl.sequence
24422442 // CHECK: verif.assert [[CONCAT_OP]] : !ltl.sequence
24432443 // CHECK: moore.return
@@ -2480,15 +2480,15 @@ module ConcurrentAssert(input clk);
24802480 // CHECK: moore.procedure always
24812481 // CHECK: [[READ_A:%.+]] = moore.read [[A]] : <i1>
24822482 // CHECK: [[CONV_A:%.+]] = moore.to_builtin_bool [[READ_A]] : i1
2483- // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[CONV_A]], 1, 0 : i1
2483+ // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 1, 0 : i1
24842484 // CHECK: verif.assert [[DELAY_OP]] : !ltl.sequence
24852485 // CHECK: moore.return
24862486 // CHECK: }
24872487 assert property (nexttime a);
24882488 // CHECK: moore.procedure always
24892489 // CHECK: [[READ_A:%.+]] = moore.read [[A]] : <i1>
24902490 // CHECK: [[CONV_A:%.+]] = moore.to_builtin_bool [[READ_A]] : i1
2491- // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[CONV_A]], 5, 0 : i1
2491+ // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 5, 0 : i1
24922492 // CHECK: verif.assert [[DELAY_OP]] : !ltl.sequence
24932493 // CHECK: moore.return
24942494 // CHECK: }
@@ -2543,8 +2543,8 @@ module ConcurrentAssert(input clk);
25432543 // CHECK: [[CONV_B:%.+]] = moore.to_builtin_bool [[READ_B]] : l1
25442544 // CHECK: [[CONST_T:%.+]] = hw.constant true
25452545 // CHECK: [[REPEAT_T:%.+]] = ltl.repeat [[CONST_T]], 0 : i1
2546- // CHECK: [[DELAY_RT:%.+]] = ltl.delay [[REPEAT_T]], 1, 0 : !ltl.sequence
2547- // CHECK: [[DELAY_A:%.+]] = ltl.delay [[CONV_A]], 1, 0 : i1
2546+ // CHECK: [[DELAY_RT:%.+]] = ltl.delay [[PRE:.*]] [[ REPEAT_T]], 1, 0 : !ltl.sequence
2547+ // CHECK: [[DELAY_A:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 1, 0 : i1
25482548 // CHECK: [[CONCAT_OP:%.+]] = ltl.concat [[DELAY_RT]], [[DELAY_A]], [[CONST_T]] : !ltl.sequence, !ltl.sequence, i1
25492549 // CHECK: [[INTER_OP:%.+]] = ltl.intersect [[CONCAT_OP]], [[CONV_B]] : !ltl.sequence, i1
25502550 // CHECK: verif.assert [[INTER_OP]] : !ltl.sequence
@@ -2614,7 +2614,7 @@ module ConcurrentAssert(input clk);
26142614 // CHECK: [[READ_B:%.+]] = moore.read [[B]] : <l1>
26152615 // CHECK: [[CONV_B:%.+]] = moore.to_builtin_bool [[READ_B]] : l1
26162616 // CHECK: [[CONST_T:%.+]] = hw.constant true
2617- // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[CONV_A]], 1, 0 : i1
2617+ // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 1, 0 : i1
26182618 // CHECK: [[CONCAT_OP:%.+]] = ltl.concat [[DELAY_OP]], [[CONST_T]] : !ltl.sequence, i1
26192619 // CHECK: [[IMPLICATION_OP:%.+]] = ltl.implication [[CONCAT_OP]], [[CONV_B]] : !ltl.sequence, i1
26202620 // CHECK: verif.assert [[IMPLICATION_OP]] : !ltl.property
@@ -2640,7 +2640,7 @@ module ConcurrentAssert(input clk);
26402640 // CHECK: [[CONV_B:%.+]] = moore.to_builtin_bool [[READ_B]] : l1
26412641 // CHECK: [[CONST_T:%.+]] = hw.constant true
26422642 // CHECK: [[NOT_OP:%.+]] = ltl.not [[CONV_B]] : i1
2643- // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[CONV_A]], 1, 0 : i1
2643+ // CHECK: [[DELAY_OP:%.+]] = ltl.delay [[PRE:.*]] [[ CONV_A]], 1, 0 : i1
26442644 // CHECK: [[CONCAT_OP:%.+]] = ltl.concat [[DELAY_OP]], [[CONST_T]] : !ltl.sequence, i1
26452645 // CHECK: [[IMPLICATION_OP:%.+]] = ltl.implication [[CONCAT_OP]], [[NOT_OP]] : !ltl.sequence, !ltl.property
26462646 // CHECK: [[NOT_IMPLI_OP:%.+]] = ltl.not [[IMPLICATION_OP]] : !ltl.property
@@ -2665,10 +2665,10 @@ module ConcurrentAssert(input clk);
26652665 // CHECK: moore.procedure always {
26662666 // CHECK: [[TMP:%.+]] = moore.read %a : <i1>
26672667 // CHECK: [[A:%.+]] = moore.to_builtin_bool [[TMP]] : i1
2668- // CHECK: [[DA:%.+]] = ltl.delay [[A]], 0, 0 : i1
2668+ // CHECK: [[DA:%.+]] = ltl.delay [[PRE:.*]] [[ A]], 0, 0 : i1
26692669 // CHECK: [[TMP:%.+]] = moore.read %b : <l1>
26702670 // CHECK: [[B:%.+]] = moore.to_builtin_bool [[TMP]] : l1
2671- // CHECK: [[DB:%.+]] = ltl.delay [[B]], 1, 0 : i1
2671+ // CHECK: [[DB:%.+]] = ltl.delay [[PRE:.*]] [[ B]], 1, 0 : i1
26722672 // CHECK: [[RES:%.+]] = ltl.concat %6, %9 : !ltl.sequence, !ltl.sequence
26732673 // CHECK: verif.assert [[RES]] : !ltl.sequence
26742674 // CHECK: moore.return
@@ -2685,8 +2685,8 @@ module ConcurrentAssert(input clk);
26852685 // CHECK: [[A:%.+]] = moore.to_builtin_bool [[TMP]] : i1
26862686 // CHECK: [[TRUE:%.+]] = hw.constant true
26872687 // CHECK: [[OP1:%.+]] = ltl.repeat [[TRUE]], 0 : i1
2688- // CHECK: [[OP2:%.+]] = ltl.delay [[OP1]], 1, 0 : !ltl.sequence
2689- // CHECK: [[OP3:%.+]] = ltl.delay [[B]], 1, 0 : i1
2688+ // CHECK: [[OP2:%.+]] = ltl.delay [[PRE:.*]] [[ OP1]], 1, 0 : !ltl.sequence
2689+ // CHECK: [[OP3:%.+]] = ltl.delay [[PRE:.*]] [[ B]], 1, 0 : i1
26902690 // CHECK: [[OP4:%.+]] = ltl.concat [[OP2]], [[OP3]], [[TRUE]] : !ltl.sequence, !ltl.sequence, i1
26912691 // CHECK: [[RES:%.+]] = ltl.intersect [[OP4]], [[A]] : !ltl.sequence, i1
26922692 // CHECK: verif.assert [[RES]] : !ltl.sequence
@@ -2700,10 +2700,10 @@ module ConcurrentAssert(input clk);
27002700 // CHECK: moore.procedure always {
27012701 // CHECK: [[TMP:%.+]] = moore.read %a : <i1>
27022702 // CHECK: [[A:%.+]] = moore.to_builtin_bool [[TMP]] : i1
2703- // CHECK: [[DA:%.+]] = ltl.delay [[A]], 0, 0 : i1
2703+ // CHECK: [[DA:%.+]] = ltl.delay [[PRE:.*]] [[ A]], 0, 0 : i1
27042704 // CHECK: [[TMP:%.+]] = moore.read %b : <l1>
27052705 // CHECK: [[B:%.+]] = moore.to_builtin_bool [[TMP]] : l1
2706- // CHECK: [[DB:%.+]] = ltl.delay [[B]], 1, 0 : i1
2706+ // CHECK: [[DB:%.+]] = ltl.delay [[PRE:.*]] [[ B]], 1, 0 : i1
27072707 // CHECK: [[OP1:%.+]] = ltl.concat [[DA]], [[DB]] : !ltl.sequence, !ltl.sequence
27082708 // CHECK: [[TMP:%.+]] = moore.read %b : <l1>
27092709 // CHECK: [[B2:%.+]] = moore.to_builtin_bool [[TMP]] : l1
@@ -2725,14 +2725,14 @@ module ConcurrentAssert(input clk);
27252725 // CHECK: [[B1:%.+]] = moore.to_builtin_bool [[TMP]] : l1
27262726 // CHECK: [[TRUE:%.+]] = hw.constant true
27272727 // CHECK: [[OP1:%.+]] = ltl.repeat [[TRUE]], 0 : i1
2728- // CHECK: [[OP2:%.+]] = ltl.delay [[OP1]], 1, 0 : !ltl.sequence
2729- // CHECK: [[OP3:%.+]] = ltl.delay [[A2]], 1, 0 : i1
2728+ // CHECK: [[OP2:%.+]] = ltl.delay [[PRE:.*]] [[ OP1]], 1, 0 : !ltl.sequence
2729+ // CHECK: [[OP3:%.+]] = ltl.delay [[PRE:.*]] [[ A2]], 1, 0 : i1
27302730 // CHECK: [[OP4:%.+]] = ltl.concat [[OP2]], [[OP3]], [[TRUE]] : !ltl.sequence, !ltl.sequence, i1
27312731 // CHECK: [[OP5:%.+]] = ltl.intersect [[OP4]], [[B1]] : !ltl.sequence, i1
27322732 // CHECK: [[TRUE1:%.+]] = hw.constant true
27332733 // CHECK: [[OP6:%.+]] = ltl.repeat [[TRUE1]], 0 : i1
2734- // CHECK: [[OP7:%.+]] = ltl.delay [[OP6]], 1, 0 : !ltl.sequence
2735- // CHECK: [[OP8:%.+]] = ltl.delay [[A1]], 1, 0 : i1
2734+ // CHECK: [[OP7:%.+]] = ltl.delay [[PRE:.*]] [[ OP6]], 1, 0 : !ltl.sequence
2735+ // CHECK: [[OP8:%.+]] = ltl.delay [[PRE:.*]] [[ A1]], 1, 0 : i1
27362736 // CHECK: [[OP9:%.+]] = ltl.concat [[OP7]], [[OP8]], [[TRUE1]] : !ltl.sequence, !ltl.sequence, i1
27372737 // CHECK: [[OP10:%.+]] = ltl.intersect [[OP9]], [[OP5]] : !ltl.sequence, !ltl.sequence
27382738 // CHECK: [[TMP:%.+]] = moore.read %a : <i1>
0 commit comments