https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127261
--- Comment #3 from Drea Pinski <pinskia at gcc dot gnu.org> --- c15_30 = g24_a1.3_8 != c14_12; I have a fix. What is happening is g24_a1.3_8 is known to be 0, and c14_12 is known to be the same as c15_30. so we get: `0 != c15_30` And 0 is not the same as c15_30 and that goes into an infite loop. There is code to stop the infinite loop but we only Canonicalize the order after the check. Adding the code to Canonicalize the order before the check stops the infinite loop.
