This is an archive of the discontinued LLVM Phabricator instance.

[ThinLTO] Remove GlobalValueInfo class from index
ClosedPublic

Authored by tejohnson on Apr 23 2016, 4:34 PM.

Details

Summary

Remove the GlobalValueInfo and change the ModuleSummaryIndex to directly
reference summary objects. The info structure was there to support lazy
parsing of the combined index summary objects, which is no longer
needed and not supported.

Diff Detail

Repository
rL LLVM

Event Timeline

tejohnson updated this revision to Diff 54791.Apr 23 2016, 4:34 PM
tejohnson retitled this revision from to [ThinLTO] Remove GlobalValueInfo class from index.
tejohnson updated this object.
tejohnson added a reviewer: mehdi_amini.
tejohnson added a subscriber: llvm-commits.
mehdi_amini edited edge metadata.Apr 23 2016, 4:41 PM

Looks like a good cleanup!

Could we change the references in the bitcode from being "offset based" to be an "id" (simple increment)?

In D19462#410132, @joker.eph wrote:

Looks like a good cleanup!

Could we change the references in the bitcode from being "offset based" to be an "id" (simple increment)?

I think that would be a good idea to make things more consistent between the permodule and combined indexes. I was just looking at that, and it is straightforward, but I'd prefer to do that as a follow on (can do that right after this one goes in). It will mean changing the bitcode format (remove the summary offset from the combined VST entries and adding a value id to the combined summary entries), and I'd prefer to keep this change just to the internal data structures and not mix in bitcode changes in the same patch. Does that sound ok?

mehdi_amini accepted this revision.Apr 23 2016, 8:16 PM
mehdi_amini edited edge metadata.

LGTM

This revision is now accepted and ready to land.Apr 23 2016, 8:16 PM
This revision was automatically updated to reflect the committed changes.