https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110490
--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org>: https://gcc.gnu.org/g:e1f56c67a82172730c377a96a46e8d75445e6a48 commit r15-274-ge1f56c67a82172730c377a96a46e8d75445e6a48 Author: Stefan Schulze Frielinghaus <stefa...@linux.ibm.com> Date: Tue May 7 14:12:55 2024 +0200 tree-optimization/110490 - bitcount for narrow modes Bitcount operations popcount, clz, and ctz are emulated for narrow modes in case an operation is only supported for wider modes. Beside that ctz may be emulated via clz in expand_ctz. Reflect this in expression_expensive_p. I considered the emulation of ctz via clz as not expensive since this basically reduces to ctz (x) = c - (clz (x & ~x)) where c is the mode precision minus 1 which should be faster than a loop. gcc/ChangeLog: PR tree-optimization/110490 * tree-scalar-evolution.cc (expression_expensive_p): Also consider mode widening for popcount, clz, and ctz.