qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH for-9.0 v13 0/8] riscv: set vstart_eq_zero on vector insns
@ 2024-03-13 19:30 Daniel Henrique Barboza
  2024-03-13 19:30 ` [PATCH for-9.0 v13 1/8] target/riscv/vector_helper.c: set vstart = 0 in GEN_VEXT_VSLIDEUP_VX() Daniel Henrique Barboza
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Daniel Henrique Barboza @ 2024-03-13 19:30 UTC (permalink / raw)
  To: qemu-devel
  Cc: qemu-riscv, alistair.francis, bmeng, liwei1518, zhiwei_liu,
	palmer, richard.henderson, philmd, Daniel Henrique Barboza

Hi,

In this new version I added a new patch (patch 4) to handle the case
pointed out by LIU Zhiwei in v12. I decided to do it in separate since
it's a distinct case from what we're dealing with in patch 5.

No other changes made. Series based on master.

Patches missing acks: patch 4.

Changes from v12:
- patch 4 (new):
  - move vstart >= maxsz cond to the vmvr_v helper
  - clear vstart when vstart >= maxsz
- v12 link: https://lore.kernel.org/qemu-riscv/20240311180821.250469-1-dbarboza@ventanamicro.com/

Daniel Henrique Barboza (7):
  target/riscv/vector_helper.c: set vstart = 0 in GEN_VEXT_VSLIDEUP_VX()
  trans_rvv.c.inc: set vstart = 0 in int scalar move insns
  target/riscv/vector_helpers: do early exit when vstart >= vl
  target/riscv: always clear vstart in whole vec move insns
  target/riscv: remove 'over' brconds from vector trans
  trans_rvv.c.inc: remove redundant mark_vs_dirty() calls
  target/riscv/vector_helper.c: optimize loops in ldst helpers

Ivan Klokov (1):
  target/riscv: enable 'vstart_eq_zero' in the end of insns

 target/riscv/insn_trans/trans_rvbf16.c.inc |  18 +-
 target/riscv/insn_trans/trans_rvv.c.inc    | 198 +++++----------------
 target/riscv/insn_trans/trans_rvvk.c.inc   |  30 +---
 target/riscv/translate.c                   |   6 +
 target/riscv/vcrypto_helper.c              |  32 ++++
 target/riscv/vector_helper.c               | 102 ++++++++++-
 target/riscv/vector_internals.c            |   4 +
 target/riscv/vector_internals.h            |   9 +
 8 files changed, 207 insertions(+), 192 deletions(-)

-- 
2.43.2



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-03-13 21:40 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-13 19:30 [PATCH for-9.0 v13 0/8] riscv: set vstart_eq_zero on vector insns Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 1/8] target/riscv/vector_helper.c: set vstart = 0 in GEN_VEXT_VSLIDEUP_VX() Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 2/8] trans_rvv.c.inc: set vstart = 0 in int scalar move insns Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 3/8] target/riscv/vector_helpers: do early exit when vstart >= vl Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 4/8] target/riscv: always clear vstart in whole vec move insns Daniel Henrique Barboza
2024-03-13 21:16   ` Richard Henderson
2024-03-13 21:39     ` Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 5/8] target/riscv: remove 'over' brconds from vector trans Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 6/8] trans_rvv.c.inc: remove redundant mark_vs_dirty() calls Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 7/8] target/riscv: enable 'vstart_eq_zero' in the end of insns Daniel Henrique Barboza
2024-03-13 19:30 ` [PATCH for-9.0 v13 8/8] target/riscv/vector_helper.c: optimize loops in ldst helpers Daniel Henrique Barboza

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).