qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 00/15] POWER9 TCG enablements - part1
@ 2016-07-25 17:20 Nikunj A Dadhania
  2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 01/15] target-ppc: Introduce Power9 family Nikunj A Dadhania
                   ` (14 more replies)
  0 siblings, 15 replies; 20+ messages in thread
From: Nikunj A Dadhania @ 2016-07-25 17:20 UTC (permalink / raw)
  To: qemu-ppc, david, rth; +Cc: qemu-devel, nikunj, bharata, aneesh.kumar

This set starts adding new instructions for POWER9 described in ISA3.0.

Patches:
  01-02: First two patches adds the required POWER9 cpu model and ISA defines.
  03-14: Adds following instructions:
             addpcis   : Add PC Immediate Shifted
             cmprb     : Compare Ranged Byte
             moduw     : Modulo Unsigned Word
             modsw     : Modulo Signed Word
             modud     : Modulo Unsigned Dword
             modsd     : Modulo Signed Dword
             cnttzd[.] : Count Trailing Zero Dword
             cnttzw[.] : Count Trailing Zero Word
             cmpeqb    : Compare Equal Byte
             setb      : Set Boolean
             maddld    : Multiply-Add Low Dword
             maddhd    : Multiply-Add High Dword
             maddhdu   : Multiply-Add High Dword Unsigned
     15: Adds support for the new Expanded Opcode (EO) added in ISA3.0

Changelog:
v2: 
* Implement branchless modulo instruction
* Change divd and divw to branchless implementation similar to modulo
  instructions
* Drop MMU_3_00 defines from the POWER9 define until radix support is
  added.

v1:
* addpcis - shift the immediate before adding
* cmprb logic without branches
* mod[su][wd]: use helpers
* cmpeqb - use bit magics in the helpers
* setb - bug fix and branchless
* maddld - discard multiple dword calculation as we need only lower 64-bit
* Expanded opcode - drop pad from 32-bit and free the third level indirect 
  table in unrealize

Aneesh Kumar K.V (1):
  target-ppc: Introduce Power9 family

Nikunj A Dadhania (12):
  target-ppc: Introduce POWER ISA 3.0 flag
  target-ppc: adding addpcis instruction
  target-ppc: add cmprb instruction
  target-ppc: add modulo word operations
  target-ppc: add modulo dword operations
  target-ppc: implement branch-less divw[o][.]
  target-ppc: implement branch-less divd[o][.]
  target-ppc: add cnttzw[.] instruction
  target-ppc: add cmpeqb instruction
  target-ppc: add maddld instruction
  target-ppc: add maddhd and maddhdu instruction
  target-ppc: introduce opc4 for Expanded Opcode

Sandipan Das (1):
  target-ppc: add cnttzd[.] instruction

Vivek Andrew Sha (1):
  target-ppc: add setb instruction

 hw/ppc/spapr_cpu_core.c     |   5 +
 target-ppc/cpu-models.c     |   5 +
 target-ppc/cpu-models.h     |   1 +
 target-ppc/cpu-qom.h        |   1 +
 target-ppc/cpu.h            |   5 +-
 target-ppc/helper.h         |   3 +
 target-ppc/int_helper.c     |  32 ++++
 target-ppc/mmu_helper.c     |   2 +-
 target-ppc/translate.c      | 432 +++++++++++++++++++++++++++++++++++++-------
 target-ppc/translate_init.c | 212 ++++++++++++++++++----
 10 files changed, 594 insertions(+), 104 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2016-07-26  1:52 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-25 17:20 [Qemu-devel] [PATCH v3 00/15] POWER9 TCG enablements - part1 Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 01/15] target-ppc: Introduce Power9 family Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 02/15] target-ppc: Introduce POWER ISA 3.0 flag Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 03/15] target-ppc: adding addpcis instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 04/15] target-ppc: add cmprb instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 05/15] target-ppc: add modulo word operations Nikunj A Dadhania
2016-07-26  0:09   ` Richard Henderson
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 06/15] target-ppc: add modulo dword operations Nikunj A Dadhania
2016-07-26  0:10   ` Richard Henderson
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 07/15] target-ppc: implement branch-less divw[o][.] Nikunj A Dadhania
2016-07-26  0:17   ` Richard Henderson
2016-07-26  1:52     ` Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 08/15] target-ppc: implement branch-less divd[o][.] Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 09/15] target-ppc: add cnttzd[.] instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 10/15] target-ppc: add cnttzw[.] instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 11/15] target-ppc: add cmpeqb instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 12/15] target-ppc: add setb instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 13/15] target-ppc: add maddld instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 14/15] target-ppc: add maddhd and maddhdu instruction Nikunj A Dadhania
2016-07-25 17:20 ` [Qemu-devel] [PATCH v3 15/15] target-ppc: introduce opc4 for Expanded Opcode Nikunj A Dadhania

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).