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.

Reply via email to