[ 0:01] | load /home/xrockai/src/divine/nightly/test/weakmem/peterson_relaxed.cpp peterson_relaxed.cpp [ 0:01] | expect --result error --location peterson_relaxed.cpp:34 [ 0:01] | expect --trace FAULT: --trace-count 1 [ 0:01] | cc -o testcase.bc -std=c++14 peterson_relaxed.cpp [ 0:01] | verify --max-memory 4GiB --max-time 600 --threads 2 --report-filename verify.out -o nofail:malloc --relaxed-memory tso testcase.bc [ 0:01] compiling peterson_relaxed.cpp [ 0:01] loading bitcode … DiOS … LART … RR … constants … done [ 0:04] booting … done [ 0:04] states per second: 21.7184 [ 0:54] state count: 1069 [ 0:54] mips: 0.48 [ 0:54] relaxed memory: tso [ 1:01] [ 1:01] error found: yes [ 1:01] error trace: | [ 1:01] FAULT: peterson_relaxed.cpp:34: int main() [ 1:01] [0] FATAL: assertion failure in userspace [ 1:01] [ 1:01] active stack: [ 1:24] - symbol: void __dios::FaultBase::handler<__dios::Context>(_VM_Fault, _VM_Frame*, void (*)()) [ 1:25] location: /dios/sys/fault.hpp:118 [ 1:25] - symbol: __dios_fault [ 1:25] location: /dios/arch/divm/fault.c:12 [ 1:25] - symbol: __assert_fail [ 1:25] location: /dios/libc/_PDCLIB/assert.c:24 [ 1:25] - symbol: main [ 1:25] location: peterson_relaxed.cpp:34 [ 1:25] - symbol: __dios_start [ 1:25] location: /dios/libc/sys/start.cpp:94 [ 1:25] + divine sim --batch --skip-init --load-report verify.out [ 1:25] [ 1:28] ^ —————. —.— . . —.— . . .————— . . [ 1:28] ——— | | | | | | |\ | | | | [ 1:28] —(o)— | | | | | | | \ | |———— '————| [ 1:28] ——————— | | | \ / | | \| | | [ 1:28] ————————— —————' —'— ' —'— ' ' '————— ' [ 1:28] [ 1:28] Welcome to 'divine sim', an interactive debugger. Type 'help' to get started. [ 1:28] traced states: [ 1:36] ▶ state #11 [new] -- active threads: [0:0] 0:1 0:2 -- [ 1:36] T: FAULT: peterson_relaxed.cpp:34: int main() [ 1:53] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:53] # NOTE: $frame in __dios_fault [ 1:53] > backtrace [ 1:53] void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:53] __dios_fault at /dios/arch/divm/fault.c:12 [ 1:53] __assert_fail at /dios/libc/_PDCLIB/assert.c:24 [ 1:53] main at peterson_relaxed.cpp:34 [ 1:53] __dios_start at /dios/libc/sys/start.cpp:94 [ 1:53] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:54] # NOTE: $frame in __dios_fault