This is an archive of the discontinued LLVM Phabricator instance.

[PartialInlining] introduce an internal option to add partial inlining pass in the pipeline (off by default for now)
ClosedPublic

Authored by davidxl on May 20 2017, 9:30 PM.

Details

Summary

This is the final preparation step to finally turn on partial inlining in one of the default optimization pipeline.

It is off by default for now, so there is no functional change to the compiler behavior for now. Adding the option make it more convenient for the feature to be widely tested before being enabled.

Diff Detail

Event Timeline

davidxl created this revision.May 20 2017, 9:30 PM
davide edited edge metadata.May 22 2017, 9:02 AM

Can you make the same change in the future pass manager pipeline?

davidxl updated this revision to Diff 99782.May 22 2017, 9:20 AM

added internal option for new PM as well.

davide accepted this revision.May 22 2017, 9:25 AM

I'm not entirely sure whether you need cl::ZeroOrMore. Few comments, with that, LG.
Feel free to submit once addressed without another round trip.

Thanks!

lib/Passes/PassBuilder.cpp
153–156 ↗(On Diff #99782)

For consistency with other options (i.e. GVNHoist), I'd use enable-npm-*

lib/Transforms/IPO/PassManagerBuilder.cpp
47–50

Same here, enable-partial-inlining.

This revision is now accepted and ready to land.May 22 2017, 9:25 AM
This revision was automatically updated to reflect the committed changes.