[all-commits] [llvm/llvm-project] c2a0ba: [AAPointerInfo] track multiple constant offsets fo...

Sameer Sahasrabuddhe via All-commits all-commits at lists.llvm.org
Mon Dec 12 00:09:39 PST 2022


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

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    R llvm/test/CodeGen/AMDGPU/attributor.ll
    A llvm/test/CodeGen/AMDGPU/implicitarg-attributes.ll
    M llvm/test/Transforms/Attributor/call-simplify-pointer-info.ll
    A llvm/test/Transforms/Attributor/multiple-offsets-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [AAPointerInfo] track multiple constant offsets for each use

An expression of the form `gep(base, select(pred, const1, const2))` can result
in a set of offsets instead of just one. PointerInfo can now track these sets
instead of conservatively modeling them as Unknown. In general, AAPointerInfo
now uses AAPotentialConstantValues to examine the operands of the GEP.

Reviewed By: jdoerfert

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




More information about the All-commits mailing list