[PATCH] D91271: [AArch64] Attempt to sink mul operands

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 13 23:47:10 PST 2021


mstorsjo added a comment.

This broke compilation of some sources, reproducible like this:

  $ cat repro.c 
  a;
  b(long long c) {
    if (c & 5)
      return c;
  }
  d(c, e) {
    int f;
    int *g = a, *h = d;
    f = 0;
    for (; f < c; f++)
      g[f] = b((long long)h[f] * e);
  }
  $ clang -target aarch64-linux-gnu -c repro.c -O2
  fatal error: error in backend: Cannot select: t85: v2i32 = AArch64ISD::DUP t15
    t15: i64,ch = CopyFromReg t0, Register:i64 %1
      t14: i64 = Register %1


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D91271/new/

https://reviews.llvm.org/D91271



More information about the llvm-commits mailing list