On Thu, Mar 29, 2018 at 4:28 AM, Martin Liška <mli...@suse.cz> wrote: > On 03/28/2018 06:36 PM, Jakub Jelinek wrote: >> >> On Wed, Mar 28, 2018 at 06:30:21PM +0200, Martin Liška wrote: >>> >>> --- a/gcc/config/linux.c >>> +++ b/gcc/config/linux.c >>> @@ -37,3 +37,24 @@ linux_libc_has_function (enum function_class fn_class) >>> return false; >>> } >>> + >>> +/* This hook determines whether a function from libc has a fast >>> implementation >>> + FN is present at the runtime. We override it for i386 and glibc C >>> library >>> + as this combination provides fast implementation of mempcpy function. >>> */ >>> + >>> +enum libc_speed >>> +ix86_linux_libc_func_speed (int fn) >> >> >> Putting a ix86_ function into config/linux.c used by most linux targets is >> weird. Either we multiple linux targets with mempcpy fast, then name it >> somehow cpu neutral and let all those CPUs pick it up in config/*/linux.h. >> And yes, we do care about i?86-linux. Or it is for x86 only, and then >> it shouldn't be in config/linux.c, but either e.g. static inline in >> config/i386/linux.h, or we need config/i386/linux.c if we don't have it >> already. > > > I'm fine with putting the implementation into gcc/config/i386/linux.c. Can > you please > help me how to conditionally build the file?
config.gcc: extra_objs="${extra_objs} linux.o" config.gcc: extra_objs="$extra_objs powerpcspe-linux.o" config.gcc: extra_objs="$extra_objs rs6000-linux.o" -- H.J.