Page MenuHomePhabricator

bulbazord (Alex Langford)
:3

Projects

User does not belong to any projects.

User Details

User Since
Dec 1 2020, 2:41 PM (59 w, 3 d)

Recent Activity

Nov 29 2021

bulbazord added a comment to D114668: [lldb][NFC] Move generic DWARFASTParser code out of Clang-specific code.

I think breaking it out of the Clang-specific class makes sense if we want LLDB to be more language-agnostic. Do you have an idea of what bits of DWARFASTParserClang can be moved out other than ParseChildArrayInfo and GetAccessTypeFromDWARF (from the patch on top of this)? What is your end-goal with this decoupling? I assume you want to work towards supporting languages non-clang-based languages but I'm curious about the motivation.

Nov 29 2021, 2:51 PM · Restricted Project
bulbazord accepted D114719: [lldb][NFC] Move non-clang specific method to the generic DWARF Parser.

This makes sense to me. Out of curiosity, do you have plans to use this for non-clang-based languages?

Nov 29 2021, 2:44 PM · Restricted Project

Nov 12 2021

bulbazord added a comment to D113789: Add the ability to cache information for a module between debugger instances..

This patch effectively introduces a file format to cache lldb internal state. While the tests and the code do give some information for what it looks like, some documentation about this format would be nice.

Nov 12 2021, 1:56 PM · Restricted Project

Nov 11 2021

bulbazord committed rGac33e65d2169: [lldb][NFC] Delete commented out code in AddressRange (authored by bulbazord).
[lldb][NFC] Delete commented out code in AddressRange
Nov 11 2021, 3:43 PM

Oct 18 2021

bulbazord accepted D111931: [lldb] Filter duplicates in Target::GetScratchTypeSystems.

Makes sense to me!

Oct 18 2021, 11:06 AM · Restricted Project

Sep 29 2021

bulbazord closed D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin.

385b2189cc44

Sep 29 2021, 1:19 PM · Restricted Project
bulbazord committed rG385b2189cc44: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin (authored by bulbazord).
[lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin
Sep 29 2021, 11:41 AM

Sep 27 2021

bulbazord removed a reviewer for D110477: [LLDB] Fix objc_clsopt_v16_t struct: bulbazord.

Unfortunately I'm probably not the right person for this. @JDevlieghere may be the right person, and if not, he can probably point you to the right people.

Sep 27 2021, 1:30 PM · Restricted Project
bulbazord added a comment to D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin.

friendly ping! :)

Sep 27 2021, 10:49 AM · Restricted Project

Sep 23 2021

bulbazord updated the diff for D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin.

Rebasing

Sep 23 2021, 11:42 AM · Restricted Project

Sep 22 2021

bulbazord committed rG43552651319e: [lldb] Remove IRExecutionUnit::CollectFallbackNames (authored by bulbazord).
[lldb] Remove IRExecutionUnit::CollectFallbackNames
Sep 22 2021, 11:04 AM
bulbazord closed D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames.
Sep 22 2021, 11:04 AM · Restricted Project

Sep 21 2021

bulbazord added a comment to D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames.

I think this looks fine, just verify that this in a C++ case an expression with an extern "C" function call works fine e.g.

extern "C" {
  int g() { return 10;}
}

int main() {
   return g();  // break here and run expr g()
}

I discovered the other day that we mangle extern "C" functions in C++ mode and I have a fix I wanted to run by everyone but I have not had a chance to do it yet.

So this case get resolved in CollectFallbackNames(...).

Sep 21 2021, 4:04 PM · Restricted Project
bulbazord added a reviewer for D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin: shafik.
Sep 21 2021, 9:39 AM · Restricted Project
bulbazord added a reviewer for D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames: shafik.
Sep 21 2021, 9:39 AM · Restricted Project

Sep 20 2021

bulbazord added inline comments to D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin.
Sep 20 2021, 5:06 PM · Restricted Project
bulbazord requested review of D110115: [lldb] Remove Expression's dependency on CPlusPlusLanguagePlugin.
Sep 20 2021, 4:59 PM · Restricted Project
bulbazord committed rGc4a406bbd0fe: [lldb][NFC] Remove outdated FIXME (authored by bulbazord).
[lldb][NFC] Remove outdated FIXME
Sep 20 2021, 11:45 AM

Sep 16 2021

bulbazord added a comment to D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames.

Looks fine to me. I am assuming the full test suite passes with this change in place?

Sep 16 2021, 2:55 PM · Restricted Project
bulbazord added reviewers for D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames: jingham, teemperor, JDevlieghere.
Sep 16 2021, 2:40 PM · Restricted Project
bulbazord requested review of D109928: [lldb] Remove IRExecutionUnit::CollectFallbackNames.
Sep 16 2021, 2:32 PM · Restricted Project
bulbazord committed rGa65f6aafe2d3: [lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings (authored by bulbazord).
[lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings
Sep 16 2021, 1:31 PM
bulbazord closed D109785: [lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings.
Sep 16 2021, 1:31 PM · Restricted Project

Sep 15 2021

bulbazord added inline comments to D109785: [lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings.
Sep 15 2021, 4:31 PM · Restricted Project

Sep 14 2021

bulbazord requested review of D109785: [lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings.
Sep 14 2021, 1:53 PM · Restricted Project
bulbazord added a reviewer for D109779: [LLDB] [Minidump] Fix format string warnings on Windows: MaskRay.

Adding MaskRay who fixed something similar to this yesterday.

Sep 14 2021, 1:46 PM · Restricted Project

Sep 13 2021

bulbazord committed rGc4fa2c8aa493: [lldb] Fix warning in MinidumpFileBuilder.cpp (authored by bulbazord).
[lldb] Fix warning in MinidumpFileBuilder.cpp
Sep 13 2021, 10:42 AM
bulbazord added a reviewer for D109633: [lldb-vscode] Fix focus thread when previous thread exits: wallace.
Sep 13 2021, 10:03 AM · Restricted Project

Sep 10 2021

bulbazord committed rG8dae35527fb7: [lldb] Remove unused typedefs from lldb-forward.h (authored by bulbazord).
[lldb] Remove unused typedefs from lldb-forward.h
Sep 10 2021, 2:17 PM
bulbazord accepted D109600: [lldb] Remove PluginInterface::GetPluginVersion.

Thank you!

Sep 10 2021, 10:00 AM · Restricted Project

Sep 8 2021

bulbazord committed rG303b27f21b98: [lldb] Delete IRExecutionUnit::SearchSpec (authored by bulbazord).
[lldb] Delete IRExecutionUnit::SearchSpec
Sep 8 2021, 11:29 AM
bulbazord closed D109384: [lldb] Delete IRExecutionUnit::SearchSpec.
Sep 8 2021, 11:28 AM · Restricted Project

Sep 7 2021

bulbazord added a reviewer for D109384: [lldb] Delete IRExecutionUnit::SearchSpec: aprantl.
Sep 7 2021, 4:55 PM · Restricted Project
bulbazord requested review of D109384: [lldb] Delete IRExecutionUnit::SearchSpec.
Sep 7 2021, 12:28 PM · Restricted Project

Aug 31 2021

bulbazord committed rG862a311301f5: [lldb] Tighten lock in Language::ForEach (authored by bulbazord).
[lldb] Tighten lock in Language::ForEach
Aug 31 2021, 3:47 PM
bulbazord closed D109013: [lldb] Tighten lock in Language::ForEach.
Aug 31 2021, 3:47 PM · Restricted Project
bulbazord added a comment to D109013: [lldb] Tighten lock in Language::ForEach.

For further context, I encountered this when debugging the test failures from D108229. BreakpointResolverName::AddNameLookup constructs a Module::LookupInfo in a callback that it passes to Language::ForEach.

Aug 31 2021, 11:55 AM · Restricted Project
bulbazord requested review of D109013: [lldb] Tighten lock in Language::ForEach.
Aug 31 2021, 11:53 AM · Restricted Project

Aug 30 2021

bulbazord abandoned D108395: [lldb] Delete IRExecutionUnit::CollectCandidateCPlusPlusNames.
Aug 30 2021, 3:10 PM · Restricted Project
bulbazord added a comment to D108395: [lldb] Delete IRExecutionUnit::CollectCandidateCPlusPlusNames.

Embarassingly I found out my test environment was not working correctly, this does indeed fail some tests. I will upload a patch to actually refactor it :)

Aug 30 2021, 3:10 PM · Restricted Project

Aug 25 2021

bulbazord added a comment to D108229: [lldb] Refactor Module::LookupInfo constructor.

FYI (you may have have already noticed) this causes some merge conflicts in swift-lldb. It would be great if we could work together to figure out how to best resolve them.

Aug 25 2021, 6:01 PM · Restricted Project

Aug 24 2021

bulbazord added a reverting change for rGcd2134e42aa7: [lldb] Refactor Module::LookupInfo constructor: rGce512d5c2af5: Revert "[lldb] Refactor Module::LookupInfo constructor".
Aug 24 2021, 2:53 PM
bulbazord committed rGce512d5c2af5: Revert "[lldb] Refactor Module::LookupInfo constructor" (authored by bulbazord).
Revert "[lldb] Refactor Module::LookupInfo constructor"
Aug 24 2021, 2:53 PM
bulbazord added a reverting change for D108229: [lldb] Refactor Module::LookupInfo constructor: rGce512d5c2af5: Revert "[lldb] Refactor Module::LookupInfo constructor".
Aug 24 2021, 2:53 PM · Restricted Project
bulbazord committed rGcd2134e42aa7: [lldb] Refactor Module::LookupInfo constructor (authored by bulbazord).
[lldb] Refactor Module::LookupInfo constructor
Aug 24 2021, 1:54 PM
bulbazord closed D108229: [lldb] Refactor Module::LookupInfo constructor.
Aug 24 2021, 1:54 PM · Restricted Project
bulbazord added inline comments to D108229: [lldb] Refactor Module::LookupInfo constructor.
Aug 24 2021, 11:55 AM · Restricted Project

Aug 23 2021

bulbazord committed rG23c19395c085: [lldb][NFC] Remove unused method RichManglingContext::IsFunction (authored by bulbazord).
[lldb][NFC] Remove unused method RichManglingContext::IsFunction
Aug 23 2021, 11:46 AM
bulbazord added a comment to D108229: [lldb] Refactor Module::LookupInfo constructor.

ping!

Aug 23 2021, 11:24 AM · Restricted Project

Aug 20 2021

bulbazord added a comment to D108395: [lldb] Delete IRExecutionUnit::CollectCandidateCPlusPlusNames.

I'm very supportive of the idea that we delete everything that isn't tested :) (and I'm only partly joking here).

I can sympathize, I'm only partly serious with this change! :D

Aug 20 2021, 1:32 PM · Restricted Project

Aug 19 2021

bulbazord requested review of D108395: [lldb] Delete IRExecutionUnit::CollectCandidateCPlusPlusNames.
Aug 19 2021, 11:41 AM · Restricted Project
bulbazord committed rG4947f6d8bca1: [lldb][NFC] Remove unused header include (authored by bulbazord).
[lldb][NFC] Remove unused header include
Aug 19 2021, 11:12 AM

Aug 18 2021

bulbazord requested review of D108335: [lldb] Move UnixSignals subclasses to lldbTarget.
Aug 18 2021, 3:11 PM · Restricted Project
bulbazord updated the diff for D108229: [lldb] Refactor Module::LookupInfo constructor.

Delete now unused variable

Aug 18 2021, 10:20 AM · Restricted Project

Aug 17 2021

bulbazord requested review of D108229: [lldb] Refactor Module::LookupInfo constructor.
Aug 17 2021, 11:55 AM · Restricted Project

Aug 3 2021

bulbazord committed rGd2b2ab4e1c34: [lldb] Further constrain a test that fails without python enabled (authored by bulbazord).
[lldb] Further constrain a test that fails without python enabled
Aug 3 2021, 11:58 AM

Aug 2 2021

bulbazord accepted D107295: [lldb] Use a struct to pass function search options to Module::FindFunction.

LGTM!

Aug 2 2021, 11:36 AM · Restricted Project
bulbazord accepted D107206: [lldb] Refactor IRExecutionUnit::FindInSymbols (NFC).

Yeah this is a lot cleaner. Thanks for taking the time to refactor this.

Aug 2 2021, 11:15 AM · Restricted Project
bulbazord added a comment to D107295: [lldb] Use a struct to pass function search options to Module::FindFunction.

I like the idea! Could be a little cleaner imo, but shouldn't be a blocker if others don't think so.

Aug 2 2021, 11:02 AM · Restricted Project

Jul 29 2021

bulbazord committed rG993220a99cce: [lldb] Remove CPlusPlusLanguage from Mangled (authored by bulbazord).
[lldb] Remove CPlusPlusLanguage from Mangled
Jul 29 2021, 2:14 PM
bulbazord closed D105215: [lldb] Remove CPlusPlusLanguage from Mangled.
Jul 29 2021, 2:14 PM · Restricted Project

Jul 28 2021

bulbazord added a comment to D105215: [lldb] Remove CPlusPlusLanguage from Mangled.

Thanks for the reviews and comments! It's kind of unfortunate that LLDB is like this right now but I believe this patch is a step in the right direction. :)

Jul 28 2021, 12:37 PM · Restricted Project

Jul 27 2021

bulbazord added inline comments to D105215: [lldb] Remove CPlusPlusLanguage from Mangled.
Jul 27 2021, 3:01 PM · Restricted Project
bulbazord committed rG0a74fbb7b1d3: [lldb][NFC] Fix incorrect log and comment (authored by bulbazord).
[lldb][NFC] Fix incorrect log and comment
Jul 27 2021, 2:44 PM

Jul 26 2021

bulbazord added a comment to D105215: [lldb] Remove CPlusPlusLanguage from Mangled.

@jingham I can change the name to GetFullyQualifiedBaseName if needed. Is there anything else here that should be changed or addressed?

Jul 26 2021, 12:39 PM · Restricted Project
bulbazord committed rGe42edce4a349: [lldb][NFC] Delete unused and commented out DWARF constants (authored by bulbazord).
[lldb][NFC] Delete unused and commented out DWARF constants
Jul 26 2021, 12:27 PM

Jul 21 2021

bulbazord committed rG8e6b31c3952b: [LLDB] Move Trace-specific classes into separate library (authored by bulbazord).
[LLDB] Move Trace-specific classes into separate library
Jul 21 2021, 1:29 PM
bulbazord closed D105649: [LLDB] Move Trace-specific classes into separate library.
Jul 21 2021, 1:28 PM · Restricted Project
bulbazord updated the diff for D105649: [LLDB] Move Trace-specific classes into separate library.

Updating

Jul 21 2021, 11:49 AM · Restricted Project

Jul 8 2021

bulbazord added a comment to D105215: [lldb] Remove CPlusPlusLanguage from Mangled.

I kind of feel that Language::GetDemangledFunctionNameWithoutArguments may be a bit too specific for a generalized language plugins. I think it may be worth it to make Mangled an interface that language plugins can implement (e.g. CPlusPlusMangledName) but I haven't totally thought out what the ramifications of that would be yet.

The name is unfortunate, but the notion that function types have an identifier, that is then decorated by arguments and maybe return types, seems pretty common. So in this particular case, maybe we just need a better name? GetBaseName isn't right since this function also returns any namespace information. Maybe GetFullyQualifiedBaseName?

Jul 8 2021, 12:25 PM · Restricted Project
bulbazord requested review of D105649: [LLDB] Move Trace-specific classes into separate library.
Jul 8 2021, 12:13 PM · Restricted Project

Jun 30 2021

bulbazord added a comment to D105215: [lldb] Remove CPlusPlusLanguage from Mangled.

I kind of feel that Language::GetDemangledFunctionNameWithoutArguments may be a bit too specific for a generalized language plugins. I think it may be worth it to make Mangled an interface that language plugins can implement (e.g. CPlusPlusMangledName) but I haven't totally thought out what the ramifications of that would be yet.

Jun 30 2021, 11:19 AM · Restricted Project
bulbazord requested review of D105215: [lldb] Remove CPlusPlusLanguage from Mangled.
Jun 30 2021, 11:16 AM · Restricted Project

Jun 29 2021

bulbazord abandoned D103210: [lldb] Introduce Language::MethodNameInfo.

Not going with this change

Jun 29 2021, 3:40 PM · Restricted Project

Jun 23 2021

bulbazord committed rG5bebc0b177d0: [lldb] Decouple ObjCLanguage from Symtab (authored by bulbazord).
[lldb] Decouple ObjCLanguage from Symtab
Jun 23 2021, 1:57 PM
bulbazord closed D104067: [lldb] Decouple ObjCLanguage from Symtab.
Jun 23 2021, 1:57 PM · Restricted Project

Jun 21 2021

bulbazord updated the diff for D104067: [lldb] Decouple ObjCLanguage from Symtab.

Addressed comments! :)

Jun 21 2021, 2:09 PM · Restricted Project

Jun 17 2021

bulbazord added a comment to D104067: [lldb] Decouple ObjCLanguage from Symtab.

ping!

Jun 17 2021, 11:04 AM · Restricted Project

Jun 12 2021

bulbazord updated the diff for D104067: [lldb] Decouple ObjCLanguage from Symtab.

Addressing comments

Jun 12 2021, 7:58 PM · Restricted Project

Jun 10 2021

bulbazord added a comment to D104067: [lldb] Decouple ObjCLanguage from Symtab.

Note that this is working towards solving the same problem as D103210 but it does so in a different way. Instead of repurposing the old diff, I made a new one so it is a little easier to compare/contrast. Hopefully it's not too confusing.

Jun 10 2021, 3:00 PM · Restricted Project
bulbazord requested review of D104067: [lldb] Decouple ObjCLanguage from Symtab.
Jun 10 2021, 2:59 PM · Restricted Project

Jun 8 2021

bulbazord committed rG64576a1be887: [lldb][NFC] Refactor name to index maps in Symtab (authored by bulbazord).
[lldb][NFC] Refactor name to index maps in Symtab
Jun 8 2021, 12:38 PM
bulbazord closed D103652: [lldb][NFC] Refactor name to index maps in Symtab.
Jun 8 2021, 12:38 PM · Restricted Project
bulbazord updated the diff for D103652: [lldb][NFC] Refactor name to index maps in Symtab.

Rename function :)

Jun 8 2021, 12:23 PM · Restricted Project

Jun 7 2021

bulbazord updated the diff for D103652: [lldb][NFC] Refactor name to index maps in Symtab.

Remove unused line of code that I forgot to remove previously

Jun 7 2021, 1:35 PM · Restricted Project
bulbazord updated the diff for D103652: [lldb][NFC] Refactor name to index maps in Symtab.

Address feedback

Jun 7 2021, 1:33 PM · Restricted Project

Jun 3 2021

bulbazord added a comment to D103210: [lldb] Introduce Language::MethodNameInfo.

We have a method called Language::GetMethodNameVariants, that could be extended/modified to be more suitable. Unless you had something else in mind? Maybe something more specific to Symtab mapping like Language::GetFunctionNameSearchVariants.

That actually seems like a great idea! Module::LookupInfo also seems quite close to the data structure we would need to return, so we could in theory return a list of that from the function instead.

Awesome, I'll work on that next :)

This makes sense to me, I'll also make this change in this patch :)

Feel free to also put it up as a NFC patch. It seems in general like a good cleanup from what I can see, so that should be a quick review :)

Just uploaded: D103652

Jun 3 2021, 3:12 PM · Restricted Project
bulbazord requested review of D103652: [lldb][NFC] Refactor name to index maps in Symtab.
Jun 3 2021, 3:11 PM · Restricted Project

May 27 2021

bulbazord added a comment to D103210: [lldb] Introduce Language::MethodNameInfo.

+1 to not add any language-specific terms to the Language API.

Looking over the code, it seems what the code is doing its:

  • Going over the symbol names.
  • Creating a search index from the symbol names that is optionally grouped via the FunctionNameType cases (and there is a 'eFunctionNameTypeSelector' which isn't that nice but that's why we try to do selector-specific stuff).

So what about having an API that for a given symbol name gives us all the alternative names we should put into this search index (and optionally a FunctionNameType so we can put it into the right group)? I guess C++ could also benefit from the same API as it would just return the right basenames then?

We have a method called Language::GetMethodNameVariants, that could be extended/modified to be more suitable. Unless you had something else in mind? Maybe something more specific to Symtab mapping like Language::GetFunctionNameSearchVariants.

If we make the different m_*to_index maps in Symtab into something two nested maps with the form FunctionNameType -> name -> index, then that would also remove quite a bit of copy-pasted code in Symtab.cpp

This makes sense to me, I'll also make this change in this patch :)

May 27 2021, 11:04 AM · Restricted Project

May 26 2021

bulbazord added a comment to D103210: [lldb] Introduce Language::MethodNameInfo.

Let me know how you feel about this abstraction/idea. I think we'll need something like this at some point to remove most of the remaining dependencies (e.g. in Module.cpp) so I'd like to get something good going here.

May 26 2021, 3:03 PM · Restricted Project
bulbazord requested review of D103210: [lldb] Introduce Language::MethodNameInfo.
May 26 2021, 3:02 PM · Restricted Project
bulbazord accepted D103158: [lldb][NFC] Use Language plugins in Mangled::GuessLanguage.

This is about what I thought needed to be done as well. Thanks for taking care of this!

May 26 2021, 10:33 AM · Restricted Project

May 25 2021

bulbazord added a comment to D103095: [lldb][NFC] Don't depend on Clang libraries from selected core libraries.

Arg, nevermind, I built in the wrong directory... I thought we're already there, but there are a few dependencies still left.

May 25 2021, 2:15 PM · Restricted Project

May 20 2021

bulbazord updated the diff for D102811: [lldb] Move ClangModulesDeclVendor ownership to ClangPersistentVariables from Target.

Add helper in ClangASTSource

May 20 2021, 1:27 PM · Restricted Project

May 19 2021

bulbazord added a comment to D79752: [lldb] Move ClangModulesDeclVendor ownership to ClangPersistentVariables.

Replaced by D102811 and Alex has apparently a new account, so closing this.

May 19 2021, 2:10 PM · Restricted Project
bulbazord requested review of D102811: [lldb] Move ClangModulesDeclVendor ownership to ClangPersistentVariables from Target.
May 19 2021, 2:04 PM · Restricted Project

Dec 1 2020

bulbazord updated bulbazord.
Dec 1 2020, 2:45 PM