[all-commits] [llvm/llvm-project] d64a0a: [ValueTracking] Make `getUnderlyingObjectsForCodeg...

Nathan Corbyn via All-commits all-commits at lists.llvm.org
Mon Sep 21 04:50:20 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d64a0a9effc7704962e21ede22eb0f5ba24e4390
      https://github.com/llvm/llvm-project/commit/d64a0a9effc7704962e21ede22eb0f5ba24e4390
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-09-21 (Mon, 21 Sep 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/StackColoring.cpp
    M llvm/lib/Transforms/Utils/MemoryOpRemark.cpp

  Log Message:
  -----------
  [ValueTracking] Make `getUnderlyingObjectsForCodegen()` preserve unidentified objects (#224584)

In some situations, it is useful to inspect the underlying objects of a
memory operation, even if they may alias with one another. A concrete
example comes from the approach to schedule DAG construction I've been
developing (see #205689) where these objects are used to infer that a
class of control dependencies between memory operations is redundant,
whereby eliminating the compile time cost of recording them. Update
`getUnderlyingObjectsForCodegen()` to return these objects.

Split from https://github.com/llvm/llvm-project/pull/205689



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