summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-11-10 18:12:09 +1000
committerRichard Henderson <richard.henderson@linaro.org>2023-02-04 06:19:43 -1000
commitb5deff74d1b1cb33b65a6c8db44fc87e972b53f7 (patch)
treebb685158e73b5acd1703294e03b9f5a65eaad64d
parent1fcd84fa0d610c1215cced54e64046a47148a388 (diff)
downloadfocaccia-qemu-b5deff74d1b1cb33b65a6c8db44fc87e972b53f7.tar.gz
focaccia-qemu-b5deff74d1b1cb33b65a6c8db44fc87e972b53f7.zip
target/s390x: Implement CC_OP_NZ in gen_op_calc_cc
This case is trivial to implement inline.

Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r--target/s390x/tcg/translate.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/target/s390x/tcg/translate.c b/target/s390x/tcg/translate.c
index 9ea28b3e52..ac5bd98f04 100644
--- a/target/s390x/tcg/translate.c
+++ b/target/s390x/tcg/translate.c
@@ -625,6 +625,9 @@ static void gen_op_calc_cc(DisasContext *s)
         /* env->cc_op already is the cc value */
         break;
     case CC_OP_NZ:
+        tcg_gen_setcondi_i64(TCG_COND_NE, cc_dst, cc_dst, 0);
+        tcg_gen_extrl_i64_i32(cc_op, cc_dst);
+        break;
     case CC_OP_ABS_64:
     case CC_OP_NABS_64:
     case CC_OP_ABS_32: