[all-commits] [llvm/llvm-project] 25dcd2: [IPO] Added attributor for identifying invariant l...

zGoldthorpe via All-commits all-commits at lists.llvm.org
Mon Jun 16 09:17:08 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 25dcd231bfee1120c21b102e074542c54fb7c5c2
      https://github.com/llvm/llvm-project/commit/25dcd231bfee1120c21b102e074542c54fb7c5c2
  Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
  Date:   2025-06-16 (Mon, 16 Jun 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    A llvm/test/Transforms/Attributor/AMDGPU/tag-invariant-loads.ll
    M llvm/test/Transforms/Attributor/dereferenceable-1.ll
    M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll

  Log Message:
  -----------
  [IPO] Added attributor for identifying invariant loads (#141800)

The attributor conservatively marks pointers whose loads are eligible to
be marked as `!invariant.load`.
It does so by identifying:
1. Pointers marked `noalias` and `readonly`
2. Pointers whose underlying objects are all eligible for invariant
loads.

The attributor then manifests this attribute at non-atomic non-volatile
load instructions.



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