[all-commits] [llvm/llvm-project] bfda69: [BasicAA] Fix a bug with relational reasoning acro...

Philip Reames via All-commits all-commits at lists.llvm.org
Sat Dec 5 14:14:58 PST 2020


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bfda69416c6d0a76b40644b1b0cbc1cbca254a61
      https://github.com/llvm/llvm-project/commit/bfda69416c6d0a76b40644b1b0cbc1cbca254a61
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2020-12-05 (Sat, 05 Dec 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/BasicAliasAnalysis.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/test/Analysis/BasicAA/phi-aa.ll

  Log Message:
  -----------
  [BasicAA] Fix a bug with relational reasoning across iterations

Due to the recursion through phis basicaa does, the code needs to be extremely careful not to reason about equality between values which might represent distinct iterations. I'm generally skeptical of the correctness of the whole scheme, but this particular patch fixes one particular instance which is demonstrateable incorrect.

Interestingly, this appears to be the second attempted fix for the same issue. The former fix is incomplete and doesn't address the actual issue.

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




More information about the All-commits mailing list