Closed sunshaoce closed 11 months ago
Compiler is not able to access bit-represent address (Address should be byte orient).
Here, for VLEN = 128bit, each mask you are using for e32m1 here is 4bits, so you end up with accessing bit field memory.
If you specify SPIKE --varch=vlen:256, your program will work correctly since when for VLEN = 256, each e32m1 mask is 8bit (1byte).
If you want to run on VLEN = 128, I suggest you revise the code as follows: https://godbolt.org/z/59Yccjq8E
I understand the RVV mask is quite confusing but I didn't have an immediate solution for that.
Thank you very much, the problem has been solved!
I got (elf-clang&elf-gcc spike+pk):
It should be:
What is the problem?