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 target/14113] [3.3 regression] -O2 corrupts stack


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-02-11 21:55 -------
The culprits are the last 2 remaining define_peepholes of the SPARC port, that I
have already scrapped for GCC 3.4.  They change the value of the PC return
register without updating the CFIs, so the unwind mechanism is fooled.

The workaround is to disable them with -fno-peephole.  They are already disabled
by default on UltraSPARC because they hurt performance on modern CPUs.

I'll try to get the fix integrated in 3.3.3 but I don't promise anything.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |ebotcazou at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
          Component|optimization                |target


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


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