This is an archive of the discontinued LLVM Phabricator instance.

FuncSpec] Invalidate analyses when deleting a fully specialised function
ClosedPublic

Authored by chill on Nov 29 2022, 4:16 AM.

Details

Summary

Deleting a fully specialised function left dangling pointers in
FunctionAnalysisManager, which causes an internal compiler error
when the function's storage was reused.

Fixes bug #58759.

Diff Detail

Event Timeline

chill created this revision.Nov 29 2022, 4:16 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 29 2022, 4:16 AM
chill requested review of this revision.Nov 29 2022, 4:16 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 29 2022, 4:16 AM
chill edited the summary of this revision. (Show Details)Nov 29 2022, 4:17 AM
chill added reviewers: ChuanqiXu, SjoerdMeijer, labrinea.
chill added a comment.Nov 29 2022, 4:23 AM

Ideally, now that we have the FAM in FunctionSpecializer I would like to also remove the callbacks (GetTLI, GetTTi, etc) and also remove the Legacy pass manager support entirely
from SCCP/IPSCCP/FuncSpec. Unfortunately, those callbacks are needed by getInlineCost and a few other functions down the call chain.

ChuanqiXu accepted this revision.Nov 29 2022, 5:56 PM

LGTM. And it should be good to remove the Legacy PMs in separate patches.

This revision is now accepted and ready to land.Nov 29 2022, 5:56 PM
This revision was landed with ongoing or failed builds.Nov 30 2022, 10:58 AM
This revision was automatically updated to reflect the committed changes.