Skip to content

Commit 96e6ba3

Browse files
authored
Merge pull request #1145 from diffblue/followed-by5
Test for SVA empty match and followed-by operator
2 parents 0626984 + 4124007 commit 96e6ba3

File tree

5 files changed

+60
-0
lines changed

5 files changed

+60
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
KNOWNBUG
2+
../../verilog/SVA/followed-by5.sv
3+
--buechi --bdd
4+
^\[main\.p0\] \(1 \[\*0\]\) #=# main\.x == 0: PROVED$
5+
^\[main\.p1\] \(1 \[\*0\]\) #-# 1: REFUTED$
6+
^EXIT=10$
7+
^SIGNAL=0$
8+
--
9+
^warning: ignoring
10+
--
11+
Empty LHS sequences are not implemented.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
KNOWNBUG
2+
../../verilog/SVA/followed-by5.sv
3+
--buechi --bound 2
4+
^\[main\.p0\] \(1 \[\*0\]\) #=# main\.x == 0: PROVED$
5+
^\[main\.p1\] \(1 \[\*0\]\) #-# 1: REFUTED$
6+
^EXIT=10$
7+
^SIGNAL=0$
8+
--
9+
^warning: ignoring
10+
--
11+
Empty LHS sequences are not implemented.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
CORE
2+
followed-by5.sv
3+
--bdd
4+
^\[main\.p0\] \(1 \[\*0\]\) #=# main\.x == 0: PROVED$
5+
^\[main\.p1\] \(1 \[\*0\]\) #-# 1: REFUTED$
6+
^EXIT=10$
7+
^SIGNAL=0$
8+
--
9+
^warning: ignoring
10+
--
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
KNOWNBUG
2+
followed-by5.sv
3+
--bound 2
4+
^\[main\.p0\] \(1 \[\*0\]\) #=# main\.x == 0: PROVED$
5+
^\[main\.p1\] \(1 \[\*0\]\) #-# 1: REFUTED$
6+
^EXIT=10$
7+
^SIGNAL=0$
8+
--
9+
^warning: ignoring
10+
--
11+
Empty LHS sequences are not implemented.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module main(input clk);
2+
3+
reg [31:0] x;
4+
5+
initial x=0;
6+
7+
// 0, 1, ...
8+
always @(posedge clk)
9+
x<=x+1;
10+
11+
// expected to pass: the rhs is evaluated in time frame 0
12+
initial p0: assert property (1[*0] #=# x==0);
13+
14+
// expected to fail: the lhs is empty, and the rhs overlaps with the lhs
15+
initial p1: assert property (1[*0] #-# 1);
16+
17+
endmodule

0 commit comments

Comments
 (0)