[all-commits] [llvm/llvm-project] 17994e: [MemorySSA] Remove PerformedPhiTranslation flag

Nikita Popov via All-commits all-commits at lists.llvm.org
Wed Sep 21 01:32:31 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 17994ed91980b9964a6a9d0bf5a0f7b3b9deec97
      https://github.com/llvm/llvm-project/commit/17994ed91980b9964a6a9d0bf5a0f7b3b9deec97
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2022-09-21 (Wed, 21 Sep 2022)

  Changed paths:
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/test/Analysis/MemorySSA/phi-translation.ll

  Log Message:
  -----------
  [MemorySSA] Remove PerformedPhiTranslation flag

I believe this is no longer necessary, as the underlying problem
has been fixed in a different way: Nowadays, we will adjust the
location size to beforeOrAfterPointer() if the pointer is not loop
invariant. This makes merging results translated across loop
backedges safe.

The two tests in phi-translation.ll show an improvement while still
being correct: The loads in the loop no longer alias with noalias
pointers, but still alias with the store in the entry block (which
they originally did not -- this is the bug that
PerformedPhiTranslation originally fixed).

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




More information about the All-commits mailing list