Skip to content

[litmus7] Assertion failed in "litmus/skel.ml" with affinity options on RISC-V #1682

@curious-whq

Description

@curious-whq

Dear Authors,

Sorry for interrupting you here. I'm encountering some puzzling errors while using litmus7 to compile RISC-V litmus tests. I would like to present this for your help:

Error Message:

exception File "litmus/skel.ml", line 233, characters 26-32: Assertion failed

Circumstances:
This error occurs when I use the following arguments:

litmus7 -carch RISCV -limit true -affinity incr1 -force_affinity true \
-mem direct -barrier userfence -detached false -thread std -launch changing \
-stride 0 -size_of_test 100 -number_of_run 10 -driver C \
-gcc riscv64-unknown-linux-gnu-gcc -ccopts -O2 -linkopt -static \
-avail 4 -alloc dynamic -contiguous false -noalign none \
./make_new_litmus/litmus_output/Wse_PodWW_Wse_RfLeave_PodRR_FrBack.litmus \
-o ./make_new_litmus/litmus_output_bayes/Wse_PodWW_Wse_RfLeave_PodRR_FrBack_0_1_0_0_0_0_2_0_0_0_0

The Input Litmus Test:

RISCV A
"Coe PodWW Coe RfLeave PodRR FrBack"
Generator=diyone7 (version 7.56)
Prefetch=0:x=F,0:y=W,1:y=F,1:x=W,2:y=F,2:x=T
Com=Co Co Fr
Orig=Coe PodWW Coe RfLeave PodRR FrBack
{
0:x6=x; 0:x8=y;
1:x6=y; 1:x8=x;
2:x6=y; 2:x8=x;
}
 P0          | P1          | P2          ;
 ori x5,x0,2 | ori x5,x0,2 | lw x5,0(x6) ;
 sw x5,0(x6) | sw x5,0(x6) | lw x7,0(x8) ;
 ori x7,x0,1 | ori x7,x0,1 |             ;
 sw x7,0(x8) | sw x7,0(x8) |             ;
exists (x=2 /\ y=2 /\ 2:x5=2 /\ 2:x7=0)

My Observation:
I noticed that if I remove the arguments -affinity incr1 -force_affinity true, the tool runs successfully. The exception is only triggered when these affinity settings are enabled.

I fail to understand the specific circumstances in skel.ml that lead to this assertion failure when affinity is involved. Thank you!

It would be sincerely appreciated if any comments or guidance could be provided. Thank you in advance for your time and great patience!

Yours sincerely,

Haoqi

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions