https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45256
--- Comment #4 from Andrew Pinski ---
With IVOPTs we get:
# ivtmp.13_97 = PHI
_34 = MEM[(const __be32 *)_28 + -4B + ivtmp.13_97 * 4];
_36 = MEM[(const __be32 *)_27 + -4B + ivtmp.13_97 * 4];
if (_34 != _36)
goto ; [5.50%]
else
g
--- Comment #3 from pinskia at gcc dot gnu dot org 2010-09-07 18:41 ---
ret_59 = (i_53 + 1) * 32 - (32 - ret_56)
So this looks like a re-association issue.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45256
--- Comment #2 from ibolton at gcc dot gnu dot org 2010-09-07 13:05 ---
(In reply to comment #1)
> Created an attachment (id=21454)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21454&action=view) [edit]
> Testcase
>
OK. I can see this happening on trunk, when compiled as follow
--- Comment #1 from bernds at gcc dot gnu dot org 2010-08-11 15:19 ---
Created an attachment (id=21454)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21454&action=view)
Testcase
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45256