[all-commits] [llvm/llvm-project] 3c74ed: [LAA] Fix ICE with scAddExpr in forked pointers

huntergr-arm via All-commits all-commits at lists.llvm.org
Wed Sep 21 02:29:25 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3c74ed9ee3233d4272a7b213091a9fd1cb464d71
      https://github.com/llvm/llvm-project/commit/3c74ed9ee3233d4272a7b213091a9fd1cb464d71
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2022-09-21 (Wed, 21 Sep 2022)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/forked-pointers.ll

  Log Message:
  -----------
  [LAA] Fix ICE with scAddExpr in forked pointers

The IR from https://github.com/llvm/llvm-project/issues/57368 results
in an assert firing when trying to create a runtime check for the
forked pointer. One of the forks is fine since it's loop invariant,
but the other is a scAddExpr (containing a scAddRecExpr, so not
invariant) when RtCheck::insert expects a scAddRecExpr.

This is a simple fix to just avoid forks which aren't AddRec or
loop invariant. We can allow it as a forked pointer later with
more work.

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D133020




More information about the All-commits mailing list