PATCH: PR target/31344: Bootstrap is broken on i[345]86-linux
Ian Lance Taylor
iant@google.com
Mon Apr 30 22:42:00 GMT 2007
"H. J. Lu" <hjl@lucon.org> writes:
> On Sun, Apr 29, 2007 at 05:14:05PM -0700, H. J. Lu wrote:
> >
> > emit_single_push_insn calls emit_move_insn to push dfp. emit_move_insn
> > calls emit_move_via_integer to push dfp via integer, which generates
> >
> > (set (reg/f:SI 67) (pre_dec:SI (reg/f:SI 7 sp)))
> >
> > It leads to an unrecognizable insn error. I am not sure if
> > emit_move_via_integer properly handles moving from Y to X and X
> > satifies push_operand.
> >
> >
>
> Does this patch makes any senses?
>
>
> H.J.
> ----
> 2007-04-29 H.J. Lu <hongjiu.lu@intel.com>
>
> PR target/31344
> * expr.c (emit_move_resolve_push): Move it before ...
> (emit_move_via_integer): This. Call emit_move_resolve_push to
> replace the push destination with a reference to the stack
> pointer.
This doesn't make sense to me. It seems like it will generate worse
code for pushing a complex number as a function argument.
What are the arguments to emit_move_change_mode?
Ian
More information about the Gcc-patches
mailing list