[Bug c++/70549] insn does not satisfy its constraints aarch64 gcc-4.8

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Mar 8 06:46:00 GMT 2017


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Well, 4.9 did not fix this, on the reduced:

struct A { float x; float y; };
A a, b, c;
int d, e;
A bar ();
void foo (A, A);
inline A operator/ (A, A p2) { if (p2.x) return a; }
struct B { A dval; };
int baz (A, B, A, int);

void
test ()
{
  B q;
  A f, g, h, k;
  h.x = 1.0;
  f = h;
  struct A i, j = f;
  do {
    i = bar ();
    g = i / j;
    foo (g, c);
    int l = baz (k, q, b, e);
    if (l)
      goto cleanup;
    j = i;
  } while (d);
cleanup:;
}

with -O2 -fPIC -fno-schedule-insns -mno-lra I can still reproduce it even with
r219720; GCC 5 is fine, because -mno-lra has been removed in r219734.
GCC 4.9 is not upstream supported either, this note is mainly for those still
maintaining 4.8 or 4.9 aarch64 branches.


More information about the Gcc-bugs mailing list