Skip to content

Commit bd795ea

Browse files
committed
CalleeAnalysis: no need to provide the PassManager to the getMemBehaviorFn
A NFC simplification
1 parent 6d01f25 commit bd795ea

File tree

4 files changed

+6
-10
lines changed

4 files changed

+6
-10
lines changed

SwiftCompilerSources/Sources/Optimizer/Analysis/CalleeAnalysis.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,9 @@ public struct CalleeAnalysis {
2323
return inst.instruction.isDeinitBarrier(bca.analysis)
2424
},
2525
// getMemBehaviorFn
26-
{ (bridgedCtxt: BridgedPassContext, bridgedApply: BridgedInstruction, observeRetains: Bool) -> swift.MemoryBehavior in
27-
let context = FunctionPassContext(_bridged: bridgedCtxt)
26+
{ (bridgedApply: BridgedInstruction, observeRetains: Bool, bca: BridgedCalleeAnalysis) -> swift.MemoryBehavior in
2827
let apply = bridgedApply.instruction as! ApplySite
29-
let e = context.calleeAnalysis.getSideEffects(of: apply)
28+
let e = bca.analysis.getSideEffects(of: apply)
3029
return e.getMemBehavior(observeRetains: observeRetains)
3130
}
3231
)

include/swift/SILOptimizer/Analysis/BasicCalleeAnalysis.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,6 @@ class CalleeCache {
183183

184184
class BasicCalleeAnalysis : public SILAnalysis {
185185
SILModule &M;
186-
SILPassManager *pm = nullptr;
187186
std::unique_ptr<CalleeCache> Cache;
188187

189188
public:
@@ -197,8 +196,6 @@ class BasicCalleeAnalysis : public SILAnalysis {
197196
return S->getKind() == SILAnalysisKind::BasicCallee;
198197
}
199198

200-
virtual void initialize(SILPassManager *pm) override { this->pm = pm; }
201-
202199
/// Invalidate all information in this analysis.
203200
virtual void invalidate() override {
204201
Cache.reset();

include/swift/SILOptimizer/OptimizerBridging.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ struct BridgedCalleeAnalysis {
6262

6363
typedef bool (* _Nonnull IsDeinitBarrierFn)(BridgedInstruction, BridgedCalleeAnalysis bca);
6464
typedef swift::MemoryBehavior (* _Nonnull GetMemBehvaiorFn)(
65-
BridgedPassContext context, BridgedInstruction apply, bool observeRetains);
65+
BridgedInstruction apply, bool observeRetains, BridgedCalleeAnalysis bca);
6666

6767
static void registerAnalysis(IsDeinitBarrierFn isDeinitBarrierFn,
6868
GetMemBehvaiorFn getEffectsFn);

lib/SILOptimizer/Analysis/BasicCalleeAnalysis.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -352,9 +352,9 @@ void BridgedCalleeAnalysis::registerAnalysis(IsDeinitBarrierFn instructionIsDein
352352
MemoryBehavior BasicCalleeAnalysis::
353353
getMemoryBehavior(ApplySite as, bool observeRetains) {
354354
if (getMemBehvaiorFunction) {
355-
auto b = getMemBehvaiorFunction({pm->getSwiftPassInvocation()},
356-
{as.getInstruction()->asSILNode()},
357-
observeRetains);
355+
auto b = getMemBehvaiorFunction({as.getInstruction()->asSILNode()},
356+
observeRetains,
357+
{this});
358358
return (MemoryBehavior)b;
359359
}
360360
return MemoryBehavior::MayHaveSideEffects;

0 commit comments

Comments
 (0)