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]
Other format: [Raw text]

Re: Why doesn't -fomit-frame-pointer work(very well)?



>> Can anybody give me a clue how to do this?  I'll go off and look
>> into it, but I need a starting point...
>> 
>> I looked into ELIMINABLE_REGS, but nobody defines it...
>
>Eh?

Uh, What I grepped for was ELIMENABLE_REGS, not ELIMINABLE_REGS :-(

I'm assuminf that I need to add ARG_POINTER_REGNUM as well as
FRAME_POINTER_REGNUM, right?

If so, then I think the following is what I need to do:

1) Bump FIRST_PSEUDO_REGISTER by two.
2) define FRAME_POINTER_REGNUM and ARG_POINTER_REGNUM to be the
   new pseudo-registers
3) Define HARD_FRAME_POINTER_REGNUM to be the *real* frame pointer
4) Add the two new names "*frame" and "*arg" to REGISTER_NAMES
5) Add ELIMINABLE_REGS (clone from i386.h)
6) Add CAN_ELIMINATE (clone from i386.h)

Can I use the default INITIAL_ELIMINATION_OFFSET in reload1.c, od do I
have to create my own for m68k?

Is there anything else that I'm missing?

-- 
Peter Barada                                   Peter.Barada@motorola.com
Wizard                                         781-852-2768 (direct)
WaveMark Solutions(wholly owned by Motorola)   781-270-0193 (fax)


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