https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116086

--- Comment #5 from Patrick O'Neill <patrick at rivosinc dot com> ---
Ah yep that was it :)

Reduced testcase:
long a;
long b;
long c[80];
int main() {
  for (int d = 0; d < 16; d++)
    c[d] = a;
  for (int d = 16; d < 80; d++)
    c[d] = c[d - 2];
  for (int d = 0; d < 80; d += 8)
    b += c[d];
  __builtin_printf("%ld\n", b);
}

Commands:
> /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/riscv64-unknown-linux-gnu-gcc
>  -O3 -march=rv64gcv -mrvv-max-lmul=m2 red.c -o user-config.out
> QEMU_CPU=rv64,vlen=256,rvv_ta_all_1s=true,rvv_ma_all_1s=true,v=true,vext_spec=v1.0,zve32f=true,zve64f=true
>  /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/qemu-riscv64 
> user-config.out
-8

> /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/riscv64-unknown-linux-gnu-gcc
>  -O2 -march=rv64gcv -mrvv-max-lmul=m2 red.c -o user-config.out
> QEMU_CPU=rv64,vlen=256,rvv_ta_all_1s=true,rvv_ma_all_1s=true,v=true,vext_spec=v1.0,zve32f=true,zve64f=true
>  /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/qemu-riscv64 
> user-config.out
0

Reply via email to