http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21617
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-12-08
03:37:28 UTC ---
-O1:
<bb 5>:
# __crc0_73 = PHI <__crc0_35(5), __crc0_54(7)>
# __data_75 = PHI <__data_32(5), data_7(7)>
D.1900_26 = __crc0_73 >> 56;
D.1901_27 = (int) D.1900_26;
D.1902_28 = MEM[base: __data_75, offset: 0B];
D.1903_29 = (int) D.1902_28;
D.1904_30 = D.1903_29 ^ D.1901_27;
__tab_index_31 = D.1904_30 & 255;
__data_32 = __data_75 + 1;
D.1905_33 = crc_table[__tab_index_31];
D.1906_34 = __crc0_73 << 8;
__crc0_35 = D.1905_33 ^ D.1906_34;
if (__data_32 != D.1928_55)
goto <bb 5>;
else
goto <bb 6>;
-O2:
<bb 5>:
# __crc0_1 = PHI <__crc0_35(5), __crc0_54(7)>
# __data_67 = PHI <__data_32(5), data_7(7)>
D.1900_26 = __crc0_1 >> 56;
D.1901_27 = (int) D.1900_26;
D.1902_28 = MEM[base: __data_67, offset: 0B];
D.1903_29 = (int) D.1902_28;
D.1904_30 = D.1903_29 ^ D.1901_27;
__tab_index_31 = D.1904_30 & 255;
__data_32 = __data_67 + 1;
D.1905_33 = crc_table[__tab_index_31];
D.1906_34 = __crc0_1 << 8;
__crc0_35 = D.1905_33 ^ D.1906_34;
if (__data_32 != D.1955_86)
goto <bb 5>;
else
goto <bb 6>;
Aka nothing on the tree level causes the issue.