i386 frame pointer elimination patch

Richard Henderson rth@cygnus.com
Wed Jan 19 11:53:00 GMT 2000


On Wed, Jan 19, 2000 at 08:25:52PM +0100, Jan Hubicka wrote:
> Possibly the problem is that soft frame_pointer is not in any register
> class, so it don't match register_operand:

Ah yes.  This explains most of the wierdness of your patch.
I should have caught that.

> Am I expected to put it into some class? And which one?

It should go into NON_Q_REGS, GENERAL_REGS and FLOAT_INT_REGS.

BTW, I just noticed a typo --

  NON_Q_REGS,                   /* %esi %edi %ebp %esi */
				     should be esp ^^^

Could you fix that at the same time?

> Will reload like soft frame pointer appearing in the non-set instructions?

Yes.

> I've just found important problem with exception handling. For some purpose
> the throw now fails to find exception handler.

Dunno.  If you get the other problems resolved I'll look at it.


r~


More information about the Gcc-patches mailing list