https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113323
--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:a2d66158541c0923620b044098bf66a73b51c463 commit r14-7180-ga2d66158541c0923620b044098bf66a73b51c463 Author: Jakub Jelinek <ja...@redhat.com> Date: Fri Jan 12 11:20:40 2024 +0100 lower-bitint: Fix a typo in a condition [PR113323] The following testcase revealed a typo in condition, as the comment says the intent is /* If lhs of stmt is large/huge _BitInt SSA_NAME not in m_names it means it will be handled in a loop or straight line code at the location of its (ultimate) immediate use, so for vop checking purposes check these only at the ultimate immediate use. */ but the condition was using != BITINT_TYPE rather than == BITINT_TYPE, so e.g. it used bitint_precision_kind on non-BITINT_TYPEs (e.g. on vector types it will crash because TYPE_PRECISION means something different there, or on say INTEGER_TYPEs the precision will never be large enough to be >= bitint_prec_large). The following patch fixes that. 2024-01-12 Jakub Jelinek <ja...@redhat.com> PR tree-optimization/113323 * gimple-lower-bitint.cc (bitint_dom_walker::before_dom_children): Fix check for lhs being large/huge _BitInt not in m_names. * gcc.dg/bitint-68.c: New test.