https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85830
--- Comment #3 from Steven Munroe <munroesj at gcc dot gnu.org> --- (In reply to Carl Love from comment #2) > Hit the save button a little too fast missed putting in everything I > intended to put in. Lets try to get it all in. > > > In altivec.h they are defined as: > > > > #define vec_popcnt __builtin_vec_vpopcntu > > #define vec_popcntb __builtin_vec_vpopcntub > > #define vec_popcnth __builtin_vec_vpopcntuh > > #define vec_popcntw __builtin_vec_vpopcntuw > > #define vec_popcntd __builtin_vec_vpopcntud > > > > It does appear they should be removed from altivec.h. > > > > The user should use the builtin vec_popcnt(a) where a is the unsigned > > long > > long > > or unsigned int as desired. These builtins are support on at least > > gcc version 8.3.1 and later. I assume you mean, remove the defines for; vec_popcntb, vec_popcnth, vec_popcntw, and vec_popcntd. While retaining vec_popcnt ??