You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tentative fix for not removing newly internal functions
Functions are not removed even when made internal by DXILFinalizeLinkage
The removal code is called from alwaysinliner and globalopt, which are
invoked too early to remove functions made internal by this pass.
This adds a check similar to that in alwaysinliner that removes
trivially dead functions after being marked internal. It refactors
that code a bit to make it simpler including reversing what is
stored in the work queue.
Not sure how to test this. To test all the interactions between
alwaysinliner, DXILfinalizelinkage and any other optimization passes,
it kinda needs to be end-to-end.
Fixes#106139
0 commit comments