[all-commits] [llvm/llvm-project] b8c1e5: [Attributor][NFC] Precommit reproducer for PR51249

Johannes Doerfert via All-commits all-commits at lists.llvm.org
Wed Aug 11 09:16:04 PDT 2021


  Branch: refs/heads/release/13.x
  Home:   https://github.com/llvm/llvm-project
  Commit: b8c1e55fa19712f75bde7999f0762a63b4cadf88
      https://github.com/llvm/llvm-project/commit/b8c1e55fa19712f75bde7999f0762a63b4cadf88
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2021-08-11 (Wed, 11 Aug 2021)

  Changed paths:
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [Attributor][NFC] Precommit reproducer for PR51249

The bulk of the changes come from attributes but only the @phi_store
function is effectively added.

(cherry picked from commit f358727ce06cca3b1f541b70719ccd1ac62efbf5)


  Commit: 3490cba4dbd8c7363be424caf3e6a131db6c9447
      https://github.com/llvm/llvm-project/commit/3490cba4dbd8c7363be424caf3e6a131db6c9447
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2021-08-11 (Wed, 11 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [Attributor][FIX] Only avoid visiting PHI uses multiple times (PR51249)

AAPointerInfoFloating needs to visit all uses and some multiple times if
we go through PHI nodes. Attributor::checkForAllUses keeps a visited set
so we don't recurs endlessly. We now allow recursion for non-phi uses so
we track all pointer offsets via PHI nodes properly without endless
recursion.

This replaces the first attempt D107579.

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

(cherry picked from commit 96da6dd6ba53bce5dbe822fe968c2b67ba9bc221)


  Commit: ab096b7ee9d869242ce11771427af09ac22ef932
      https://github.com/llvm/llvm-project/commit/ab096b7ee9d869242ce11771427af09ac22ef932
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2021-08-11 (Wed, 11 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [Attributor][FIX] Handle recurrences (PHIs) in AAPointerInfo explicitly

PHI nodes are not pass through but change their value, we have to
account for that to avoid missing stores.

Follow up for D107798 to fix PR51249 for good.

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

(cherry picked from commit e7e3585cde0b08152a8cbf54029794d07c15963d)


  Commit: 6789c4564a4b33049cb1335d9b8078057af2dc11
      https://github.com/llvm/llvm-project/commit/6789c4564a4b33049cb1335d9b8078057af2dc11
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2021-08-11 (Wed, 11 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp

  Log Message:
  -----------
  [Attributor][NFC] Try to make the windows build bots happy

Failed for some reason, potentially because of the inner type
declaration in combination with the `using`. This might help.

Failure:
https://lab.llvm.org/buildbot/#/builders/127/builds/15432
(cherry picked from commit fc32a5c87d9d5aef2c0b27715153fdd45cebd3f3)


Compare: https://github.com/llvm/llvm-project/compare/168ece289bd4...6789c4564a4b


More information about the All-commits mailing list