https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69845

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
   Target Milestone|5.4                         |4.9.4
            Summary|[5/6 Regression] Expression |[4.9/5/6 Regression]
                   |getting incorrectly         |Expression getting
                   |optimized after being       |incorrectly optimized after
                   |rewritten by compiler       |being rewritten by compiler

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
int
main ()
{
#if __SIZEOF_INT__ * __CHAR_BIT__ == 32
  struct S { char s; } v;
  v.s = 47;
  int a = (int) v.s;
  int b = (27005061 + (a + 680455));
  int c = ((1207142401 * (((8 * b) + 9483541) - 230968044)) + 469069442);
  if (c != 1676211843)
    __builtin_abort ();
#endif
  return 0;
}

regressed at -O2 with r204454.

Reply via email to