|
From: | Richard Henderson |
Subject: | Re: [PATCH v8 00/10] riscv: set vstart_eq_zero on mark_vs_dirty |
Date: | Sat, 9 Mar 2024 10:14:26 -1000 |
User-agent: | Mozilla Thunderbird |
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~
[Prev in Thread] | Current Thread | [Next in Thread] |