[opt] dead thin to thick in mand combine #30475
Open
+58
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch supports basic elimination of dead thick to thin function refs in mandatory combine. With #30463 and store elimination more complex function bodies [1] could also be fully optimized away. This patch is taken from #28536.
[1] this is an example of a function I pulled almost directly from silgen. I have verified that after applying this patch, #30463, and a store elimination patch all loads, stores, and closures are able to be removed. That being said, it may not be worth the extra Onone compile time.