-doemrci gives different (wrong) result from -noemrci in LivermoreLoop loop08
The various variants of loop08 break in different ways. In the following, an exit code of 0 means success, and 1 means failure. Here is one example:
sac@medusa:~/sac/benchmarks/LivermoreLoopsCtest/build$ sac2c_d ../loop08/loop08.sac -DVARIANT=APL -doemrci -O3 -v0
sac@medusa:~/sac/benchmarks/LivermoreLoopsCtest/build$ time a.out -mt 0 1000000; echo $?
Running Loop8_APL
Number of repetitions: 1000000
Iteration space size : 100
Element [1] of the result is: 81.5; should be 156
Wall Clock Time spent : 17.770 secs
Computer Performance achieved : 0.401 GFlops/s
real 0m17.772s
user 0m17.771s
sys 0m0.000s
1
sac@medusa:~/sac/benchmarks/LivermoreLoopsCtest/build$ sac2c_d ../loop08/loop08.sac -DVARIANT=APL -noemrci -O3 -v0
sac@medusa:~/sac/benchmarks/LivermoreLoopsCtest/build$ time a.out -mt 0 1000000; echo $?
Running Loop8_APL
Number of repetitions: 1000000
Iteration space size : 100
sac2c_d -VElement [1] of the result is: 156; should be 156
Wall Clock Time spent : 17.656 secs
Computer Performance achieved : 0.404 GFlops/s
real 0m17.658s
user 0m17.656s
sys 0m0.000s
0
sac@medusa:~/sac/benchmarks/LivermoreLoopsCtest/build$ sac2c_d -V
sac2c 1.3.3-MijasCosta-782-g8e7b0
build-type: DEBUG
built-by: "sac" at 2022-03-01T09:10:39