diff --git a/qemu/tcg/optimize.c b/qemu/tcg/optimize.c index 51c20057..e0ffbfdd 100644 --- a/qemu/tcg/optimize.c +++ b/qemu/tcg/optimize.c @@ -352,9 +352,13 @@ static TCGArg do_constant_folding_2(TCGOpcode op, TCGArg x, TCGArg y) return (int32_t)x; case INDEX_op_extu_i32_i64: + case INDEX_op_extrl_i64_i32: case INDEX_op_ext32u_i64: return (uint32_t)x; + case INDEX_op_extrh_i64_i32: + return (uint64_t)x >> 32; + case INDEX_op_muluh_i32: return ((uint64_t)(uint32_t)x * (uint32_t)y) >> 32; case INDEX_op_mulsh_i32: