This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Improve -Ofast vectorization of std::sin etc. (PR libstdc++/81706)


On Sat, Sep 09, 2017 at 03:42:35PM +0200, Jason Merrill wrote:
> On Fri, Sep 1, 2017 at 1:12 PM, Jakub Jelinek <jakub@redhat.com> wrote:
> > +                 tree s = lookup_attribute ("omp declare simd",
> > +                                            DECL_ATTRIBUTES (newdecl));
> > +                 if (s)
> > +                   {
> > +                     tree b
> > +                       = builtin_decl_explicit (DECL_FUNCTION_CODE (newdecl));
> > +                     if (b)
> > +                       duplicate_one_attribute (&DECL_ATTRIBUTES (b), s,
> > +                                                "omp declare simd");
> > +                   }
> 
> Is there a reason not to set b first and move the lookup of s into the
> function as well?

I wanted to handle the most common case (no DECL_ATTRIBUTES at all) and the
second most common case (lookup_attribute returning NULL) inline, otherwise
we'll do an extra function call for all builtins in all cases.
But if you strongly prefer that lookup to be in duplicate_one_attribute,
I can change the patch and retest.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]