[ 0:01] | load /home/xrockai/src/divine/nightly/test/refine/pointers/shatter-c.c shatter-c.c [ 0:01] | expect --result error --location shatter-c.c:46 [ 0:01] | expect --trace FAULT: --trace-count 1 [ 0:01] | cc -o testcase.bc shatter-c.c [ 0:01] | refine -o nofail:malloc --refinement pointers --output testcase.bc testcase.bc [ 0:01] | verify --max-memory 4GiB --max-time 600 --threads 2 --report-filename verify.out --solver smtlib:z3 -o nofail:malloc --lamp pointers --symbolic testcase.bc [ 0:01] compiling shatter-c.c [ 0:01] loading bitcode … DiOS … LART … RR … constants … done [ 1:08] booting … done [ 1:08] states per second: 3.74915 [ 1:14] state count: 22 [ 1:14] mips: 0.21 [ 1:14] symbolic: 1 [ 1:21] [ 1:21] error found: yes [ 1:21] error trace: | [ 1:21] ASSUME (not (= var_1 #x0000000000000000)) [ 1:21] ASSUME (not (= var_2 #x0000000000000000)) [ 1:21] ASSUME (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) [ 1:21] ASSUME (not (= var_3 #x0000000000000000)) [ 1:21] ASSUME (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) [ 1:21] ASSUME (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) [ 1:21] ASSUME (not (= var_4 #x0000000000000000)) [ 1:21] ASSUME (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) [ 1:21] ASSUME (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) [ 1:21] ASSUME (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) [ 1:21] ASSUME (and (and (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_3) (bvule (bvadd var_3 #x0000000000000001) var_4))) [ 1:21] ASSUME (and (and (and (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_3) (bvule (bvadd var_3 #x0000000000000001) var_4))) (bvult var_1 var_3)) [ 1:21] ASSUME (and (and (and (and (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_3) (bvule (bvadd var_3 #x0000000000000001) var_4))) (bvult var_1 var_3)) (bvult var_3 var_2)) [ 1:21] ASSUME (and (and (and (and (and (and (and (and (and (and (and (and (not (= var_4 #x0000000000000000)) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_4))) (and (and (and (and (and (and (and (not (= var_3 #x0000000000000000)) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_2) (bvule (bvadd var_2 #x0000000000000001) var_3))) (and (and (and (and (not (= var_2 #x0000000000000000)) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_2 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_2))) (and (not (= var_1 #x0000000000000000)) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_3 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_3))) (bvult var_2 (bvsub #xffffffffffffffff #x0000000000000001)))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_1 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_1) (bvule (bvadd var_1 #x0000000000000001) var_4))) (bvult var_4 (bvsub #xffffffffffffffff #x0000000000000001))) (bvult var_3 (bvsub #xffffffffffffffff #x0000000000000001))) (or (bvule (bvadd var_4 #x0000000000000001) var_3) (bvule (bvadd var_3 #x0000000000000001) var_4))) (bvult var_1 var_3)) (bvult var_3 var_2)) (bvult var_2 var_4)) [ 1:21] FAULT: unsupported abstract operation: [ 1:21] [0] FATAL: not implemented in userspace [ 1:21] [ 1:21] active stack: [ 1:21] - symbol: void __dios::FaultBase::handler<__dios::Context>(_VM_Fault, _VM_Frame*, void (*)()) [ 1:22] location: /dios/sys/fault.hpp:118 [ 1:22] - symbol: __dios_fault.14 [ 1:22] location: /dios/arch/divm/fault.c:12 [ 1:22] - symbol: __lamp_ult [ 1:22] location: /dios/lava/base.hpp:215 [ 1:22] - symbol: __lart_abstract.ult.cmp.i8* [ 1:22] location: (unknown location) [ 1:22] - symbol: main [ 1:22] location: shatter-c.c:46 [ 1:22] - symbol: __dios_start [ 1:22] location: /dios/libc/sys/start.cpp:94 [ 1:22] + divine sim --batch --skip-init --load-report verify.out [ 1:22] [ 1:31] ^ —————. —.— . . —.— . . .————— . . [ 1:31] ——— | | | | | | |\ | | | | [ 1:31] —(o)— | | | | | | | \ | |———— '————| [ 1:31] ——————— | | | \ / | | \| | | [ 1:31] ————————— —————' —'— ' —'— ' ' '————— ' [ 1:31] [ 1:31] Welcome to 'divine sim', an interactive debugger. Type 'help' to get started. [ 1:31] traced states: [ 1:34] ▶ state #17 [new] -- active threads: [0:0] -- [ 1:34] T: FAULT: unsupported abstract operation: [ 1:34] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:34] # NOTE: $frame in __dios_fault.14 [ 1:34] > backtrace [ 1:34] void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:34] __dios_fault.14 at /dios/arch/divm/fault.c:12 [ 1:34] __lamp_ult at /dios/lava/base.hpp:215 [ 1:34] __lart_abstract.ult.cmp.i8* at (unknown location) [ 1:34] main at shatter-c.c:46 [ 1:34] __dios_start at /dios/libc/sys/start.cpp:94 [ 1:34] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 1:35] # NOTE: $frame in __dios_fault.14