http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36041
--- Comment #19 from Cristian RodrÃguez <crrodriguez at opensuse dot org> --- (In reply to Jakub Jelinek from comment #18) > I think it is a bad idea to introduce the IFUNC into libgcc_s, because then > while you speed up the few users of this builtin, you slow down all users of > libgcc_s (pretty much all C++ programs and lots of C programs), because they > will need to resolve the ifunc. For a very heavily used builtin perhaps, > but for a rarely used one it just isn't a good idea. User's can just use > multi-versioning themselves and use __builtin_popcount* in the > multi-versioned function. Hold on..Apparently I used ambiguous language in my comment.. adding ifuncs to libgcc* was not my real suggestion, but to EMIT such IFUNC s in the resulting final user code when the target environment allows it. One generic, one hardware/arch specific.