aboutsummaryrefslogtreecommitdiff
path: root/target/s390x/helper.c
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2020-09-28 14:27:15 +0200
committerCornelia Huck <cohuck@redhat.com>2020-10-02 13:52:49 +0200
commitb1feeb8760a1801a4681d3d198bc931f0ffddce9 (patch)
tree0a68541e36034ff1fd404ce47e46bdbaeb74c496 /target/s390x/helper.c
parent9131bd01eceb2458abf89796d52c0eb8c5d5dace (diff)
s390x/tcg: Implement MULTIPLY SINGLE (MSC, MSGC, MSGRKC, MSRKC)
We need new CC handling, determining the CC based on the intermediate result (64bit for MSC and MSRKC, 128bit for MSGC and MSGRKC). We want to store out2 ("low") after muls128 to r1, so add "wout_out2_r1". Signed-off-by: David Hildenbrand <david@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20200928122717.30586-8-david@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'target/s390x/helper.c')
-rw-r--r--target/s390x/helper.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/target/s390x/helper.c b/target/s390x/helper.c
index 9257d388ba..b877690845 100644
--- a/target/s390x/helper.c
+++ b/target/s390x/helper.c
@@ -430,6 +430,8 @@ const char *cc_name(enum cc_op cc_op)
[CC_OP_FLOGR] = "CC_OP_FLOGR",
[CC_OP_LCBB] = "CC_OP_LCBB",
[CC_OP_VC] = "CC_OP_VC",
+ [CC_OP_MULS_32] = "CC_OP_MULS_32",
+ [CC_OP_MULS_64] = "CC_OP_MULS_64",
};
return cc_names[cc_op];