Attributor: Preserve the function analyses in the light module pass (#240714)
AttributorLightPass preserved FunctionAnalysisManagerCGSCCProxy, which
is meaningless for a module pass, instead of
FunctionAnalysisManagerModuleProxy. When the pass changed anything,
the module proxy was invalidated, which clears all cached function
analyses, so e.g. IPSCCP recomputed the assumption cache, TTI and TLI
of every function. The pass neither adds nor removes functions, and it
already invalidates the analyses of the functions it changes.
CTMark instructions:u with -attributor-enable=light changes by O3
-0.02%,
ThinLTO -0.10% (kimwitu++ -0.50%, sqlite3 -0.38%).
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>