From: Richard Henderson Date: Mon, 11 Sep 2017 19:50:42 +0000 (-0700) Subject: tcg: Fix types in tcg_regset_{set,reset}_reg X-Git-Tag: qemu-xen-4.11.0-rc1~169^2~5 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=80a8b9a910e14d4a1937f70dce944891990f3441;p=qemu-xen.git tcg: Fix types in tcg_regset_{set,reset}_reg There was a potential problem here with an ILP32 host with 64 host registers. Signed-off-by: Richard Henderson --- diff --git a/tcg/tcg.h b/tcg/tcg.h index 50dfd7c77f..25662c36d4 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -186,9 +186,9 @@ typedef enum TCGOpcode { NB_OPS, } TCGOpcode; -#define tcg_regset_set_reg(d, r) (d) |= 1L << (r) -#define tcg_regset_reset_reg(d, r) (d) &= ~(1L << (r)) -#define tcg_regset_test_reg(d, r) (((d) >> (r)) & 1) +#define tcg_regset_set_reg(d, r) ((d) |= (TCGRegSet)1 << (r)) +#define tcg_regset_reset_reg(d, r) ((d) &= ~((TCGRegSet)1 << (r))) +#define tcg_regset_test_reg(d, r) (((d) >> (r)) & 1) #ifndef TCG_TARGET_INSN_UNIT_SIZE # error "Missing TCG_TARGET_INSN_UNIT_SIZE"