Hi,

FYI besides what Ian had mentioned, you can refer to gcc/function.h file for 
the classification of functions by GCC. You can check out how GCC 
categorizes a function by debugging cc1 using "gdb --args" 
(http://gcc.gnu.org/wiki/DebuggingGCC). You can probably put a break point 
at your prologue function and can see the contents of structure "cfun". 
Correct me if I am wrong.         

Gcc allows you to control the same at application level using attributes.
An attribute to function like  
__attribute__((optimize("-fno-omit-frame-pointer"))) 
may not omit the frame pointer for the concerned function.   

-Sumanth G

-----Original Message-----
From: gcc-ow...@gcc.gnu.org [mailto:gcc-ow...@gcc.gnu.org] On Behalf Of Iyer, 
Balaji V
Sent: Tuesday, April 12, 2011 2:27 AM
To: Ian Lance Taylor
Cc: gcc@gcc.gnu.org
Subject: RE: Frame Pointer Usage

Yes, that is what I want. Thank you!

-Balaji V. Iyer.

-----Original Message-----
From: Ian Lance Taylor [mailto:i...@google.com] 
Sent: Monday, April 11, 2011 4:40 PM
To: Iyer, Balaji V
Cc: gcc@gcc.gnu.org
Subject: Re: Frame Pointer Usage

"Iyer, Balaji V" <balaji.v.i...@intel.com> writes:

> Thanks Ian for your help. If I set the frame pointer required hook (using 
> SUBTARGET_FRAME_POINTER_REQUIRED and TARGET_FRAME_POINTER_REQUIRED) it will 
> set the frame-pointer for all the functions..am I correct?  I would like to 
> force it to use the frame-pointer for a certain functions in a program that I 
> figure out during compile time. Is there a feature to do this? If one doesn't 
> exist, then how much of a major change is this to the GCC mainline for me to 
> add this functionality?

In current gcc, the frame pointer required hook is a function
implemented in the backend.  Your backend can decide, on a
function-by-function basis, whether a frame pointer is required.  It
seems to me that that is what you want.  Please let me know if I
misunderstand.

I'm not sure why you are referring to SUBTARGET_FRAME_POINTER_REQUIRED.
A few backends define that macro, most do not.

Ian


Reply via email to