[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203 --- Comment #6 from Alexandre Pereira Nunes alexandre.nunes at gmail dot com 2011-02-28 20:30:24 UTC --- (In reply to comment #5) There's a lot of debate about whether the ARM behaviour is a good thing or not. Not pushing the return address means that the debugger cannot generate a back-trace in the event that the no-return function is something like abort(); however, we could avoid pushing most of the other registers. In a hosted environment, the tradeoff is clear. On a more constrained one, it would depend on whether or not debugging is an option and if not, there's just wasted stack. -f(no)omit-frame-pointer could be respected by the port, imho.
[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
--- Comment #5 from rearnsha at gcc dot gnu dot org 2009-12-14 23:35 --- There's a lot of debate about whether the ARM behaviour is a good thing or not. Not pushing the return address means that the debugger cannot generate a back-trace in the event that the no-return function is something like abort(); however, we could avoid pushing most of the other registers. -- rearnsha at gcc dot gnu dot org changed: What|Removed |Added Severity|minor |enhancement http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203
[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
--- Comment #4 from ramana at gcc dot gnu dot org 2009-10-26 11:38 --- Not working on this. -- ramana at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|ramana at gcc dot gnu dot |unassigned at gcc dot gnu |org |dot org Status|ASSIGNED|NEW http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203
[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
--- Comment #3 from ramana at gcc dot gnu dot org 2009-04-20 15:38 --- Confirmed with gcc version 4.5.0 20090416 (experimental) [trunk revision 146149] (GCC) -- ramana at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |ramana at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-04-20 15:38:42 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203
[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
--- Comment #2 from ramana dot r at gmail dot com 2009-03-24 18:34 --- (In reply to comment #1) Created an attachment (id=16728) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16728action=view) [edit] A more involved testcase. This testcase shows the preserving behaviour on multiple call-clobbered registers, in spite of noreturn attribute. The save of registers appears on Using built-in specs. Target: arm-none-eabi Configured with: /home/ramana/cos/mycos/combined-arm-none-eabi/configure --target=arm-none-eabi --enable-languages=c,c++ : (reconfigured) /home/ramana/cos/mycos/combined-arm-none-eabi/configure --target=arm-none-eabi --enable-languages=c,c++ : (reconfigured) /home/ramana/cos/mycos/combined-arm-none-eabi/configure --target=arm-none-eabi target_alias=arm-none-eabi --enable-languages=c,c++ --no-create --no-recursion Thread model: single gcc version 4.4.0 20090324 (experimental) [trunk revision 143499] (GCC) and might be related to PR #38570 . -- ramana dot r at gmail dot com changed: What|Removed |Added CC||rearnsha at gcc dot gnu dot ||org, ramana dot r at gmail ||dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203
[Bug target/38203] attribute `noreturn' isn't effective when -mthumb param is active
--- Comment #1 from alexandre dot nunes at gmail dot com 2008-11-20 16:52 --- Created an attachment (id=16728) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16728action=view) A more involved testcase. This testcase shows the preserving behaviour on multiple call-clobbered registers, in spite of noreturn attribute. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38203