On Thu, Apr 04, 2013 at 05:56:18PM -0500, Richard Henderson wrote:
> Nothing else in the call chain ensures that these
> constants don't have garbage in the high bits.
> 
> Signed-off-by: Richard Henderson <r...@twiddle.net>
> ---
>  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 edb2b6c..27d5ea5 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:

Reviewed-by: Aurelien Jarno <aurel...@aurel32.net>

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurel...@aurel32.net                 http://www.aurel32.net

Reply via email to