All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/9] VDIV/VMOD Implementation
@ 2022-04-20 19:40 Lucas Mateus Castro(alqotel)
  2022-04-20 19:40 ` [PATCH v3 1/9] qemu/int128: add int128_urshift Lucas Mateus Castro(alqotel)
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Lucas Mateus Castro(alqotel) @ 2022-04-20 19:40 UTC (permalink / raw)
  To: qemu-devel, qemu-ppc
  Cc: Lucas Mateus Castro (alqotel), danielhb413, richard.henderson, clg

From: "Lucas Mateus Castro (alqotel)" <lucas.araujo@eldorado.org.br>

This patch series is an implementation of the vector divide, vector
divide extended and vector modulo instructions from PowerISA 3.1

The first patch are Matheus' patch, used here since the divs256 and
divu256 functions use int128_urshift.

Patches without review: 2, 4, 5 and 8

v3 changes:
    - Divided DO_VDIV_VMOD macro in 4 different new macros
    - Turned TRANS_VDIV_VMOD into a function and the instructions are
      now implemented with the TRANS macro and do_vdiv_vmod function
    - Moved clz128 to int128.h

v2 changes:
    - Dropped int128_lshift patch
    - Added missing int_min/-1 check
    - Changed invalid division to a division by 1
    - Created new macro responsible for invalid division check
      (replacing DIV_VEC, REM_VEC and the check in dives_i32/diveu_i32)
    - Turned GVecGen3 array into single element

Lucas Mateus Castro (alqotel) (8):
  target/ppc: Implemented vector divide instructions
  target/ppc: Implemented vector divide quadword
  target/ppc: Implemented vector divide extended word
  host-utils: Implemented unsigned 256-by-128 division
  host-utils: Implemented signed 256-by-128 division
  target/ppc: Implemented remaining vector divide extended
  target/ppc: Implemented vector module word/doubleword
  target/ppc: Implemented vector module quadword

Matheus Ferst (1):
  qemu/int128: add int128_urshift

 include/qemu/host-utils.h           |   3 +
 include/qemu/int128.h               |  57 +++++++++
 target/ppc/helper.h                 |   8 ++
 target/ppc/insn32.decode            |  23 ++++
 target/ppc/int_helper.c             | 106 ++++++++++++++++
 target/ppc/translate/vmx-impl.c.inc | 155 ++++++++++++++++++++++++
 tests/unit/test-int128.c            |  32 +++++
 util/host-utils.c                   | 180 ++++++++++++++++++++++++++++
 8 files changed, 564 insertions(+)

-- 
2.31.1



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

end of thread, other threads:[~2022-05-12 19:54 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-20 19:40 [PATCH v3 0/9] VDIV/VMOD Implementation Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 1/9] qemu/int128: add int128_urshift Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 2/9] target/ppc: Implemented vector divide instructions Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 3/9] target/ppc: Implemented vector divide quadword Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 4/9] target/ppc: Implemented vector divide extended word Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 5/9] host-utils: Implemented unsigned 256-by-128 division Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 6/9] host-utils: Implemented signed " Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 7/9] target/ppc: Implemented remaining vector divide extended Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 8/9] target/ppc: Implemented vector module word/doubleword Lucas Mateus Castro(alqotel)
2022-04-20 19:40 ` [PATCH v3 9/9] target/ppc: Implemented vector module quadword Lucas Mateus Castro(alqotel)
2022-05-12 19:49 ` [PATCH v3 0/9] VDIV/VMOD Implementation Lucas Mateus Martins Araujo e Castro

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.