This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: RFC: Turn on -fomit-frame-pointer and -fasynchronous-unwind-tables for Linux/i386


On Jul 15, 2010, at 1:46 PM, H.J. Lu wrote:

> On Thu, Jul 15, 2010 at 12:49 PM, Roland McGrath <roland@redhat.com> wrote:
>>> I updated the spread sheet with glibc 12.0 DSO sizes
>>> I think -fomit-frame-pointer and -fasynchronous-unwind-tables
>>> will increase size of DSO written in C by about 10%.
>> 
>> Are you talking about code size or text size?  Of course
>> -fasynchronous-unwind-tables increases the size of .eh_frame,
>> but that is not usually a performance issue.  The actual code
>> size increase is what affects hot path cache load and so forth.
> 
> -fomit-frame-pointer increases libc.so code size by 1%. We
> have to save/restore EBP when using it GPR. But for some reason,
> gcc will choose EBP even when ECX/EDX are available:
> 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44958

Another issue is that X86 encoding of 42(%esp) takes more space than 42(%ebp).  The former requires a SIB byte, the later doesn't.

-Chris

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