This is an archive of the discontinued LLVM Phabricator instance.

[FuncSpec] Constant propagate multiple arguments for recursive functions.
ClosedPublic

Authored by labrinea on Mar 30 2022, 11:43 AM.

Details

Summary

This fixes a TODO in constantArgPropagation() to make it feature complete. However, I do find myself in agreement with the review comments in https://reviews.llvm.org/D106426. I don't think we should pursue specializing such recursive functions as the code size increase becomes linear to max-iters. Compiling the modified test just with -O3 (no function specialization) generates the same code.

Diff Detail

Event Timeline

labrinea created this revision.Mar 30 2022, 11:43 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 30 2022, 11:43 AM
labrinea requested review of this revision.Mar 30 2022, 11:43 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 30 2022, 11:43 AM
This revision is now accepted and ready to land.Mar 30 2022, 10:56 PM

Thanks for fixing. LGTM too.

This revision was landed with ongoing or failed builds.Mar 31 2022, 5:08 AM
This revision was automatically updated to reflect the committed changes.