[PATCH] D55427: [libcxx] Call __count_bool_true for bitset count

Adhemerval Zanella via Phabricator reviews at reviews.llvm.org
Mon Dec 17 03:58:41 PST 2018

zatrazz added a comment.

In D55427#1331277 <https://reviews.llvm.org/D55427#1331277>, @zatrazz wrote:

> In D55427#1331048 <https://reviews.llvm.org/D55427#1331048>, @rengolin wrote:
> > Getting a bit late in this discussion, as we had an internal one just recently.
> >
> > The change to remove always_inline in a number of libc++ template functions is a good one, especially when the inliner can guess and does a good job already.
> >
> > In this case, however, because the type is a reference, the inliner would require a lot more effort to inspect the uses (and side-effects).
> >
> > Improving the inliner here would be a huge hammer, probably increasing compile time for all codes for the minimal benefit of this very special case.
> >
> > Then perhaps, it would be beneficial and pragmatic, to revert that removal in this special case.
> The issue I have to define it per symbol is the hackery it would require to handle _LIBCPP_INTERNAL_LINKAGE and its implications,
>  or at least add *another* macro to inline some symbols depending of the configuration/etc.

I still think this patch is simpler than adding another flag to instruct always inline and works better with current clang inline strategy.



More information about the libcxx-commits mailing list