From: Paolo Bonzini Date: Thu, 8 Jan 2015 17:01:08 +0000 (+0100) Subject: target-s390x: support OC and NC in the EX instruction X-Git-Tag: v2.3.0-rc0~77^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8cf02f93dc37bc3de30dfb74eb0e904d1700dbf6;p=thirdparty%2Fqemu.git target-s390x: support OC and NC in the EX instruction This is needed to run the GMP testsuite. Reported-by: Torbjorn Granlund Tested-by: Torbjorn Granlund Signed-off-by: Paolo Bonzini Signed-off-by: Richard Henderson --- diff --git a/target-s390x/mem_helper.c b/target-s390x/mem_helper.c index 53bb629fc34..d67b345ad1c 100644 --- a/target-s390x/mem_helper.c +++ b/target-s390x/mem_helper.c @@ -490,10 +490,18 @@ uint32_t HELPER(ex)(CPUS390XState *env, uint32_t cc, uint64_t v1, helper_mvc(env, l, get_address(env, 0, b1, d1), get_address(env, 0, b2, d2)); break; + case 0x400: + cc = helper_nc(env, l, get_address(env, 0, b1, d1), + get_address(env, 0, b2, d2)); + break; case 0x500: cc = helper_clc(env, l, get_address(env, 0, b1, d1), get_address(env, 0, b2, d2)); break; + case 0x600: + cc = helper_oc(env, l, get_address(env, 0, b1, d1), + get_address(env, 0, b2, d2)); + break; case 0x700: cc = helper_xc(env, l, get_address(env, 0, b1, d1), get_address(env, 0, b2, d2));