diffblue-cbmc/regression/goto-instrument-wmm-core
Daniel Poetzl c16d75b5f6 merge fixes 2017-04-03 16:57:59 +01:00
..
ppc_aclwdrr002_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwdrr006_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwdrr008_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwdrr010_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwdrr011_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwdrr013_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_aclwsrr002_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_bclwdww001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_bclwdww003_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_bclwdww005_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_iriw+lwsyncs_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr000_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr000_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr004_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr004_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr006_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr007_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr010_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr016_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr016_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr017_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr019_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_lwdwr019_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrr001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrw001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr002_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr003_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr006_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr007_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr008_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr010_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr011_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr012_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr013_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr014_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_podrwposwr015_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_posrr004_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_rfe000_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_rfe001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe002_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe019_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe025_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe027_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe044_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe049_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe051_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe057_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe075_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe078_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe081_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe087_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe090_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe100_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe102_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe104_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe105_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe107_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_safe110_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_thin000_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
ppc_thin001_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix004_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix004_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix005_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix005_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix007_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix007_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix008_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix008_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix013_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix013_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix014_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix014_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix017_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix017_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix018_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix018_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix020_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix020_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix021_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix021_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix023_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix023_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix026_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix026_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix027_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix027_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix029_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix029_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix030_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix030_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix036_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix036_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix037_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix037_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix039_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix039_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix040_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix040_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix043_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix043_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix044_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix044_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix046_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix046_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix047_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix047_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix050_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix050_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix051_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix051_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix053_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix053_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix055_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix055_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix057_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_mix057_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_rfi000_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_rfi003_TSO_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_safe034_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
x86_thin002_POWER_OPT goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
Makefile merge fixes 2017-04-03 16:57:59 +01:00
README.txt goto-instrument wmm regressions 2014-09-23 21:55:08 +00:00
chain.sh we want to see the errors 2014-10-14 10:23:31 +00:00

README.txt

REGRESSION TESTS FOR GOTO-INSTRUMENT --MM
-----------------------------------------

These regression tests are based on the results we obtained in 2012
for the paper ``Software Verification for Weak Memory via Program 
Transformation'', published in ESOP 2013.


(1) regression/goto-instrument-wmm and regression/goto-instrument-wmm-core
    ----------------------------------------------------------------------

regression/goto-instrument-wmm contains 4844 tests. It takes about 28' to
run all of them sequentially (make test) on dkr12 (Intel Xeon X5667, 8 cores 
at 3.07GHz, 48 GB of RAM). Testing for alpha-regressions only (make testalpha)
takes 27'.

regression/goto-instrument-wmm-core gathers 122 tests, selected for having
failed after limiting the cycle detection to two variables (unsound). The
whole test (make test) takes 42'' on dkr12. The alpha-regression tests
(make testalpha) take 39''. Improvement tests and new tests are not included
in this set of tests.


(2) tests for regressions w.r.t. soundness, precision and former results
    --------------------------------------------------------------------

REGRESSION TESTS: a difference indicates a regression
regression alpha: broke the soundness! -- C (core)
regression beta: lost some precision -- T (thorough)

IMPROVEMENT TESTS: a difference indicates an improvement
improvement: improved the precision -- K (known)

NEW TESTS: cannot be compared to previous results; new tests against the 
expected results. A difference indicates a bug.
new_tests: tests not supported in the previous experiments -- F (future)


for SC:

 old || new |
-------------------------------
 X   || OK  | regression alpha
 OK  || X   | regression beta


for WMM:

 old | exp || new |
-------------------------------------
 X   | X   || OK  | regression alpha
 X   | OK  || OK  | improvement
 OK  | X   || X   | impossible
 OK  | OK  || X   | regression beta
-------------------------------------
 ?   | OK  ||     | new_tests
 ?   | X   ||     | new_tests


In the tables above,
_old_ stands for the results obtained with goto-instrument --mm in 2012;
_new_ stands for the results obtained with the tested version;
_exp_ stands for the expected results, based on the original litmus tests
used to generate the C tests.


For each test in {regression_alpha, regression_beta, improvement}, report 
name : architecture : instrumentation strategy (if any) : old result.

For tests with ? in the previous results, these are not regression tests, but
new tests. In this case, report in new_tests
name : architecture : instrumentation strategy (if any) : expected result.


Note: for SC, if we have a ?, as no expected result is available, we skip.


(3) structure of the tests and parameters
    -------------------------------------

The Makefile calls test.pl with chain.sh, which runs the chain of tools needed
to verify the results of goto-instrument --mm.

goto-cc
goto-instrument --mm <arch> --<instrumentation-strategy>
cbmc

The paths of the three executables and their respective timeouts (180 sec each)
can be modified directly in chain.sh.


(4) construction of new regression tests (if needed in the future)
    --------------------------------------------------------------

Compile the parser reg.l and parse the last html results. Then execute
construction.sh with the four generated files as arguments, in order to set 
the new regression tests based on the previous results.