This is an archive of the discontinued LLVM Phabricator instance.

[ThinLTO] Enable ThinLTO WholeProgramDevirt and LowerTypeTests in new PM
ClosedPublic

Authored by tejohnson on Jul 17 2018, 9:34 AM.

Details

Summary

Enable these passes for CFI and WPD in ThinLTO and LTO with the new pass
manager. Add a couple of tests for both PMs based on the clang tests
tools/clang/test/CodeGen/thinlto-distributed-cfi*.ll, but just test
through llvm-lto2 and not with distributed ThinLTO.

Diff Detail

Repository
rL LLVM

Event Timeline

tejohnson created this revision.Jul 17 2018, 9:34 AM
pcc accepted this revision.Jul 18 2018, 2:54 PM

LGTM

lib/Passes/PassBuilder.cpp
927 ↗(On Diff #155903)

There's no need to pass ExportSummary into this function as it is unused (and logically can't be used because the ThinLTO phase should not be exporting anything). Similarly for ImportSummary into buildLTODefaultPipeline.

This revision is now accepted and ready to land.Jul 18 2018, 2:54 PM
tejohnson marked an inline comment as done.Jul 19 2018, 7:56 AM
tejohnson updated this revision to Diff 156271.Jul 19 2018, 7:56 AM

Address comment

This revision was automatically updated to reflect the committed changes.