[all-commits] [llvm/llvm-project] 8c53a8: [Attributor] Fix an issue that an access is skippe...

Shilei Tian via All-commits all-commits at lists.llvm.org
Sun Aug 4 07:41:46 PDT 2024


  Branch: refs/heads/users/shiltian/dont-skip-if-no-aa
  Home:   https://github.com/llvm/llvm-project
  Commit: 8c53a8baa0a39f08364ae6f3646d11b08738658e
      https://github.com/llvm/llvm-project/commit/8c53a8baa0a39f08364ae6f3646d11b08738658e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-04 (Sun, 04 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    A llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll

  Log Message:
  -----------
  [Attributor] Fix an issue that an access is skipped by mistake

When we check if an access can be skipped, there is a case that an
inter-procedural interference access exists after a dominant write. Currently we
rely on `AAInterFnReachability` to tell if the access can be reachable. If it is
not, we can safely skip the access. However, it is based on an assumption that
the AA exists. It is possible that the AA doesn't exist. In this case, we can't
safely assume the acess can be skipped because we have to assume the access can
reach. This can happen when `AAInterFnReachability` is not in the allowed AA
list when creating the attributor, such as AMDGPUAttributor.



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