This is the mail archive of the gcc-patches@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]
Other format: [Raw text]

Re: Bootstrap is broken on i[345]86-linux


On Sun, Apr 29, 2007 at 03:47:53PM +0200, Jan Hubicka wrote:
> > ping again, again and again. Bootstrap has been broken on i[345]86- 
> > linux with default options for more than a month. It's sad that  
> > noone, including i386 maintainers, cares enough to review an already  
> > existing patch or pressure the original committers (H. J. Lu and  
> > Michael Meissner) into doing something, maybe disabling decimal float  
> > on i[345]86-linux.
> 
> The problem is that the proposed patch is more a workaround, rather 
> than that a generic fix is needed in push expanding machinery. (as
> mentioned earlier in thread, emit_move_insn knows how to decompose
> decimal into integer, but push code doesn't)
> 
> I can write it, but my hdd just died today so I will need some time to
> recover data from backups.  So if someone beats me, it would be nice.
> I will try to get into it ASAP.
> 

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.


H.J.


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