Skip to content

Commit 9cb937d

Browse files
committed
Prune TOP values when assuming less than expressions
Remove duplication in data_dependency & write_location merge and meet. Correct data_dependency_contextt:: has_been_modified to verify child object is also unchanged
1 parent e059490 commit 9cb937d

File tree

35 files changed

+458
-258
lines changed

35 files changed

+458
-258
lines changed

regression/goto-analyzer/pruning-gt/test-constants.desc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,5 @@ main.c
33
--variable-sensitivity --vsd-values constants --verify
44
^EXIT=0$
55
^SIGNAL=0$
6-
\[main\.assertion\.1\] line .* assertion x > 10: UNKNOWN
7-
6+
\[main\.assertion\.1\] line .* assertion x > 10: SUCCESS
87
--
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
int main()
2+
{
3+
int x = nondet();
4+
5+
if(10 < x)
6+
{
7+
assert(5 < x);
8+
}
9+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values constants --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion 5 < x: SUCCESS
7+
--
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values intervals --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion 5 < x: SUCCESS
7+
--
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values set-of-constants --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion 5 < x: SUCCESS
7+
--
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
int main()
2+
{
3+
int x = nondet();
4+
5+
if(x < 10)
6+
{
7+
assert(x < 20);
8+
}
9+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values constants --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion x < 20: SUCCESS
7+
--
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values intervals --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion x < 20: SUCCESS
7+
--
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
main.c
3+
--variable-sensitivity --vsd-values set-of-constants --verify
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
\[main\.assertion\.1\] line .* assertion x < 20: SUCCESS
7+
--

regression/goto-analyzer/pruning-lt/test-constants.desc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,5 @@ main.c
33
--variable-sensitivity --vsd-values constants --verify
44
^EXIT=0$
55
^SIGNAL=0$
6-
\[main\.assertion\.1\] line .* assertion x < 20: UNKNOWN
7-
6+
\[main\.assertion\.1\] line .* assertion x < 20: SUCCESS
87
--

0 commit comments

Comments
 (0)