Message ID | 20240308215402.117405-1-dbarboza@ventanamicro.com (mailing list archive) |
---|---|
Headers | show |
Series | riscv: set vstart_eq_zero on mark_vs_dirty | expand |
On 3/8/24 11:53, Daniel Henrique Barboza wrote: > - patch 7 (patch 3 from v7): do not remove brconds from scalar move > insns > > trans_vmv_s_x() and trans_vfmv_s_f() does not have a helper that will > handle vstart >= vl for them, so they need their brcond. > > - patches 4 and 5 from v7: dropped. We're not removing all brconds, so > we can't get rid of cpu_vstart and cpu_vl. Not important for the bug fix, but for future cleanup: (1) Use movcond to for these moves instead of brcond. (2) Use explicit load/store in these two places where cpu_vstart and cpu_vl are still in use. (3) Now there are no tcg globals that are modified by the vector helpers, which means that they can all be marked TCG_CALL_NO_WG, and any that never exit via exception may be marked TCG_CALL_NO_RWG. This may reduce register allocator spill/fill across the affected helpers. r~
On 3/9/24 17:14, Richard Henderson wrote: > On 3/8/24 11:53, Daniel Henrique Barboza wrote: >> - patch 7 (patch 3 from v7): do not remove brconds from scalar move >> insns >> >> trans_vmv_s_x() and trans_vfmv_s_f() does not have a helper that will >> handle vstart >= vl for them, so they need their brcond. >> >> - patches 4 and 5 from v7: dropped. We're not removing all brconds, so >> we can't get rid of cpu_vstart and cpu_vl. > > Not important for the bug fix, but for future cleanup: > > (1) Use movcond to for these moves instead of brcond. > > (2) Use explicit load/store in these two places where cpu_vstart and cpu_vl are still in use. > > (3) Now there are no tcg globals that are modified by the vector helpers, which means that they can all be marked TCG_CALL_NO_WG, and any that never exit via exception may be marked TCG_CALL_NO_RWG. This may reduce register allocator spill/fill across the affected helpers. Nice. I'll mark it as a TODO to get it done after we get this series merged. Thanks, Daniel > > > r~