tberghammer (Tamas Berghammer)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 16 2015, 6:33 AM (200 w, 1 d)

Recent Activity

Mon, Nov 5

tberghammer added inline comments to D54059: Remove Java debugger plugin.
Mon, Nov 5, 8:27 AM · Restricted Project
tberghammer added a comment to D54060: Remove OCaml debugger plugin.

I have no memory about the history/background of the OCaml plugin but no objection from my side.

Mon, Nov 5, 1:57 AM · Restricted Project
tberghammer accepted D54059: Remove Java debugger plugin.

LGTM. Thank you for removing it.

Mon, Nov 5, 1:55 AM · Restricted Project
tberghammer accepted D54057: Remove Go debugger plugin.

LGTM. Adding Ryan as a reviewer as he was the original implementer but I am not sure if his account (and the linked e-mail) is still active.

Mon, Nov 5, 1:49 AM

Jun 8 2018

tberghammer accepted D47932: Fix tuple getter in std unique pointer pretty-printer.

BTW this can also happen if we are missing some debug info.

Jun 8 2018, 3:52 AM

Jan 11 2018

tberghammer added a comment to D41909: Fix deadlock in dwarf logging.

I think it isn't an A/B locking issue. The problem is that 2 different thread (main thread and 1 of the DWARF indexer thread) want to lock the mutex at the same time.

Jan 11 2018, 5:56 AM

Nov 9 2017

tberghammer added a comment to D39825: [lldb] Ensure that dwo/dwp are not double-indexed.

@tberghammer, SymbolFileDWARF (the base class of SymbolFileDWARFDwo) calls Index()
"lazily" in may places, so indexing of dwo happens almost inevitably (at the moment)
(FindCompleteObjCDefinitionTypeForDIE is just one example).

Nov 9 2017, 11:19 AM
tberghammer added a comment to D39825: [lldb] Ensure that dwo/dwp are not double-indexed.

I never tried debugging Objective-C using dwo but I am pretty sure this won't fix the issue you are seeing for FindCompleteObjCDefinitionTypeForDIE correctly because this way you will index the compile unit twice (once from the main object file and once from the dwo), then create 2 CompilerType for the 2 indexed version and will start hitting random issues in expression evaluation when clang will get confused by 2 declaration for the same type. If I am not mistaken then because of this, calling Index on a Dwo file is a pretty bad idea. Instead of trying to get it work we should change it to be an assert so people don't call it by accident.

Nov 9 2017, 10:26 AM
tberghammer added a comment to D39825: [lldb] Ensure that dwo/dwp are not double-indexed.

How are you end up calling SymbolFileDWARFDwo::Index? If I remember correctly you are not supposed to index a dwo file directly because without the main object file you won't have all of the necessary information.

Nov 9 2017, 9:35 AM

Nov 7 2017

tberghammer committed rL317574: Fix an issue in r317563 causing a clang assert.
Fix an issue in r317563 causing a clang assert
Nov 7 2017, 5:44 AM
tberghammer committed rL317563: Support scoped enums in the DWARF AST parser.
Support scoped enums in the DWARF AST parser
Nov 7 2017, 2:40 AM
tberghammer closed D39545: Support scoped enums in the DWARF AST parser by committing rL317563: Support scoped enums in the DWARF AST parser.
Nov 7 2017, 2:39 AM

Nov 4 2017

tberghammer added a comment to D39239: [AST] Incorrectly qualified unscoped enumeration as template actual parameter..

I verified that D39545 will be fixing the problem on the LLDB side (previously we had no proper scoped enum support in LLDB)

Nov 4 2017, 3:29 PM · debug-info
tberghammer added a reviewer for D39545: Support scoped enums in the DWARF AST parser: jasonmolenda.

This change is needed to make LLDB compatible with D39239

Nov 4 2017, 3:27 PM
tberghammer updated the diff for D39545: Support scoped enums in the DWARF AST parser.

Fix test failures

Nov 4 2017, 3:25 PM
tberghammer committed rL317411: Improve the posix core file triple detection.
Improve the posix core file triple detection
Nov 4 2017, 11:26 AM
tberghammer closed D36046: Improve the posix core file triple detection by committing rL317411: Improve the posix core file triple detection.
Nov 4 2017, 11:26 AM

Nov 2 2017

tberghammer added a comment to D39239: [AST] Incorrectly qualified unscoped enumeration as template actual parameter..

Hi Tamas,

Thanks very much for your message.

  • Can you do a diff of the debug_info dump before and after your change? Understanding what have changed should give us a pretty good clue about the issue.

For this specific case, the debug_info is the same before and after my change, as the patch affects only unscoped enums.

Nov 2 2017, 6:12 AM · debug-info
tberghammer created D39545: Support scoped enums in the DWARF AST parser.
Nov 2 2017, 5:02 AM

Oct 30 2017

tberghammer added a comment to D39239: [AST] Incorrectly qualified unscoped enumeration as template actual parameter..

2 fairly random ideas without looking into it too much:

Oct 30 2017, 9:32 AM · debug-info

Oct 25 2017

tberghammer added a comment to D39283: [lldb-dev] Update LLDB test cases for 'inlineStepping' .

Hi Carlos,

Oct 25 2017, 2:21 PM

Oct 10 2017

tberghammer accepted D38568: [lldb] Enable using out-of-tree dwps.

Looks good. Thanks for fixing it.

Oct 10 2017, 5:02 AM

Oct 9 2017

tberghammer added inline comments to D38568: [lldb] Enable using out-of-tree dwps.
Oct 9 2017, 3:02 AM

Oct 3 2017

tberghammer accepted D38492: [lldb] Fix initialization of m_debug_cu_index_map.

Looks good, thanks for fixing it.

Oct 3 2017, 5:12 AM

Sep 19 2017

tberghammer accepted D37930: Use ThreadLauncher to launch TaskPool threads.

I don't really have an opinion if moving TaskPool to Host is a good or bad idea (haven't followed the recent layering efforts) but other then that looks good. I also tested it on Linux and it works fine.

Sep 19 2017, 6:59 AM

Sep 18 2017

tberghammer committed rL313525: Fix Linux remote debugging after r313442.
Fix Linux remote debugging after r313442
Sep 18 2017, 3:26 AM
tberghammer accepted D37930: Use ThreadLauncher to launch TaskPool threads.

Looks good

Sep 18 2017, 3:10 AM

Aug 30 2017

tberghammer added inline comments to rL309554: Add support for base address entries in the .debug_ranges section.
Aug 30 2017, 3:10 PM

Aug 25 2017

tberghammer updated subscribers of D37146: Support base address and offset pairs in debug_loc.dwo.
Aug 25 2017, 7:28 AM
tberghammer created D37146: Support base address and offset pairs in debug_loc.dwo.
Aug 25 2017, 7:28 AM
tberghammer committed rL311775: Add support for the DWP debug info format.
Add support for the DWP debug info format
Aug 25 2017, 6:59 AM
tberghammer closed D36062: Add support for the DWP debug info format by committing rL311775: Add support for the DWP debug info format.
Aug 25 2017, 6:59 AM
tberghammer added inline comments to D36062: Add support for the DWP debug info format.
Aug 25 2017, 3:40 AM

Aug 24 2017

tberghammer added a comment to D36062: Add support for the DWP debug info format.

Hi Jason,

Aug 24 2017, 2:56 AM

Aug 16 2017

tberghammer added reviewers for D36062: Add support for the DWP debug info format: jasonmolenda, labath.

Note about testing: I haven't manage to come up with any good approach so far for testing because only fairly new version of dwp or llvm-dwp can generate the format I am expecting here so adding a new config for the existing test suite seems a bit infeasible and also it would increase the testing time by a non negligible time.

Aug 16 2017, 5:24 AM
tberghammer added a comment to D36046: Improve the posix core file triple detection.

Hi Greg, can you take a look sometime? Thanks, Tamas

Aug 16 2017, 5:06 AM
tberghammer updated the diff for D36046: Improve the posix core file triple detection.

Add comment about the MIPS special case.

Aug 16 2017, 5:02 AM
tberghammer committed rL311000: Remove the DWARFExpression -> Clang ExpressionParser dependency.
Remove the DWARFExpression -> Clang ExpressionParser dependency
Aug 16 2017, 4:46 AM
tberghammer abandoned D30251: Map ELF files as writable so we can update the relocations in them.
Aug 16 2017, 4:44 AM
tberghammer closed D36068: Add support for base address entries in the .debug_ranges section.
Aug 16 2017, 4:43 AM

Aug 10 2017

tberghammer accepted D36445: Fix "process load/unload" on android.

Thanks for fixing it

Aug 10 2017, 2:39 AM

Aug 8 2017

tberghammer added inline comments to D36445: Fix "process load/unload" on android.
Aug 8 2017, 2:10 AM

Aug 5 2017

tberghammer added a comment to D36300: WIP: DebugInfo: Use base address and offset pairs in debug_loc.dwo to reduce required relocations.

I checked LLDB and it doesn't have support for base address entries neither in .debug_loc nor in .debug_loc.dwo sections and it doesn't support reading .debug_loclists or .debug_loclists.dwo entries either. I will try to add support for them but it will require some refactoring so it will take some time.

Aug 5 2017, 8:34 AM

Jul 31 2017

tberghammer added a comment to D11465: Fix "process load/unload" on android.

Thanks for all of the data. Based on this I think you are using a preview version of android O what reports SDK 25 but the linker works the way an SDK 26 system linker would do.

Jul 31 2017, 7:59 AM
tberghammer committed rL309554: Add support for base address entries in the .debug_ranges section.
Add support for base address entries in the .debug_ranges section
Jul 31 2017, 3:29 AM
tberghammer added a comment to D36068: Add support for base address entries in the .debug_ranges section.

Submitted as rL309554 to get the buildbot using ToT clang green again but if you have any comment then let me know and I will address it in a followup CL.

Jul 31 2017, 3:29 AM

Jul 30 2017

tberghammer created D36068: Add support for base address entries in the .debug_ranges section.
Jul 30 2017, 6:20 PM
tberghammer raised a concern with rL309526: DebugInfo: Use base address selection entries in debug_ranges to reduce….

Hi David,

Jul 30 2017, 4:49 PM
tberghammer updated the diff for D36062: Add support for the DWP debug info format.

Improve error handling

Jul 30 2017, 11:44 AM
tberghammer created D36062: Add support for the DWP debug info format.
Jul 30 2017, 9:21 AM

Jul 29 2017

tberghammer added inline comments to D36046: Improve the posix core file triple detection.
Jul 29 2017, 6:10 AM
tberghammer created D36046: Improve the posix core file triple detection.
Jul 29 2017, 6:08 AM

Jul 27 2017

tberghammer added a comment to D11465: Fix "process load/unload" on android.

Hi Nitesh,

Jul 27 2017, 7:54 AM
tberghammer committed rL309265: XFAIL/XFlakey some tests what become very flakey on the Linux buildbot.
XFAIL/XFlakey some tests what become very flakey on the Linux buildbot
Jul 27 2017, 5:02 AM

Jul 26 2017

tberghammer added a comment to D35734: Don't allow LLDB to try and parse .debug_types.

I tried to compile the code snippet you mentioned but it doesn't put anything into the debug_types section. If I move the enum definition outside of the class then it produces debug_type section but LLDB fails back gracefully without any crash or error message. I also tried a few other code snippets and the debugging experience usually wasn't great (types of local variables were messed up) but I haven't manage to get LLDB crashing.

Jul 26 2017, 2:57 AM

Jul 24 2017

tberghammer accepted D35734: Don't allow LLDB to try and parse .debug_types.

Can you file a bug about this issue so we can keep track of it? Also it would be nice to include a small test case in the bug (if you have one) what demonstrates the crash as so far I only managed to see missing type information without an actual LLDB crash.

Jul 24 2017, 10:04 AM
tberghammer added a comment to D35734: Don't allow LLDB to try and parse .debug_types.

This section have been already removed from Dwarf5 so I agree that we shouldn't spend too much time adding support for it. Do you know anybody hitting this issue? Do you know why they decided to use this flag?

Jul 24 2017, 5:05 AM

Jun 28 2017

tberghammer added inline comments to D34750: [UnwindAssembly/x86] Add support for "lea imm(%ebp), %esp" pattern.
Jun 28 2017, 9:37 AM
tberghammer accepted D34750: [UnwindAssembly/x86] Add support for "lea imm(%ebp), %esp" pattern.

Looks good with one possible question

Jun 28 2017, 8:37 AM

Jun 19 2017

tberghammer accepted D34352: [linux] Change the way we load vdso pseudo-module.

Looks good

Jun 19 2017, 10:16 AM

Jun 15 2017

tberghammer accepted D34199: Tweak SysV_arm64 function entry unwind plan.

Looks good

Jun 15 2017, 6:37 AM

May 24 2017

tberghammer committed rL303738: Demangler: Fix constructor cv qualifier handling.
Demangler: Fix constructor cv qualifier handling
May 24 2017, 4:29 AM
tberghammer closed D33385: __cxa_demangle: Fix constructor cv qualifier handling by committing rL303737: __cxa_demangle: Fix constructor cv qualifier handling.
May 24 2017, 4:21 AM
tberghammer committed rL303737: __cxa_demangle: Fix constructor cv qualifier handling.
__cxa_demangle: Fix constructor cv qualifier handling
May 24 2017, 4:21 AM

May 21 2017

tberghammer created D33385: __cxa_demangle: Fix constructor cv qualifier handling.
May 21 2017, 7:34 AM

May 19 2017

tberghammer added inline comments to D32930: New framework for lldb client-server communication tests..
May 19 2017, 5:02 AM

May 18 2017

tberghammer added inline comments to D32930: New framework for lldb client-server communication tests..
May 18 2017, 6:08 AM

May 8 2017

tberghammer added a comment to D32930: New framework for lldb client-server communication tests..

I few high level comments after a quick read through.

May 8 2017, 6:40 AM

May 5 2017

tberghammer accepted D32813: ABISysV_arm64: compute return value for large vectors correctly.

Makes sense. Thank you for the explanation (I assumed homogeneous aggregate and vector are the same).

May 5 2017, 3:39 AM

May 4 2017

tberghammer added a comment to D32813: ABISysV_arm64: compute return value for large vectors correctly.

I am a bit confused by the correlation between your change and commit message. In the commit message you say that 32 byte structs are passed as x8 pointers but the implementation of LoadValueFromConsecutiveGPRRegisters seems to read it out from the v0-v8 registers for vectors of up to 8 elements independently of there size. Also based on that code I have the suspicion that the first branch (where byte_size <= 16) is not actually used or necessary and also I don't see anything in the ABI documentation indicating otherwise (it would be a pretty crazy ABI if they say that if you have 4 double then passed in a single 32 byte register while if you have 8 double then passed in 8 different 32 byte registers). Can you make sure that branch is necessary (e.g. removing it breaks at least 1 test)?

May 4 2017, 6:48 AM

May 3 2017

tberghammer added a comment to D32757: Add TaskMap for iterating a function over a set of integers.

Personally I never really liked TaskRunner (even though I was the one implemented it) because I think it adds a lot of extra complexity for fairly little gain and thinking about it a bit more I think in most use case a more targeted solution at the call site will probably give better results. Also if we need it in the future it can always be restored based on git/svn history. Based on that I am happy to delete it if we have no use case for it at the moment.

May 3 2017, 4:25 AM

Apr 26 2017

tberghammer added a comment to D32503: Remove unused code related to CPlusPlusLanguage::FindEquivalentNames.

I am fully support deleting it (and pretty much any unused code). If we need it in the future then we will still have it in the svn history.

Apr 26 2017, 9:21 AM
tberghammer added a comment to D32503: Remove unused code related to CPlusPlusLanguage::FindEquivalentNames.

I looked into the history of this code once and my understanding is that Enrico added this code in https://github.com/llvm-mirror/lldb/commit/bad9753828b6e0e415e38094bb9627e41d57874c but it have never been used (at least in upstream). The original commit message also indicates this.

Apr 26 2017, 5:10 AM

Apr 25 2017

tberghammer accepted D32441: Remove the home-grown android toolchain file and all references to it.

Looks good

Apr 25 2017, 5:39 AM

Apr 24 2017

tberghammer added inline comments to D32441: Remove the home-grown android toolchain file and all references to it.
Apr 24 2017, 11:41 AM

Apr 10 2017

tberghammer added a comment to D31880: Fix libc++ vector<bool> data formatter (bug #32553).

The previous version of the data formatter was triggering for std::vector<std::allocator<bool>> as well. Jason, do you know why was it the case? Do we need that functionality because of a broken compiler version or can it be removed?

Apr 10 2017, 10:47 AM
tberghammer abandoned D31882: Fix the libc++ std::vector<bool> data formatter.

Pavel created a separate fix as https://reviews.llvm.org/D31880. Abandoning this one.

Apr 10 2017, 6:55 AM
tberghammer created D31882: Fix the libc++ std::vector<bool> data formatter.
Apr 10 2017, 6:50 AM

Apr 6 2017

tberghammer updated subscribers of rL299714: iwyu fixes for lldbCore..
Apr 6 2017, 3:32 PM
tberghammer committed rL299677: XFAIL TestDataFormatterLibcxxVBool on Linux & Android.
XFAIL TestDataFormatterLibcxxVBool on Linux & Android
Apr 6 2017, 11:28 AM

Apr 5 2017

tberghammer added inline comments to rL299588: Annotate some more libc++ tests with the new category.
Apr 5 2017, 6:04 PM

Mar 31 2017

tberghammer committed rL299259: Stop calling ValueObject::SetName from synthetic child providers.
Stop calling ValueObject::SetName from synthetic child providers
Mar 31 2017, 2:00 PM
tberghammer closed D31371: Stop calling ValueObject::SetName from synthetic child providers by committing rL299259: Stop calling ValueObject::SetName from synthetic child providers.
Mar 31 2017, 2:00 PM
tberghammer committed rL299251: Add support for sythetic operator dereference.
Add support for sythetic operator dereference
Mar 31 2017, 1:36 PM
tberghammer closed D31368: Add support for sythetic operator dereference by committing rL299251: Add support for sythetic operator dereference.
Mar 31 2017, 1:35 PM
tberghammer committed rL299249: Do not dereference std::unique_ptr by default.
Do not dereference std::unique_ptr by default
Mar 31 2017, 1:19 PM
tberghammer closed D31366: Do not dereference std::unique_ptr by default by committing rL299249: Do not dereference std::unique_ptr by default.
Mar 31 2017, 1:19 PM
tberghammer added a comment to D31451: New C++ function name parsing logic.

One note on benchmarking: A did some performance profiling on LLDB using a similar approach to what Pavel suggested and if I remember correctly only ~10% of the time was spent on C++ name parsing (~15% was C++ demangling, ~50% was debug_info parsing, rest of them was fairly well distributed). Because of this I think some targeted micro benchmark will be much more useful to measure the performance of this code then an end-to-end test as an e2e test would have low signal to noise ratio.

Mar 31 2017, 12:30 PM

Mar 30 2017

tberghammer added a comment to D31366: Do not dereference std::unique_ptr by default.

I tried it out on OSX and the problem is that version of libstdc++ shipping with every recent OSX version (don't know about old ones) is 4.2.1 (last version with GPL v2) what doesn't support std::unique_ptr (supported since 4.3). Because of this I think the correct skip condition would be something like "skip if libstdc++ is older then 4.3" but I don't think we have a good way to specify that.

Mar 30 2017, 1:10 PM
tberghammer updated the diff for D31368: Add support for sythetic operator dereference.

Fix grammer for the html documentation.

Mar 30 2017, 12:59 PM
tberghammer updated the diff for D31371: Stop calling ValueObject::SetName from synthetic child providers.

Fix typos in the comments

Mar 30 2017, 12:56 PM
tberghammer updated the diff for D31368: Add support for sythetic operator dereference.

Add documentation to the website

Mar 30 2017, 12:40 PM

Mar 29 2017

tberghammer added a comment to D31371: Stop calling ValueObject::SetName from synthetic child providers.

SBValue::SetName is not part of the SB API (what is the right decision IMO as an SBValue should be mostly immutable) so this issue doesn't effect it. I looked through the code in examples/synthetic/gnu_libstdcpp.py and it is always using one of the SBValue::Create* method to produce new SBValue what will create a new value object one way or the other. Considering that nobody complained about the missing SetName method at the SB API level I don't see a big need for exposing the Clone method there. At the same line if SetName/Clone isn't part of the SB API then I think we shouldn't document it at the webpage.

Mar 29 2017, 2:06 AM

Mar 28 2017

tberghammer updated the diff for D31368: Add support for sythetic operator dereference.

Changed StackFrame to use Dereference instead of accessing the $$dereference$$ magic field.

Mar 28 2017, 7:48 AM
tberghammer added a comment to D31366: Do not dereference std::unique_ptr by default.

My understanding (don't have an OSX machine at hand right now to try out) is that OSX ships with the libstdc++ belonging to gcc-4.2.1 and that version of libstdc++ is too old to support c++11 features such as std::unique_ptr.

Mar 28 2017, 6:53 AM

Mar 27 2017

tberghammer requested review of D31366: Do not dereference std::unique_ptr by default.

I am trying to compile it with the following command on OSX but I wasn't able to get it working:

clang  -std=c++11  -g -O0 -fno-builtin -arch x86_64   -fno-limit-debug-info -I$LLVM_ROOT/lldb/packages/Python/lldbsuite/test/make/../../../../../include -include $LLVM_ROOT/lldb/packages/Python/lldbsuite/test/make/test_common.h  -stdlib=libstdc++ -DLLDB_USING_LIBSTDCPP --driver-mode=g++ -c -o main.o main.cpp
Mar 27 2017, 12:54 PM

Mar 25 2017

tberghammer created D31371: Stop calling ValueObject::SetName from synthetic child providers.
Mar 25 2017, 2:47 PM
tberghammer created D31368: Add support for sythetic operator dereference.
Mar 25 2017, 6:58 AM
tberghammer updated subscribers of D31366: Do not dereference std::unique_ptr by default.
Mar 25 2017, 4:26 AM
tberghammer abandoned D30272: Improve data formatter for libstdcpp unique_ptr.

I wasn't able to get this approach working so I propose an alternative solution at https://reviews.llvm.org/D31366 for the infinite loop issue and I will create a separate CL for dereferencing smart pointers in "frame variable".

Mar 25 2017, 4:26 AM