Comment #3 on issue 5537 by masc...@google.com: llvm/clang-proto-fuzzer: ASSERT: isLoopInvariant(Operands[i], L) && "SCEVAddRecExpr operand is not loop-invariant
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=5537#c3

Smaller reproducer:

$ cat repro.c
void foo(int *a) {
  a[0] = 1;
  while ((a[32] * a[0])) {
    a[0] = (1 + a[0]);
  }
  while ((((a[0] * a[0]) * (a[0] * a[0])) * a[0])) {
    a[0] = ((1073741824) + a[0]);
  }
}
$ clang -cc1 -triple x86_64-unknown-linux-gnu -O2 -emit-obj repro.c
clang: lib/Analysis/ScalarEvolution.cpp:3269: const llvm::SCEV *llvm::ScalarEvolution::getAddRecExpr(SmallVectorImpl<const llvm::SCEV *> &, const llvm::Loop *, SCEV::NoWrapFlags): Assertion `isLoopInvariant(Operands[i], L) && "SCEVAddRecExpr operand is not loop-invariant!"' failed.


--
You received this message because:
  1. You were specifically CC'd on the issue

You may adjust your notification preferences at:
https://bugs.chromium.org/hosting/settings

Reply to this email to add a comment.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to