From 991041a4eb8895390d816375021dccfd12c81752 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 2 Apr 2013 14:14:23 -0700 Subject: [PATCH] tcg-ppc64: Cleanup i32 constants to tcg_out_cmp Nothing else in the call chain ensures that these constants don't have garbage in the high bits. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- tcg/ppc64/tcg-target.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tcg/ppc64/tcg-target.c b/tcg/ppc64/tcg-target.c index 84c757562b..70cbb86938 100644 --- a/tcg/ppc64/tcg-target.c +++ b/tcg/ppc64/tcg-target.c @@ -1059,6 +1059,11 @@ static void tcg_out_cmp(TCGContext *s, int cond, TCGArg arg1, TCGArg arg2, int imm; uint32_t op; + /* Simplify the comparisons below wrt CMPI. */ + if (type == TCG_TYPE_I32) { + arg2 = (int32_t)arg2; + } + switch (cond) { case TCG_COND_EQ: case TCG_COND_NE: