summaryrefslogtreecommitdiff
path: root/target-s390x/translate.c
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2015-06-03 23:09:48 +0200
committerAlexander Graf <agraf@suse.de>2015-06-05 01:37:59 +0200
commit3f4de6756cd87b508b37c7ffa93f7b827832c4eb (patch)
treed7f693d208a23f7b1c71bf6fd74425df53265750 /target-s390x/translate.c
parent54f007750978ffbb98ce933077e0d1741e0202b0 (diff)
downloadqemu-3f4de6756cd87b508b37c7ffa93f7b827832c4eb.tar.gz
target-s390x: implement TRANSLATE EXTENDED instruction
It is part of the basic zArchitecture instructions. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-s390x/translate.c')
-rw-r--r--target-s390x/translate.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/target-s390x/translate.c b/target-s390x/translate.c
index 003598df6b..c8ef24a08e 100644
--- a/target-s390x/translate.c
+++ b/target-s390x/translate.c
@@ -3787,6 +3787,15 @@ static ExitStatus op_tr(DisasContext *s, DisasOps *o)
return NO_EXIT;
}
+static ExitStatus op_tre(DisasContext *s, DisasOps *o)
+{
+ potential_page_fault(s);
+ gen_helper_tre(o->out, cpu_env, o->out, o->out2, o->in2);
+ return_low128(o->out2);
+ set_cc_static(s);
+ return NO_EXIT;
+}
+
static ExitStatus op_trt(DisasContext *s, DisasOps *o)
{
TCGv_i32 l = tcg_const_i32(get_field(s->fields, l1));