Skip to content

Commit 1cc3158

Browse files
Merge pull request diffblue#262 from diffblue/issue259
Include GOTO guard expressions in variable sensitivity data dependencies
2 parents 5987030 + 61577f3 commit 1cc3158

File tree

3 files changed

+7
-2
lines changed

3 files changed

+7
-2
lines changed

regression/goto-analyzer/variable-sensitivity-dependence-graph/main.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ void main(void)
2828
if (in == 1)
2929
ar[0]++;
3030

31-
if (in == 2)
31+
if (out1 == 2)
3232
ar[1]++;
3333

3434
out1 = ar[0];

regression/goto-analyzer/variable-sensitivity-dependence-graph/test.desc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUTURE
1+
CORE
22
main.c
33
file1.c file2.c --dependence-graph-vs --structs --arrays --show
44
EXIT=0
@@ -9,6 +9,7 @@ SIGNAL=0
99
^Data dependencies: 4 \[st.b\], 53 \[st.b\]$
1010
^Data dependencies: 1 \[st.a\], 4 \[st.b\], 53 \[st.a, st.b\]$
1111
^Data dependencies: 48 \[ar\[\(signed long int\)0\]\]$
12+
^Data dependencies: 1 \[out1\], 6 \[out1\], 53 \[out1\]$
1213
^Data dependencies: 48 \[ar\[\(signed long int\)1\]\]$
1314
^Data dependencies: 10 \[ar\[\(signed long int\)0\]\], 48 \[ar\[\(signed long int\)0\]\]$
1415
^Data dependencies: 13 \[ar\[\(signed long int\)1\]\], 48 \[ar\[\(signed long int\)1\]\]$

src/analyses/variable-sensitivity/variable_sensitivity_dependence_graph.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,10 @@ void variable_sensitivity_dependence_domaint::data_dependencies(
137137
eval_data_deps(arg, ns, domain_data_deps);
138138
}
139139
}
140+
else if (to->is_goto())
141+
{
142+
eval_data_deps(to->guard, ns, domain_data_deps);
143+
}
140144
}
141145

142146
void variable_sensitivity_dependence_domaint::control_dependencies(

0 commit comments

Comments
 (0)