Chris Smowton
760204eb46
Fix variable and function names in benchmark script
2019-02-22 16:43:20 +00:00
Michael Tautschnig
3b2500bef9
Remove delete-failing-SMT-solver tests script
...
With the new tag introduced in the preceding commit this is no longer needed.
This actually simplifies our CI scripts.
2019-02-08 12:50:58 +00:00
Romain Brenguier
9ca0dff0c1
README file on how to run benchmarks
...
This gives instruction on the installation and usage and an example of
command line to use.
2019-02-06 07:59:38 +00:00
Romain Brenguier
044d5459aa
Add an example of method list for benchmarks
...
This are taken from the apache tika project. This can be used when the
apache tika package is compiled locally, otherwise this still serves as
an example of the syntax to use to provide a list of methods to the
script.
2019-02-06 07:59:38 +00:00
Romain Brenguier
191410d05c
Gnuplot script for performance comparison
...
This can be used to compare performances of 2 runs of the benchmarks.
The data should be in 2 csv files named benchmark1.csv and
benchmark2.csv.
2019-02-06 07:59:38 +00:00
Romain Brenguier
19c07d61e7
Script to convert json benchmarks to csv
...
Add a script which takes the output of the benchmark_java_project.js
script (in json) and format it as a csv file.
2019-02-06 07:59:38 +00:00
Romain Brenguier
9d112e5980
Default JBMC arguments for benchmarks
...
Add a json file with some values for JBMC arguments.
2019-02-06 07:59:38 +00:00
Romain Brenguier
9f7d891ca1
Add package.json
...
This is to be able to install dependencies easily, using npm.
2019-02-06 07:59:38 +00:00
Romain Brenguier
2736c05978
Add a script to run Java benchmarks
2019-02-06 07:59:38 +00:00
Michael Tautschnig
321402d324
Maintain nondet counters across symex instances
...
Use the path storage, which maintains state across different symex
instantiations. While at it, also make the counters std::size_t as using limited
bitwidth is not a meaningful optimisation here.
2019-01-30 20:02:28 +00:00
Michael Tautschnig
291343b298
Silence all Visual Studio warnings when building Minisat or Glucose
...
We are not going to patch all the issues Visual Studio warns about in those code
bases.
2019-01-23 19:38:17 +00:00
Michael Tautschnig
4f384adf5c
Remove unmaintained coverage tooling
...
CMake rendered the home-grown vpath build script unnecessary, but the
get_coverage.sh script still referred to the vpath-setup.sh script. With the
preceding commit we can use CMake to get coverage reports, no need for shell
scripts.
2019-01-15 12:59:10 +00:00
thk123
1b14892c92
Check test cases as well as scenarios
2019-01-09 15:34:15 +00:00
thk123
e80eec3d35
Add test to linter that verifies that all tests have tags
2019-01-09 15:34:15 +00:00
thk123
5c03921143
Add a method that concatenates section of the code
...
Starting at elided_lines[start_line][linepos] take the end of the line
until the ending line.
2019-01-09 15:34:15 +00:00
thk123
5e82f32b3f
Add comment to CloseExpression
2019-01-09 15:34:15 +00:00
Daniel Kroening
0f7497929b
added test for uninterpreted functions
2019-01-08 20:45:42 +00:00
Daniel Kroening
e53d2b4d45
fix for uninterpreted functions
...
CBMC supports uninterpreted functions; this feature had no test, and thus
got broken with 5081310093
.
Fixes #3561 .
2019-01-08 20:45:31 +00:00
Daniel Kroening
b32649825b
Merge pull request #3662 from diffblue/shl-overflow
...
shift left overflow check now done in goto_check
2019-01-05 12:29:59 +00:00
Daniel Kroening
3be9b5efc5
implement criteria for shl overflow in goto_check
...
The current implementation generates an overflow-shl predicate, which is
then interpreted by the solver APIs. This has the disadvantage that the
predicate has semantics that are both complicated and highly
language-dependent, which is not a good fit for a solver.
The new implementation defines the meaning of signed left shift overflows in
goto-check, similar as it is already done for division and unary minus.
This is covered by an existing test:
regression/cbmc/Overflow_Leftshift1/test.desc
2019-01-04 18:43:57 +00:00
Michael Tautschnig
667fd09842
Merge pull request #3604 from tautschnig/perf-test-cleanup
...
Performance test script: speed up build, support Nitro
2019-01-04 12:56:11 +01:00
Daniel Kroening
aae639ab6b
smt2 frontend: let identifiers must be globally unique
...
The solver backend assumes that identifiers used in let expressions are
globally unique. The renamed identifiers are now retained in the id_map to
ensure that they are not re-used.
This enables 11 regression tests to pass.
2019-01-02 11:53:59 +00:00
Michael Tautschnig
786f7970fd
Merge pull request #3640 from diffblue/smt2-bound-symbols
...
smt2: fix exists/forall
2018-12-29 21:23:13 +00:00
Michael Tautschnig
9f1aa87289
Merge pull request #3639 from diffblue/smt2-with-full-size
...
smt2: fix encoding of with expressions
2018-12-29 21:22:33 +00:00
Daniel Kroening
e70471bf06
smt2: fix exists/forall
2018-12-29 13:34:51 +00:00
Daniel Kroening
fbc74decc9
smt2: fix with expressions for fixed-width arrays
2018-12-29 13:05:45 +00:00
Daniel Kroening
75dd8bafb8
smt2 backend: member operator for non-byte offsets
2018-12-29 12:18:18 +00:00
Michael Tautschnig
c37290f8e4
perf-test: benchexec can use all NUMA nodes
...
Benchexec limits itself to the memory on a single NUMA node if cores==1.
Just permit use of all cores instead.
2018-12-28 07:34:13 +00:00
Michael Tautschnig
66d6934f4e
perf-test: support Nitro-based instances
...
These instances report EBS volumes as NVME devices.
2018-12-28 07:29:51 +00:00
Michael Tautschnig
7081be527c
perf-test: Use Ubuntu 18.04 as build image
...
This avoids having to fetch a recent GCC version from some PPA. Also use
AWS mirrors for faster download.
2018-12-28 07:29:51 +00:00
Michael Tautschnig
92f3f4fff6
Make __CPROVER_allocated_memory work with non-POD type objects
...
The precision of local_bitvector_analysist is not sufficient to rule out several
cases introduced in 732ce2aee6
.
2018-12-19 10:05:37 +00:00
Michael Tautschnig
1614a5fb35
perf-test: New option --compare-to to include past results in tables
...
This simplifies performance comparison.
2018-12-18 13:28:11 +00:00
Michael Tautschnig
03aa2b8cf7
perf-test: Use Ubuntu 18.04 as SV-COMP'19 does
2018-12-18 13:28:10 +00:00
Michael Tautschnig
3d55685228
perf-test: Switch sv-benchmarks branch to svcomp19
2018-12-18 13:28:10 +00:00
Michael Tautschnig
72129a4734
perf-test: Update the set of SV-COMP categories
2018-12-18 13:28:10 +00:00
Michael Tautschnig
7a2d2f4b0b
perf-test: Maintain shell scripts outside CloudFormation template
...
This simplifies editing. Just upload them to S3 when setting up benchmarking and
download them from S3 onto the instance. Also fixed several bugs in the script.
2018-12-18 13:28:10 +00:00
Michael Tautschnig
810bc88ae6
perf-test: Python2 compatible date formatting
2018-12-18 13:28:10 +00:00
Michael Tautschnig
5d9e0c3c85
perf-test: openjdk is not required as we only build cbmc/goto-cc
...
This reduces overhead during package install.
2018-12-18 13:28:10 +00:00
Michael Tautschnig
4857bf0354
perf-test: Enable ccache for CBMC builds
...
We need to manually upload to S3 rather than using CodeBuild's cache
configuration as each perf-test run creates new CodeBuild configurations and
thus also new keys to store the cache at.
2018-12-18 13:28:10 +00:00
Chris Smowton
0a21a31fba
Merge pull request #3570 from smowton/smowton/fix/value-set-member-type-safety
...
Fix value-set make_member function
2018-12-17 16:50:34 +00:00
Chris Smowton
8d88c9776d
Enable previously-failing test Linking7/member-name-mismatch
...
Now that value-set soundly simplifies member-of-cast-of-struct, this test works as expected.
This also improves the specificity of the two tests in this directory.
This is disabled under SMT2 for the same reason as the existing test.desc -- it involves a
struct-to-struct cast, which SMT2's `convert_typecast` doesn't handle yet.
2018-12-17 15:20:27 +00:00
Daniel Kroening
53d786e513
smt2 backend: additional passing tests
2018-12-17 14:18:55 +00:00
Peter Schrammel
77c52f5989
Fix broken doxygen download link
2018-12-13 13:01:22 +00:00
Peter Schrammel
a4fe9b65e7
Merge pull request #3556 from peterschrammel/remove-old-cvc
...
Remove refs to obsolete solver modules
2018-12-12 13:20:00 +00:00
Daniel Kroening
77df7eaa1a
Merge pull request #3552 from diffblue/smt2_floatbv_model_fix
...
smt2 backend: fix floating-point values
2018-12-11 13:35:49 -05:00
Daniel Kroening
aab0b9bfdd
Merge pull request #3547 from diffblue/smt2_concat
...
smt2: concat
2018-12-11 11:28:49 -05:00
Daniel Kroening
5169e7d346
smt2 backend: fix floating-point values
2018-12-11 16:08:25 +00:00
Daniel Kroening
23deda58fe
Merge pull request #3550 from diffblue/smt2_constants
...
smt2 solver: constants
2018-12-11 11:06:01 -05:00
Daniel Kroening
61f07f6579
Merge pull request #3548 from diffblue/smt2_sign_extend
...
smt2 parser: fix sign extension
2018-12-11 11:05:33 -05:00
Daniel Kroening
24883f024a
smt2 parser: concat is multi-ary
2018-12-11 14:25:13 +00:00