On 19/5/26 18:22, James Hilliard wrote:
VMM0 multiplies MPL[0] by rs, adds rt and the queued P[0] partial
product, returns the low result, and feeds that result back into MPL[0].
It sets MPL[1] to zero and clears partial products.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: James Hilliard <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>

---
Changes v8 -> v9:
   - Reuse octeon_zero_partial_product_state() for partial-product
     clearing.

Changes v2 -> v3:
   - Split VMM0 out of the combined Octeon arithmetic and memory
     instruction patch.  (requested by Richard Henderson)

Changes v3 -> v4:
   - Document the Octeon3 chain update behavior.

Changes v5 -> v6:
   - Zero MPL1 after checking the CN71XX VMM0 definition and add
     MPL1 smoke coverage.

Changes v7 -> v8:
   - Use Richard Henderson's v7.5 inline TCG translator, which keeps
     only the architecturally defined MPL1 and partial-product clearing.
---
  target/mips/tcg/octeon.decode      |  1 +
  target/mips/tcg/octeon_translate.c | 16 ++++++++++++++++
  2 files changed, 17 insertions(+)

Tested-by: Philippe Mathieu-Daudé <[email protected]>

Reply via email to