s390x/tcg: Implement Miscellaneous-Instruction-Extensions Facility 3 for the s390x
Goal
The emulation part of QEMU (currently TCG) for the s390x architecture lacks some facilities that were introduced with Z15 and used by GCC and LLVM with -march=z15. The goal of this reuquest is to implement the Miscellaneous-Instruction-Extensions Facility 3 for the s390x tcg frontend so that s390x user and softmmu targets will be able to handle code containing instructions of that facility.
Technical details
- Implement the TCG variant for the Miscellaneous-Instruction-Extensions Facility 3 containing
- AND WITH COMPLEMENT (NCRK, NCGRK)
- MOVE RIGHT TO LEFT
- NAND (NNRK, NNGRK)
- NOT EXCLUSIVE OR (NXRK, NXGRK)
- NOR (NORK, NOGRK)
- OR WITH COMPLEMENT (OCRK, OCGRK)
- SELECT (SEL, SELGR)
- SELECT HIGH (SELFHR)
- Enable S390_FEAT_MISC_INSTRUCTION_EXT3 in the CPU model for the QEMU_MAX model
- Add testcases for the TCG implementation.
Additional information
Edited by Christian Borntraeger