This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, i386]: Fix PR target/35553, -fkeep-inline-functions and -O errors our in SSE headers
On Thu, Mar 13, 2008 at 11:36 AM, Richard Guenther
<richard.guenther@gmail.com> wrote:
> > > > Fixed by introducing __SSE_USE_INLINED_FUNC__ builtin define that is
> > > > defined when appropriate and by using this define through SSE headers.
> > >
> > > Why not simply make these functions extern inline __attribute__((gnu_inline))?
> >
> > Huh, indeed.
> >
> > Do we need extern here or can go with static inline
> > __attribute__((gnu_inline, _always_inline_))
> >
> > (the tests that redefine "static" won't have to be updated in this case.)
>
> I don't know how we mix gnu_inline and static here, especially with
> -fkeep-inline-functions, so you'd have to try. But extern inline is
> the semantics we want (any out-of-line copy will be bogus, so you
> also could say that keeping always_inline functions is bogus
> with -fkeep-inline-functions - you might want to do some research
> why we do so and maybe fix that instead).
I have reverted my commit for now to experiment a bit.
Jakub, IIUC, _all_ functions should be changed to extern __inline,
with __gnu_inline__ attribute?
Thanks,
Uros.