qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v8 00/10] riscv: set vstart_eq_zero on mark_vs_dirty


From: Daniel Henrique Barboza
Subject: Re: [PATCH v8 00/10] riscv: set vstart_eq_zero on mark_vs_dirty
Date: Sat, 9 Mar 2024 17:24:23 -0300
User-agent: Mozilla Thunderbird



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~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]