@@ -119,6 +119,50 @@ jobs:
119
119
env PATH=$PATH:`pwd`/src/solvers make -C regression/cbmc test-cprover-smt2
120
120
make -C jbmc/regression test-parallel JOBS=2
121
121
122
+ # This job has been copied from the one above it, and modified to only build CBMC
123
+ # and run the `regression/cbmc/` regression tests against Z3. The rest of the tests
124
+ # (unit/regression) have been stripped based on the rationale that they are going
125
+ # to be run by the job above, which is basically the same, but more comprehensive.
126
+ # The reason we opted for a new job is that adding a `test-z3` step to the current
127
+ # jobs increases the job runtime to unacceptable levels (over 2hrs).
128
+ check-ubuntu-20_04-make-clang-smt-z3 :
129
+ runs-on : ubuntu-20.04
130
+ env :
131
+ CC : " ccache /usr/bin/clang"
132
+ CXX : " ccache /usr/bin/clang++"
133
+ steps :
134
+ - uses : actions/checkout@v2
135
+ with :
136
+ submodules : recursive
137
+ - name : Fetch dependencies
138
+ env :
139
+ DEBIAN_FRONTEND : noninteractive
140
+ run : |
141
+ sudo apt-get update
142
+ sudo apt-get install --no-install-recommends -yq clang-10 clang++-10 gdb maven jq flex bison libxml2-utils cpanminus ccache z3
143
+ make -C src minisat2-download
144
+ cpanm Thread::Pool::Simple
145
+ - name : Confirm z3 solver is available and log the version installed
146
+ run : z3 --version
147
+ - name : Prepare ccache
148
+ uses : actions/cache@v2
149
+ with :
150
+ path : .ccache
151
+ key : ${{ runner.os }}-20.04-make-clang-smt-z3-${{ github.ref }}-${{ github.sha }}-PR
152
+ restore-keys : |
153
+ ${{ runner.os }}-20.04-make-clang-smt-z3-${{ github.ref }}
154
+ ${{ runner.os }}-20.04-make-clang-smt-z3
155
+ - name : ccache environment
156
+ run : |
157
+ echo "CCACHE_BASEDIR=$PWD" >> $GITHUB_ENV
158
+ echo "CCACHE_DIR=$PWD/.ccache" >> $GITHUB_ENV
159
+ - name : Zero ccache stats and limit in size
160
+ run : ccache -z --max-size=500M
161
+ - name : Build with make
162
+ run : make -C src -j2
163
+ - name : Run regression/cbmc tests with z3 as the backend
164
+ run : make -C regression/cbmc test-z3
165
+
122
166
check-ubuntu-20_04-cmake-gcc :
123
167
runs-on : ubuntu-20.04
124
168
steps :
0 commit comments