Skip to content

Commit 467b1c6

Browse files
Deactivate a test which takes too long with BDDs
One of the JBMC tests will take a long time when BDD are used. We deactivate it for now in the case BDD_GUARDS is defined. This is acceptable since using BDDs for guards is still experimental. Ideally we should find what takes too long in the execution and optimize it, but it may be that we hit a particular class of guards for which the BDDs have to be big.
1 parent 02d8f1e commit 467b1c6

File tree

3 files changed

+30
-7
lines changed

3 files changed

+30
-7
lines changed

jbmc/regression/jbmc/CMakeLists.txt

+15-6
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,18 @@ add_test_pl_tests(
22
"$<TARGET_FILE:jbmc> --validate-goto-model --validate-ssa-equation"
33
)
44

5-
add_test_pl_profile(
6-
"jbmc-symex-driven-lazy-loading"
7-
"$<TARGET_FILE:jbmc> --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading"
8-
"-C;-X;symex-driven-lazy-loading-expected-failure;-s;symex-driven-loading"
9-
"CORE"
10-
)
5+
if(DEFINED BDD_GUARDS)
6+
add_test_pl_profile(
7+
"jbmc-symex-driven-lazy-loading"
8+
"$<TARGET_FILE:jbmc> --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading"
9+
"-C;-X;symex-driven-lazy-loading-expected-failure;-s;symex-driven-loading"
10+
"CORE"
11+
)
12+
else()
13+
add_test_pl_profile(
14+
"jbmc-symex-driven-lazy-loading"
15+
"$<TARGET_FILE:jbmc> --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading"
16+
"-C;-X;symex-driven-lazy-loading-expected-failure;-X;bdd-expected-timeout;-s;symex-driven-loading"
17+
"CORE"
18+
)
19+
endif()

jbmc/regression/jbmc/Makefile

+8
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,19 @@ include ../../src/config.inc
44

55
test:
66
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation"
7+
ifeq ($(filter %DBDD_GUARDS, $(CXXFLAGS)),)
78
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading" -X symex-driven-lazy-loading-expected-failure -s symex-driven-loading
9+
else
10+
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading" -X symex-driven-lazy-loading-expected-failure -X bdd-expected-timeout -s symex-driven-loading
11+
endif
812

913
tests.log: ../$(CPROVER_DIR)/regression/test.pl
1014
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation"
15+
ifeq ($(filter %DBDD_GUARDS, $(CXXFLAGS)),)
1116
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading" -X symex-driven-lazy-loading-expected-failure -s symex-driven-loading
17+
else
18+
@../$(CPROVER_DIR)/regression/test.pl -e -p -c "../../../src/jbmc/jbmc --validate-goto-model --validate-ssa-equation --symex-driven-lazy-loading" -X symex-driven-lazy-loading-expected-failure -X bdd-expected-timeout -s symex-driven-loading
19+
endif
1220

1321
show:
1422
@for dir in *; do \
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
1-
CORE
1+
CORE bdd-expected-timeout
22
Test.class
33
--function Test.main
44
^EXIT=0$
55
^SIGNAL=0$
66
^VERIFICATION SUCCESSFUL$
77
--
88
^warning: ignoring
9+
--
10+
This test is deactivated for the build with BDDs because it takes more
11+
than 10 minutes for the test to complete.
12+
This is due to the size of the BDD representing the guards growing more than
13+
they do when reprented as exprt.
14+

0 commit comments

Comments
 (0)