https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117283
--- Comment #5 from Yibo He <yibohe at pku dot edu.cn> --- (In reply to xu...@eswincomputing.com from comment #4) > (In reply to xu...@eswincomputing.com from comment #3) > > (In reply to Yibo He from comment #1) > > > The data initialization is long, because I find that this bug is triggered > > > when long data input. If anyone has a better submission format for code > > > like > > > this, please let me know. > > > > Could you please provide a more detailed description? Have you analyzed > > which specific part of the assembly code caused the error? > > I think you should use __riscv_vssseg7e32_v_i32m1x7 instead of > __riscv_vsseg7e32_v_i32m1x7. > > __riscv_vsseg7e32_v_i32m1x7(ptr_d, vb, vl); > > -> > > __riscv_vssseg7e32_v_i32m1x7(ptr_d,1, vb, vl); Thanks for your reply. The `__riscv_vssseg7e32_v_i32m1x7(ptr_d, 1, vb, vl);` is OK. However, I think strided store with `ptrdiff_t=1` should be equivalent to unit-stride store, and the difference of the above code indicates a potential bug. I will check the assembly code soon.