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

            Bug ID: 79521
           Summary: [7 Regression] Bootstrap failure on i686-linux
                    starting with r245436
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

GCC on i686-linux ICEs while building libquadmath starting with r245436.
Reduced testcase (even reproduceable on x86_64-linux) with -O2 -m32 -mno-sse:

union U { __float128 v; struct { unsigned long long l, h; } w; };

__float128
foo (__float128 x, __float128 p)
{
  long long hx,hp;
  unsigned long long lx,lp;
  union U u1, u2;
  u1.v = x;
  hx = u1.w.h;
  lx = u1.w.l;
  u2.v = p;
  hp = u2.w.h;
  lp = u2.w.l;
  if (((hx-hp) | (lx-lp)) == 0)
    return 0.0Q * x;
  return p;
}

Reply via email to