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(-)
--
2.34.1