[all-commits] [llvm/llvm-project] 9c1b82: [AAPointerInfo] handle multiple offsets in PHI

Sameer Sahasrabuddhe via All-commits all-commits at lists.llvm.org
Sat Dec 17 21:24:51 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9c1b82599dac63816cbed80270aaec85a6fa153b
      https://github.com/llvm/llvm-project/commit/9c1b82599dac63816cbed80270aaec85a6fa153b
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2022-12-18 (Sun, 18 Dec 2022)

  Changed paths:
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/CodeGen/AMDGPU/implicitarg-attributes.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/Transforms/Attributor/multiple-offsets-pointer-info.ll

  Log Message:
  -----------
  [AAPointerInfo] handle multiple offsets in PHI

Previously reverted in 8b446ea2ba39e406bcf940ea35d6efb4bb9afe95

Reapplying because this commit is NOT DEPENDENT on the reverted commit
fc21f2d7bae2e0be630470cc7ca9323ed5859892, which broke the ASAN buildbot.
See https://reviews.llvm.org/rGfc21f2d7bae2e0be630470cc7ca9323ed5859892 for
more information.

The arguments to a PHI may represent a recurrence by eventually using the output
of the PHI itself. This is now handled by checking for cycles in the control
flow. If a PHI is not in a recurrence, it is now able to report multiple offsets
instead of conservatively reporting unknown.

Reviewed By: jdoerfert

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




More information about the All-commits mailing list