[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 0/4] target/s390x: Improve carry computation
From: |
Richard Henderson |
Subject: |
[PATCH v2 0/4] target/s390x: Improve carry computation |
Date: |
Tue, 20 Oct 2020 11:55:29 -0700 |
While testing the float128_muladd changes for s390x host,
emulating under x86_64 of course, I noticed that the code
we generate for strings of ALCGR and SLBGR is pretty awful.
I realized that we were missing a trick: the output cc is
based only on the output (result and carry) and so we don't
need to save the inputs. And once we do that, we can use
the output carry as a direct input to the next insn.
Changes for v2:
* Add a few more comments, and enhance the patch descriptions.
r~
Richard Henderson (4):
target/s390x: Improve cc computation for ADD LOGICAL
target/s390x: Improve ADD LOGICAL WITH CARRY
target/s390x: Improve cc computation for SUBTRACT LOGICAL
target/s390x: Improve SUB LOGICAL WITH BORROW
target/s390x/internal.h | 11 +-
target/s390x/cc_helper.c | 123 +++-------------
target/s390x/helper.c | 10 +-
target/s390x/translate.c | 289 ++++++++++++++++++++-----------------
target/s390x/insn-data.def | 76 +++++-----
5 files changed, 216 insertions(+), 293 deletions(-)
--
2.25.1
- [PATCH v2 0/4] target/s390x: Improve carry computation,
Richard Henderson <=