Hi Dave, Keith,

I sent this earlier but it didn't show up on the list
for more than an hour... I appologize if you get a
duplicate copy.

Dave,  My patch should not be needed with gcc 2.96.  I have
seen the oops in the kdba_setjmp when I had broken Makefiles.
In particular if the CONFIG_FRAME_POINTER should be controlling
the -fomit-frame-pointer option.  If you are using -fomit-frame-pointer
then CONFIG_FRAME_POINTER should not be defined.

We just started building kernels with gcc 3.1 from the
RedHat 8.0 beta and thats where we started seeing the
problem I described.  I like the idea of the compiler
getting rid of the frame pointer save for leaf functions
so I hope we can solve this.

Keith,  I just tried my version of setjmp with an old
egcs-2.91.66 and you are correct that it is broken.  I will
try to figure out when this was fixed.  I wonder if
its broken the same way in all the older compilers?  I could
do an explicit save of ebp and use it if __builtin_frame_address
returns trash.  Sigh.

Jim Houston - Concurrent Computer Corp.
--- Begin Message ---
Hi Dave, Keith,

Dave,  My patch should not be needed with gcc 2.96.  I have 
seen the oops in the kdba_setjmp when I had broken Makefiles.
In particular if the CONFIG_FRAME_POINTER should be controlling
the -fomit-frame-pointer option.  If you are using -fomit-frame-pointer
then CONFIG_FRAME_POINTER should not be defined.

We just started building kernels with gcc 3.1 from the 
RedHat 8.0 beta and thats where we started seeing the
problem I described.  I like the idea of the compiler
getting rid of the frame pointer save for leaf functions
so I hope we can solve this.

Keith,  I just tried my version of setjmp with an old
egcs-2.91.66 and you are correct that it is broken.  I will 
try to figure out when this was fixed.  I wonder if
its broken the same way in all the older compilers?  I could
do an explicit save of ebp and use it if __builtin_frame_address
returns trash.  Sigh.


Jim Houston - Concurrent Computer Corp.
--- End Message ---

Reply via email to