[PATCH] Fix unsafe function attributes for special functions (PR 71876)
Bernd Edlinger
bernd.edlinger@hotmail.de
Wed Jul 20 18:30:00 GMT 2016
On 07/20/16 20:08, Richard Biener wrote:
> On July 20, 2016 6:54:48 PM GMT+02:00, Bernd Edlinger <bernd.edlinger@hotmail.de> wrote:
>>
>> Yes. That is another interesting observation. I think, originally this
>> flag was introduced by Jan Hubicka, and should mean, "it may be alloca
>> or a weak alias to alloca or maybe even something different".
>> But some of the later optimizations use it in a way as if it meant
>> "it must be alloca". However I have not been able to come up with
>> a test case that makes this assumption false, but I probably just
>> did not try hard enough.
>>
>> But I think that alloca just should not be recognized by name any
>> more.
>
> It was introduced to mark calls that should not be duplicated by inlining or unrolling to avoid increasing stack usage too much. Sth worthwhile to keep even with -ffreestanding.
>
> Richard.
>
Apparently the MAY_BE_ALLOCA issue is worse than I ever thought...
But I could not imagine that alloca can be anything else than a
built-in.
Is there any implementation where alloca is like an ordinary function
call?
I mean, does something like a function that allocates n bytes
from the caller's stack frame work at all with any calling convention?
Bernd.
More information about the Gcc-patches
mailing list