All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v2 0/7] VSX MMA Implementation
@ 2022-05-06 12:18 Lucas Mateus Castro(alqotel)
  2022-05-06 12:18 ` [RFC PATCH v2 1/7] target/ppc: Implement xxm[tf]acc and xxsetaccz Lucas Mateus Castro(alqotel)
                   ` (6 more replies)
  0 siblings, 7 replies; 21+ messages in thread
From: Lucas Mateus Castro(alqotel) @ 2022-05-06 12:18 UTC (permalink / raw)
  To: qemu-ppc
  Cc: richard.henderson, Joel Stanley, Lucas Mateus Castro (alqotel),
	Alex Bennée, Daniel Henrique Barboza, qemu-devel,
	David Gibson, Greg Kurz

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

This patch series is an RFC of the Matrix-Multiply Assist (MMA)
instructions implementation from the PowerISA 3.1

These and the VDIV/VMOD implementation are the last new PowerISA 3.1
instructions left to be implemented.

The XVFGER instructions accumulate the exception status and at the end
set the FPSCR and take a Program interrupt on a trap-enabled exception,
but as the exception functions are currently set up in
target/ppc/fpu_helper.c a call to set a FPSCR bit could raise an
exception before all bits could be set and it doesn't set the invalid
operation bits.

Victor is working on a patch series to fix the FPSCR.FI bit that will
reorganize do_float_check_status (in a way that would solve the
aforementioned problem), so for now I sent thin RFC without trying to
solve that problem.

v2 changes:
    - Changed VSXGER, VSXGER16 and XVIGER macros to functions
    - Set rounding mode in floating-point instructions based on RN
      before operations
    - Separated accumulate and with saturations instructions in
      different helpers
    - Used FIELD, FIELD_EX32 and FIELD_DP32 for packing/unpacking masks

Lucas Mateus Castro (alqotel) (7):
  target/ppc: Implement xxm[tf]acc and xxsetaccz
  target/ppc: Implemented xvi*ger* instructions
  target/ppc: Implemented pmxvi*ger* instructions
  target/ppc: Implemented xvf*ger*
  target/ppc: Implemented xvf16ger*
  target/ppc: Implemented pmxvf*ger*
  target/ppc: Implemented [pm]xvbf16ger2*

 include/fpu/softfloat.h             |   9 +
 target/ppc/cpu.h                    |  13 ++
 target/ppc/fpu_helper.c             | 303 ++++++++++++++++++++++++++++
 target/ppc/helper.h                 |  29 +++
 target/ppc/insn32.decode            |  49 +++++
 target/ppc/insn64.decode            |  79 ++++++++
 target/ppc/int_helper.c             | 130 ++++++++++++
 target/ppc/internal.h               |  15 ++
 target/ppc/translate/vsx-impl.c.inc | 145 +++++++++++++
 9 files changed, 772 insertions(+)

-- 
2.31.1



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

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

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-06 12:18 [RFC PATCH v2 0/7] VSX MMA Implementation Lucas Mateus Castro(alqotel)
2022-05-06 12:18 ` [RFC PATCH v2 1/7] target/ppc: Implement xxm[tf]acc and xxsetaccz Lucas Mateus Castro(alqotel)
2022-05-08  3:28   ` Richard Henderson
2022-05-06 12:18 ` [RFC PATCH v2 2/7] target/ppc: Implemented xvi*ger* instructions Lucas Mateus Castro(alqotel)
2022-05-08  3:41   ` Richard Henderson
2022-05-10 17:28     ` Lucas Mateus Martins Araujo e Castro
2022-05-11  0:00       ` Richard Henderson
2022-05-06 12:18 ` [RFC PATCH v2 3/7] target/ppc: Implemented pmxvi*ger* instructions Lucas Mateus Castro(alqotel)
2022-05-08  3:48   ` Richard Henderson
2022-05-12 17:38     ` Lucas Mateus Martins Araujo e Castro
2022-05-06 12:18 ` [RFC PATCH v2 4/7] target/ppc: Implemented xvf*ger* Lucas Mateus Castro(alqotel)
2022-05-08  4:03   ` Richard Henderson
2022-05-09 11:33     ` Lucas Mateus Martins Araujo e Castro
2022-05-06 12:18 ` [RFC PATCH v2 5/7] target/ppc: Implemented xvf16ger* Lucas Mateus Castro(alqotel)
2022-05-08  4:24   ` Richard Henderson
2022-05-10 14:47     ` Lucas Mateus Martins Araujo e Castro
2022-05-06 12:18 ` [RFC PATCH v2 6/7] target/ppc: Implemented pmxvf*ger* Lucas Mateus Castro(alqotel)
2022-05-08  4:25   ` Richard Henderson
2022-05-06 12:18 ` [RFC PATCH v2 7/7] target/ppc: Implemented [pm]xvbf16ger2* Lucas Mateus Castro(alqotel)
2022-05-08  4:27   ` Richard Henderson
2022-05-10 17:25     ` 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.