Page MenuHomePhabricator

Eric (Eric Leese)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 17 2020, 8:52 AM (68 w, 10 h)

Recent Activity

Aug 2 2021

Eric added a comment to D107300: Use filename instead of index in test.

Thanks for the quick review! Please commit it as I do not have permission to do that.

Aug 2 2021, 11:14 AM · Restricted Project
Eric updated the summary of D107300: Use filename instead of index in test.
Aug 2 2021, 11:12 AM · Restricted Project
Eric requested review of D107300: Use filename instead of index in test.
Aug 2 2021, 10:58 AM · Restricted Project

Jul 30 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Is arm hardware necessary to test this, or can the test be modified to cross-compile to arm to see what is going on? Is there a way to determine what build target the test bot is using?

Jul 30 2021, 1:11 PM · Restricted Project
Eric added a comment to D100299: Be lazier about loading .dwo files.

Would it make sense to turn the split-optimized test back into an x86 only test, or just leave it out of the change as it's not actually testing a code path that this changed?

Jul 30 2021, 11:37 AM · Restricted Project
Eric requested review of D107165: Support moving support files instead of copy.
Jul 30 2021, 7:39 AM · Restricted Project

Jul 29 2021

Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.

Restoring previous diff.

Jul 29 2021, 2:02 PM
Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

Argh. Okay, I need to close this tab.

Jul 29 2021, 1:59 PM
Eric added inline comments to D100299: Be lazier about loading .dwo files.
Jul 29 2021, 1:58 PM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 29 2021, 1:57 PM · Restricted Project
Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.
Jul 29 2021, 12:57 PM
Eric added a comment to D100299: Be lazier about loading .dwo files.

Jan, let me know if there's anything else I should change. Also, I believe I will need someone else to actually submit this for me.

Jul 29 2021, 9:17 AM · Restricted Project

Jul 28 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

The only changed behavior is CompileUnit::Dump(), which I've changed to distinguish between an uncalculated languange ("<not loaded>") and an unspecified one ("unknown"). No other API should behave differently, as GetLanguage() will trigger parsing of the non-skeleton unit, and no API would be parsing language information out of Dump() output. With my latest update there is also no effect if not using -gsplit-dwarf, and this change substantially benefits those using -gsplit-dwarf. In practice I don't see a compelling user story where this would be a regression.

Jul 28 2021, 5:37 PM · Restricted Project
Eric added a comment to D100299: Be lazier about loading .dwo files.

Jan, I don't think there's any point in checking for the case when the dwo is already loaded as that wouldn't be triggered if the CompileUnit hasn't already been created. However I added a check for the case where there is no dwo because it wasn't compiled with -gsplit-dwarf. Note that the debug-types-address-ranges.s test case no longer requires modification in this version. Let me know if you have any further nitpicks for SymbolFileDWARF::ParseCompileUnit. Nothing else required changes since your last review. I'm also happy to bring back the previous version with your nitpicks fixed if you'd prefer.

Jul 28 2021, 2:34 PM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.

Now eagerly evaluates the language if there is no dwo. Lazy evaluation only happens for split dwarf case.

Jul 28 2021, 2:17 PM · Restricted Project

Jul 27 2021

Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 27 2021, 3:21 PM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 27 2021, 3:15 PM · Restricted Project
Eric added inline comments to D100299: Be lazier about loading .dwo files.
Jul 27 2021, 11:45 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 27 2021, 11:45 AM · Restricted Project

Jul 26 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

The "<not loaded>" message would never be seen without the changes in this patch, so I don't think it makes sense to do independently.

Jul 26 2021, 12:55 PM · Restricted Project
Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

Yes I did, thank you. This patch will probably be abandoned anyway if https://reviews.llvm.org/D106355 is accepted.

Jul 26 2021, 12:49 PM
Eric updated the diff for D100299: Be lazier about loading .dwo files.

Now distinguishing between unknown language and not loaded.

Jul 26 2021, 12:47 PM · Restricted Project
Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.

Language in Dump now distinguishes between unknown and not loaded.

Jul 26 2021, 9:40 AM
Eric added a comment to D100299: Be lazier about loading .dwo files.

GetLanguage has now a bug for -gsplit-dwarf as it will return eLanguageTypeUnknown if called on the skeleton - which could affect ManualDWARFIndex::IndexUnitImpl but then it is using LanguageType cu_language only for cu_language == eLanguageTypeObjC. Which is needed only on OSX and OSX does not have -gsplit-dwarf. GetLanguage should IMO force loading of the DWO.

Jul 26 2021, 9:19 AM · Restricted Project
Eric added a comment to D100299: Be lazier about loading .dwo files.

So dump always passes a the skeleton unit to "GetLanguage" or it already makes a dynamic choice based on whether or not the dwo has already been loaded?

Jul 26 2021, 9:09 AM · Restricted Project

Jul 23 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Updated and hopefully a little simpler now.

Jul 23 2021, 8:39 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 23 2021, 8:33 AM · Restricted Project

Jul 21 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Thanks for your feedback. I was off for a long weekend but will finish fixing up this change tomorrow.

Jul 21 2021, 10:46 PM · Restricted Project
Eric added a comment to D106194: Tests for: D100299: Be lazier about loading .dwo files.

Thank you for helping me with this! Do you want me to merge these changes into my own CL or do you want to check this in yourself?

Jul 21 2021, 3:04 PM · Restricted Project

Jul 14 2021

Eric added inline comments to D100299: Be lazier about loading .dwo files.
Jul 14 2021, 9:30 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Jul 14 2021, 9:30 AM · Restricted Project

Jul 8 2021

Eric added reviewers for D100299: Be lazier about loading .dwo files: jankratochvil, tberghammer.

Jan or Tamas, can either of you take a look?

Jul 8 2021, 8:57 AM · Restricted Project

Jul 6 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Ping on this

Jul 6 2021, 2:55 AM · Restricted Project

May 17 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Can I get a review on this please?

May 17 2021, 9:37 AM · Restricted Project
Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

This change is turning out to be less important as we seem to usually avoid building a full manual index if everything it built with -gpubnames. However the other change (https://reviews.llvm.org/D100299) is still necessary to prevent eagerly loading all non-skeleton information. Let's focus on that change and I will revisit this one if it turns out customers are still hitting the manual fallback.

May 17 2021, 9:30 AM

Apr 30 2021

Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

My plan for testing this is not panning out, as lldb provides no error when it fails to load symbols and no way to find out what symbols have been loaded or have been attempted, so there's no way to test that it is behaving lazily. Is there any particular thing you want me to test? Many tests are already hitting this code.

Apr 30 2021, 9:43 AM

Apr 28 2021

Eric added inline comments to D100771: support on-demand indexing in ManualDWARFIndex.
Apr 28 2021, 12:53 PM

Apr 23 2021

Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.
Apr 23 2021, 5:23 AM

Apr 22 2021

Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.
Apr 22 2021, 8:36 AM
Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

I'll get started on the test, but I'll probably want to use the same test file to test both CLs. What I want to do is write a case that references two dwos, only one of which actually exists, so that I can verify that certain queries can be done without attempting to load the other one.

Apr 22 2021, 8:35 AM
Eric added a reviewer for D100771: support on-demand indexing in ManualDWARFIndex: kimanh.
Apr 22 2021, 3:26 AM
Eric added a reviewer for D100299: Be lazier about loading .dwo files: kimanh.
Apr 22 2021, 3:26 AM · Restricted Project
Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.
Apr 22 2021, 2:32 AM
Eric added a comment to D100771: support on-demand indexing in ManualDWARFIndex.

Before I review this in detail, I'd like to understand your use case better. Do I understand correctly that you want to open a binary, and the _only_ thing you want to do with it is look up a bunch of variables?

Apr 22 2021, 1:40 AM
Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.

Changed contract of DWARFIndex::GetGlobalVariables to take a non-const reference to the skeleton unit and changed each implementation to get the skeleton unit. This allowed further changes to cache by offset using existing m_units_to_avoid rather than cache by dwo id.

Apr 22 2021, 1:23 AM

Apr 20 2021

Eric added a comment to D100299: Be lazier about loading .dwo files.

Let me know if I should request this review from someone else. It is important for scalability, as this change, in combination with my follow-up change (https://reviews.llvm.org/D100771) eliminate the need to load all .dwo files in the most common debugging scenarios.

Apr 20 2021, 8:38 AM · Restricted Project
Eric updated the diff for D100771: support on-demand indexing in ManualDWARFIndex.

Rebased to not depend on other cl

Apr 20 2021, 8:25 AM

Apr 19 2021

Eric added reviewers for D100771: support on-demand indexing in ManualDWARFIndex: labath, dblaikie, pfaffe.

I can combine this with https://reviews.llvm.org/D100299 if it would make reviewing easier.

Apr 19 2021, 9:13 AM
Eric requested review of D100771: support on-demand indexing in ManualDWARFIndex.
Apr 19 2021, 9:07 AM

Apr 13 2021

Eric added reviewers for D100299: Be lazier about loading .dwo files: labath, dblaikie.
Apr 13 2021, 8:48 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Apr 13 2021, 8:35 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.

Not sure what's going on with clang-tidy, but those headers still exist and in any case I didn't add them.

Apr 13 2021, 8:33 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.

Removing header files to make clang-tidy happy

Apr 13 2021, 3:41 AM · Restricted Project

Apr 12 2021

Eric updated the diff for D100299: Be lazier about loading .dwo files.
Apr 12 2021, 8:35 AM · Restricted Project
Eric updated the diff for D100299: Be lazier about loading .dwo files.
Apr 12 2021, 6:43 AM · Restricted Project
Eric requested review of D100299: Be lazier about loading .dwo files.
Apr 12 2021, 4:22 AM · Restricted Project

Feb 24 2021

Eric updated the diff for D96520: Reduce time spent parsing support files.

Ran clang format

Feb 24 2021, 9:54 AM · Restricted Project
Eric added a comment to D96520: Reduce time spent parsing support files.

I've updated the change to make the cacheing correct. I'm seeing the same query time improvement as with the faulty version. Updated profile:

Feb 24 2021, 9:33 AM · Restricted Project
Eric updated the diff for D96520: Reduce time spent parsing support files.

Fixed cacheing behavior to key by include path rather than include directory index.

Feb 24 2021, 9:19 AM · Restricted Project

Feb 23 2021

Eric updated subscribers of D96520: Reduce time spent parsing support files.

Just got back from break. Is there a standard benchmarking suite I should
use for lldb? I have been benchmarking using our own tests on the Chrome
DevTools C++ extension, which uses lldb to read dwarf symbols for wasm
binaries.

Feb 23 2021, 9:27 AM · Restricted Project

Feb 11 2021

Eric requested review of D96520: Reduce time spent parsing support files.
Feb 11 2021, 9:10 AM · Restricted Project

Nov 30 2020

Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 30 2020, 12:47 PM · Restricted Project
Eric added a comment to D91803: [lld] Use -1 as tombstone value for discarded code ranges.

Hope everyone had a nice Thanksgiving break! Are any further changes necessary here?

Nov 30 2020, 9:35 AM · Restricted Project

Nov 25 2020

Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 25 2020, 4:46 AM · Restricted Project

Nov 24 2020

Eric added a comment to D91803: [lld] Use -1 as tombstone value for discarded code ranges.

Okay, I've changed it to call getTombstone everywhere.

Nov 24 2020, 3:11 AM · Restricted Project
Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 24 2020, 3:10 AM · Restricted Project

Nov 23 2020

Eric added inline comments to D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 23 2020, 7:26 AM · Restricted Project
Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 23 2020, 7:24 AM · Restricted Project
Eric added inline comments to D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 23 2020, 5:57 AM · Restricted Project
Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 23 2020, 5:57 AM · Restricted Project

Nov 20 2020

Eric added a comment to D91803: [lld] Use -1 as tombstone value for discarded code ranges.

Hope this looks better!

Nov 20 2020, 9:23 AM · Restricted Project
Eric updated the diff for D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 20 2020, 9:20 AM · Restricted Project

Nov 19 2020

Eric requested review of D91803: [lld] Use -1 as tombstone value for discarded code ranges.
Nov 19 2020, 9:28 AM · Restricted Project

Aug 20 2020

Eric added reviewers for D86090: Make DWARFExpression::GetLocationExpression public: labath, JDevlieghere.

Context for this: I am working on an lldb-based debugging tool that needs to be able to generate code to evaluate a dwarf expression without evaluating it. I need access to this method to be able to handle location lists.

Aug 20 2020, 5:09 AM · Restricted Project

Aug 19 2020

Eric added a reviewer for D86090: Make DWARFExpression::GetLocationExpression public: dschuff.
Aug 19 2020, 1:55 AM · Restricted Project

Aug 17 2020

Eric requested review of D86090: Make DWARFExpression::GetLocationExpression public.
Aug 17 2020, 9:38 AM · Restricted Project