https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82976
--- Comment #10 from Thomas Koenig <tkoenig at gcc dot gnu.org> --- I think I have finally found the culprit. Took me a couple of hours... The type in question is introduced in gimple-match-head.c, in 763 return (gimple_resimplify2 (seq, rcode, 764 boolean_type_node, ops, valueize) 765 || valueized); This is probably where the wrong type is being generated.