[all-commits] [llvm/llvm-project] de8957: [CaptureTracking][AA] Only consider provenance cap...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Thu Mar 13 01:54:59 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: de895751d2a250fb4127e1c7ea0863dd8e234325
https://github.com/llvm/llvm-project/commit/de895751d2a250fb4127e1c7ea0863dd8e234325
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-03-13 (Thu, 13 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/CaptureTracking.h
M llvm/include/llvm/Support/ModRef.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/CaptureTracking.cpp
A llvm/test/Analysis/BasicAA/captures.ll
R llvm/test/Transforms/DeadStoreElimination/captures-ret-only.ll
A llvm/test/Transforms/DeadStoreElimination/captures.ll
Log Message:
-----------
[CaptureTracking][AA] Only consider provenance captures (#130777)
For the purposes of alias analysis, we should only consider provenance
captures, not address captures. To support this, change (or add)
CaptureTracking APIs to accept a Mask and StopFn argument. The Mask
determines which components we are interested in (for AA that would be
Provenance).
The StopFn determines when we can abort the walk early. Currently, we
want to do this as soon as any of the components in the Mask is
captured. The purpose of making this a separate predicate is that in the
future we will also want to distinguish between capturing full
provenance and read-only provenance. In that case, we can only stop
early once full provenance is captured. The earliest escape analysis
does not get a StopFn, because it must always inspect all captures.
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