This is an archive of the discontinued LLVM Phabricator instance.

Make sure that indexing is done before clearing DIE info.
ClosedPublic

Authored by phlav on May 27 2016, 10:54 AM.

Details

Summary

"ClearDIEs()" was being called too soon, before everyone was done using the DIEs.

This fix delays the calls to ::ClearDIEs() until all compile units have been indexed.

1 - Call "::ExtractDIEsIfNeeded()" on all compile units on separate threads. See if each CU has the DIEs parsed and remember this.
2 - Index all compile units on separate threads.
3 - Clear any DIEs in any compile units that didn't have their DIEs parsed after all compile units have been indexed.

Diff Detail

Event Timeline

phlav updated this revision to Diff 58661.May 27 2016, 10:54 AM
phlav retitled this revision from to Make sure that indexing is done before clearing DIE info..
phlav updated this object.
phlav added reviewers: lldb-commits, clayborg.
phlav added a subscriber: phlav.
mamai added a subscriber: mamai.May 27 2016, 12:46 PM
clayborg accepted this revision.May 27 2016, 2:04 PM
clayborg edited edge metadata.

Looks good.

This revision is now accepted and ready to land.May 27 2016, 2:04 PM
This revision was automatically updated to reflect the committed changes.