[PATCH] Declare functions that unconditionally call FatalError as _X_NORETURN.

Jamey Sharp jamey at minilop.net
Sat May 22 12:13:52 PDT 2010


On Sat, May 22, 2010 at 11:43 AM, Jeremy Huddleston <jeremyhu at apple.com> wrote:
> On May 22, 2010, at 11:32, Mark Kettenis wrote:
>> Compiler developers use the fact that a function doesn't return as a
>> license for optimizations that destroy the function return address or
>> frame pointer.  It's especially nasty with GCC on arm, but there are
>> other platforms where this is also a problem.
>
> Well, can't you turn off such optimizations with an -fno-omit-frame-pointer or something similar?

Apparently -mapcs-frame does it on ARM, and a couple of months ago
commit 579715f830fbbca9e1ecb17dc18176132f5969e7 enabled that for the
os/ subdir.

Would it hurt on ARM to enable that option globally in the server? My
reading of the documentation is that most functions use the "ARM
Procedure Call Standard" anyway, so the option really only affects
those declared noreturn or other such unusual cases.

Jamey


More information about the xorg-devel mailing list