https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112447
--- Comment #6 from Vineet Gupta <vineetg at gcc dot gnu.org> ---
I have debugged this by single stepped in qemu
when the test fails (first loop for offset 0, iteration 8)
The last VSETVLI is this one,
0x10a3e 0d107057 vsetvli zero,zero,e32,m2,ta,ma
0x10a42 j 0x10666
We eventually hit a VMV.v.x. which creates invalid pattern due to e32.
(gdb) info reg vtype
vtype 0xd1 209 # SEW = 010’b / e32, LMUL = 001’b / m2
(gdb) info reg vl
vl 0x8 8
(gdb) info reg a0
a0 0x41 65
vmv.v.x v2,a0
(gdb) info reg v2
v2 {q = {0x41000000410000004100000041}
(gdb) info reg v3
v2 {q = {0x41000000410000004100000041}