This is the mail archive of the gcc-bugs@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]

[Bug middle-end/38587] [4.4 Regression] psim miscompiled #2



------- Comment #34 from vmakarov at redhat dot com  2009-01-21 03:15 -------
C standard guarantees that automatic variable only with volatile will be
restored after longjmp. Gcc puts volatiles on stack and don't use pseudos for
them.  So they will be never shared on stack.

I think the code (its expected behavior) does not conform with the standard.

Unfortunately there are a lot of code which does not conform with the standard.
 So I think we should provide the same functionality.  It can be done by
prohibiting stack slot sharing in IRA if there are setjmps in the function.

I'll make a patch and send it for a review after some testing most probably
tomorrow.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38587


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