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]

[OR1K port] where do I change the function frame structure


Greetings

Please ..  where (in what file, dir) of the gcc (4.9.1) source should I
rummage in order to change the sequence of instructions eventually
emitted to do a function call?

I mean to target the sequence of saves of to-be-clobbered registers,
change of stack/frame pointer ...  and the reverse of that sequence that
one finds around a function call in the compiled code. I'm looking at
the OR1K port, which I would like to port further to a related
architecture.

I understand that I probably should be changing the RTL constructed
somewhere near the front end, and that I will also have to do a bit of
looking after what assembler is emitted at the back end.  But for now,
please point me at the right area of the code and I'll be able to get
specific.

Instead of decrementing the stack pointer on call, then incrementing it
again on return, I want to save the stack pointer, then decrement it,
and copy back from the saved copy instead of incrementing it again on
return.  This is similar to what happens to a frame pointer, when there
is a frame pointer ...

I hope somebody can direct me to the right area of the source code.

Regards to all

PTB


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