[all-commits] [llvm/llvm-project] b4bb2f: [LoopDeletion] Unblock loop deletion with `llvm.e...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Wed Sep 11 01:46:33 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b4bb2f8aef01aeab8bf4fd164ed14a2c083d2858
      https://github.com/llvm/llvm-project/commit/b4bb2f8aef01aeab8bf4fd164ed14a2c083d2858
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/IR/User.cpp
    A llvm/test/Transforms/LoopDeletion/noalias.ll

  Log Message:
  -----------
   [LoopDeletion] Unblock loop deletion with `llvm.experimental.noalias.scope.decl` (#108144)

Since `llvm.experimental.noalias.scope.decl` is marked as
`memory(inaccessiblemem: readwrite)`, we cannot treat this annotation
intrinsic as having no side effects. It will block loop deletion when
this intrinsic exists inside a dead loop:

https://github.com/llvm/llvm-project/blob/3dad29b677e427bf69c035605a16efd065576829/llvm/lib/Transforms/Scalar/LoopDeletion.cpp#L103-L110

This patch marks `llvm.experimental.noalias.scope.decl` as droppable to
address the issue.

Fixes https://github.com/llvm/llvm-project/issues/108052.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list