On 07/29/16 19:28, Jeff Law wrote: > On 07/26/2016 09:48 AM, Bernd Edlinger wrote: > >> Richard, this was the latest version of the patch: >> https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01481.html >> >> >> Are you OK with my clean-up of the presumably dead function names, >> or would you like to keep the quirks in special_function_p for now >> and just remove ECF_NORETURN and ECF_LEAF? > The only worry I have left is we're not catching _ prefixed savectx, > vfork & getcontext (the the latter two being the important ones). > Various ports still use USER_LABEL_PREFIX, so those symbols might be > showing up as _vfork & friends. > > That might just be an oversight (using name instead of tname in the > simplified conditional). >
no, that is actually intentional. If name would contain USER_LABEL_PREFIX then special_function_p would already have been broken, and that would need to be fixed as well. We need to handle __sigsetjmp, and that would not work with one extra underscore. I try to keep compatible to what is used in the header files of glibc and newlib. glibc defines setjmp to _setjmp, and sigsetjmp to __sigsetjmp. and newlib does not do that. Thus we actually need to handle these names: setjmp _setjmp sigsetjmp __sigsetjmp vfork and getcontext are no defines, so I don't see why we should match more names than absolutely necessary here. Not too sure about savectx, as solaris is no longer open source. Thanks Bernd.