Steve Ellcey <sell...@mips.com> writes:
> 2014-01-15  Andrew Pinski <apin...@cavium.com>
>           Steve Ellcey  <sell...@mips.com>
>
>       PR target/59462
>       * config/mips/mips.c (mips_print_operand): Check operand mode instead
>       of operator mode.
>
>
> diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
> index 617391c..60cb8ee 100644
> --- a/gcc/config/mips/mips.c
> +++ b/gcc/config/mips/mips.c
> @@ -8184,7 +8184,7 @@ mips_print_operand (FILE *file, rtx op, int letter)
>      case 't':
>        {
>       int truth = (code == NE) == (letter == 'T');
> -     fputc ("zfnt"[truth * 2 + (GET_MODE (op) == CCmode)], file);
> +     fputc ("zfnt"[truth * 2 + (GET_MODE (XEXP (op, 0)) == CCmode)], file);
>        }
>        break;
>  

I think it'd be more direct to check the register class, since we used
to store CCmode in GPRs too.  I.e. ST_REGNO_P (XEXP (op, 0)).

OK with that change, thanks.  Please backport to 4.8 too.

Richard

Reply via email to