diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2010-11-02 07:24:50 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-11-02 07:24:50 +0100 |
commit | fff9dae7eb2e9e9a81f73a955d921e7f0e1e9bb5 (patch) | |
tree | db2dbfe3566ae8e0efa217702e346ccbc43362d9 /test/unistd/fork.c | |
parent | 4d537e8547b8d623e1847cd80d3da455dc52ff85 (diff) |
ldouble_wrappers: remove i386-specific optimization
It is deemed too unsafe. Quoting Timo:
If I'm building with "-fPIC -pg" it instruments all C functions with
profiler stuff which is called via PLT and causes EBX reloads
--> crash
-fno-omit-frame-pointer is sometimes useful for profiling too
--> crash
Also the upcoming -fsplit-stack will be broken by this too (that might
need additional uclibc support though).
And I'm pretty sure there's also other similar compiler features.
There's no predefined #defines in gcc for any of these.
What I'm trying to say that there are *numerous* situations when the
compiler can create stack frame for you without you ever knowing it. And
if you want to do a tail jump, you really should be doing it from .S
file where you control fully the prologue/epilogue code. (GCC naked
attribute does not seem to work on x86.)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'test/unistd/fork.c')
0 files changed, 0 insertions, 0 deletions