https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114045
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- If it is really that beneficial, some optimization before bitint lowering should lower it, dealing with such special cases in bitint lowering would quickly make it unmaintainable, it is already quite complex on its own. Note, even the multiplication isn't that expensive, we pass to the library that one of the arguments has 1-bit unsigned precision (or the library could figure it out if we don't see the range in the source), so it shouldn't be doing full 16 x 16 limb multiplication...