This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: 3.0-pre crashes on i686 code


Jan Hubicka wrote:
> 
> Looking at the crash, it seems to be latent bug.  Can you try whether following patch fix your testcase?
> Thu May 31 18:04:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
>         * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
> Index: config/i386/i386.c
> ===================================================================
> RCS file: /cvs/gcc/egcs/gcc/config/i386/i386.c,v
> retrieving revision 1.261
> diff -c -3 -p -r1.261 i386.c
> *** i386.c      2001/05/24 13:59:09     1.261
> --- i386.c      2001/05/31 16:04:45
> *************** ix86_expand_int_movcc (operands)
> *** 6575,6580 ****
> --- 6575,6583 ----
>         emit_move_insn (tmp, operands[2]);
>         operands[2] = tmp;
>       }
> +   if (! register_operand (operands[2], VOIDmode)
> +       && ! register_operand (operands[3], VOIDmode))
> +     operands[2] = force_reg (GET_MODE (operands[0]), operands[2]);
> 
>     emit_insn (compare_seq);
>     emit_insn (gen_rtx_SET (VOIDmode, operands[0],

Yes, it compiles now.

Thanks,

Teemu


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]