mbox series

[v3,00/13] tcg/s390x: misc patches

Message ID 20221202065200.224537-1-richard.henderson@linaro.org
Headers show
Series tcg/s390x: misc patches | expand

Message

Richard Henderson Dec. 2, 2022, 6:51 a.m. UTC
Based-on: 20221202053958.223890-1-richard.henderson@linaro.org
("[PATCH for-8.0 v3 00/34] tcg misc patches")

This contains two patches that exercise the register pair patches
within the "tcg misc patches" patch set.  Then a couple of misc
cleanups, then support for the MIE2, MIE3, and POPCOUNT features.

One thing to play with: the middle-end can expand ctz based on
either clz or ctpop, and for z16 we now have both.  I've got an
idea that for s390x the most general case of the expansion would
be better with clz.  Which leads me to wonder if there's a better
way to manage such expansions, but I haven't thought about it
too much yet.


r~


Richard Henderson (13):
  tcg/s390x: Use register pair allocation for div and mulu2
  tcg/s390x: Remove TCG_REG_TB
  tcg/s390x: Use LARL+AGHI for odd addresses
  tcg/s390x: Distinguish RRF-a and RRF-c formats
  tcg/s390x: Distinguish RIE formats
  tcg/s390x: Support MIE2 multiply single instructions
  tcg/s390x: Support MIE2 MGRK instruction
  tcg/s390x: Support MIE3 logical operations
  tcg/s390x: Create tgen_cmp2 to simplify movcond
  tcg/s390x: Generalize movcond implementation
  tcg/s390x: Support SELGR instruction in movcond
  tcg/s390x: Use tgen_movcond_int in tgen_clz
  tcg/s390x: Implement ctpop operation

 tcg/s390x/tcg-target-con-set.h |  11 +-
 tcg/s390x/tcg-target-con-str.h |   8 +-
 tcg/s390x/tcg-target.h         |  35 +-
 tcg/s390x/tcg-target.c.inc     | 663 ++++++++++++++++++++-------------
 4 files changed, 430 insertions(+), 287 deletions(-)