tberghammer accepted this revision.
tberghammer added a comment.
LGTM
Comment at: include/lldb/Core/RangeMap.h:636
-template class RangeDataArray
{
+template
+class RangeDataVector {
Would it make sense to have a default value of 0 for N so people don't ha
tberghammer added inline comments.
Comment at: tools/lldb-test/SystemInitializerTest.cpp:194
SystemRuntimeMacOSX::Initialize();
RenderScriptRuntime::Initialize();
- JavaLanguageRuntime::Initialize();
davide wrote:
> Aside, do you know why we have renderscr
tberghammer added a comment.
I have no memory about the history/background of the OCaml plugin but no
objection from my side.
Repository:
rLLDB LLDB
https://reviews.llvm.org/D54060
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http:/
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
LGTM. Thank you for removing it.
Comment at: source/Plugins/Process/minidump/MinidumpTypes.h:84
Token = 19,
- JavascriptData = 20,
SystemMemoryInfo = 21,
---
tberghammer added a reviewer: ribrdb.
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
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.
ht
tberghammer accepted this revision.
tberghammer added a comment.
Thank you for looking into this. The change looks good on Linux with both
normal-dwarf, split-dwarf and mixed-dwarf (as well as with dwp) but can you (or
somebody from Apple) please make sure it doesn't break MachO and/or dSym (I
tberghammer added a comment.
Thanks for the explanation, sorry I haven't read your commit message carefully.
In case of non-split-dwarf a die_offset is sufficient to uniquely identify a
DIE because it is an offset from the beginning of the debug_info section (we
assume we have at most 1 debug_i
tberghammer added a comment.
Sorry, I misunderstood your test-case in my first comment so what I wrote there
doesn't make sense. When you are trying to debug binaries (executable or shared
library) where half of it is compiled with split-dwarf while the other half is
compiled with non-split-dwa
tberghammer requested changes to this revision.
tberghammer added a comment.
Who is calling this method with a SimbolFileDWARF?
Instead of adding a hack to this function what looks horrible to me considering
that different debug info formats are using the upper 32bit of the UID for
different pu
tberghammer added a comment.
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.
I have a mixed feeling about this change because introducing any sort of race
condition (even if i
tberghammer added a comment.
In https://reviews.llvm.org/D39825#920739, @alexshap wrote:
> @tberghammer, SymbolFileDWARF (the base class of SymbolFileDWARFDwo) calls
> Index()
> "lazily" in may places, so indexing of dwo happens almost inevitably (at the
> moment)
> (FindCompleteObjCDefiniti
tberghammer added a comment.
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
tberghammer added a comment.
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.
Repository:
rL LLVM
https://reviews.llvm.org/D39
This revision was automatically updated to reflect the committed changes.
Closed by commit rL317563: Support scoped enums in the DWARF AST parser
(authored by tberghammer).
Repository:
rL LLVM
https://reviews.llvm.org/D39545
Files:
lldb/trunk/include/lldb/Symbol/ClangASTContext.h
lldb/tr
tberghammer added a reviewer: jasonmolenda.
tberghammer added a subscriber: lldb-commits.
tberghammer added a comment.
This change is needed to make LLDB compatible with
https://reviews.llvm.org/D39239
https://reviews.llvm.org/D39545
___
lldb-commi
This revision was automatically updated to reflect the committed changes.
Closed by commit rL317411: Improve the posix core file triple detection
(authored by tberghammer).
Repository:
rL LLVM
https://reviews.llvm.org/D36046
Files:
lldb/trunk/source/Core/ArchSpec.cpp
lldb/trunk/source/Plu
tberghammer added a comment.
Hi Carlos,
Sorry for not responding to your related e-mails lately. I am still not
convinced that tis is the right way forward as you are changing the expected
behavior from LLDB side to make it work with the new debug info emitted by
clang but I think the current
tberghammer accepted this revision.
tberghammer added a comment.
Looks good. Thanks for fixing it.
Repository:
rL LLVM
https://reviews.llvm.org/D38568
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman
tberghammer added inline comments.
Comment at: source/Host/common/Symbols.cpp:288-294
+ // FIXME: at the moment llvm-dwp doesn't output build ids,
+ // nor does binutils dwp. Thus in the case of DWPs
+ // we skip uuids check. This needs to b
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
Looks good, thanks for fixing it.
I am slightly confused why it was working for me when I tested it before
submission but I must have messed up something during testing.
Repository
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
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 Lin
tberghammer accepted this revision.
tberghammer added a comment.
Looks good
Comment at: source/Utility/TaskPool.cpp:61
+lldb_private::ThreadLauncher::LaunchThread("task-pool.worker", WorkerPtr,
+ this, nullptr, 8 * 1024 * 1024)
tberghammer added a comment.
Hi Greg, can you take a look sometime? Thanks, Tamas
Comment at: source/Plugins/Process/elf-core/ProcessElfCore.cpp:733-735
+ if (target_arch.IsMIPS()) {
return target_arch;
+ }
nitesh.jain wrote:
> tberghammer wrote:
> > Hi
tberghammer updated this revision to Diff 111326.
tberghammer added a comment.
Add comment about the MIPS special case.
https://reviews.llvm.org/D36046
Files:
source/Core/ArchSpec.cpp
source/Plugins/Process/elf-core/ProcessElfCore.cpp
Index: source/Plugins/Process/elf-core/ProcessElfCore.
tberghammer added a comment.
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.
I think the proper fix for the problem is to do something like what Greg
suggested to d
tberghammer added a comment.
Submitted as https://reviews.llvm.org/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.
https://reviews.llvm.org/D36068
___
ll
tberghammer created this revision.
Clang recently started to emit base address entries into the
.debug_ranges section to reduce the number of relocations needed. Lets
make sure LLDB can read them.
https://reviews.llvm.org/D36068
Files:
source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp
In
tberghammer added inline comments.
Comment at: source/Plugins/Process/elf-core/ProcessElfCore.cpp:733-735
+ if (target_arch.IsMIPS()) {
return target_arch;
+ }
Hi Nitesh,
I tried to remove this MIPS specific code as it shouldn't be necessary if I add
the
tberghammer created this revision.
Herald added subscribers: kristof.beyls, arichardson, sdardis, aemerson.
Posix core files sometime don't contain enough information to correctly
detect the OS. If that is the case we should use the OS from the target
instead as it will contain usable information
tberghammer added a comment.
Hi Nitesh,
The way dlopen, dlclose and dl_phdr_iterate is implemented on android is pretty
strange until (and including) SDK 25. The trick is that these functions are
implemented inside "/system/bin/linker" with actual function names prefixed
with "__dl_". The link
tberghammer added a comment.
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 al
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
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
tberghammer added a comment.
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?
Comment at: source/Plugins/SymbolFile
tberghammer added inline comments.
Comment at:
source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp:875-876
+ row->GetCFAValue().GetRegisterNumber() == m_lldb_fp_regnum) {
+ current_sp_bytes_offset_from_cfa =
+ row->GetCFAValue().GetOffset(
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
Looks good with one possible question
Comment at:
source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp:875-876
+ row->GetCFAValue().GetReg
tberghammer accepted this revision.
tberghammer added a comment.
Looks good
https://reviews.llvm.org/D34352
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
Looks good
https://reviews.llvm.org/D34199
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mail
tberghammer added inline comments.
Comment at: unittests/tools/lldb-server/inferior/thread_inferior.cpp:22
+
+ bool delay = true;
+ std::vector threads;
You have to make this variable atomic (or add a mutex) to make it work. In the
current implementation there
tberghammer added inline comments.
Comment at: unittests/tools/lldb-server/tests/MessageObjects.h:83
+// Common functions for parsing packet data.
+std::unordered_map SplitPairList(const std::string&
s);
+std::vector SplitList(const std::string& s, char delimeter);
-
tberghammer added a comment.
I few high level comments after a quick read through.
Comment at: unittests/tools/lldb-server/.gitignore:1
+thread_inferior
Why do we need this? I would expect cmake to *not* put anything into my source
directory when doing an out-
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
Makes sense. Thank you for the explanation (I assumed homogeneous aggregate and
vector are the same).
https://reviews.llvm.org/D32813
tberghammer added a comment.
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 f
tberghammer added a comment.
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 pr
tberghammer added a comment.
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.
Repository:
rL LLVM
https://reviews.llvm.org/D32503
___
lldb-commits mailin
tberghammer added a comment.
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 al
tberghammer accepted this revision.
tberghammer added a comment.
Looks good
https://reviews.llvm.org/D32441
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
tberghammer added inline comments.
Comment at: www/build.html:474-475
- from inside the unzipped NDK. Toolchains for other architectures
can be produced in
- a similar manner.
+ The NDK also contains a cmake toolchain file, wh
tberghammer abandoned this revision.
tberghammer added a comment.
Pavel created a separate fix as https://reviews.llvm.org/D31880. Abandoning
this one.
https://reviews.llvm.org/D31882
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http:/
tberghammer added a comment.
The previous version of the data formatter was triggering for
std::vector> 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?
Note: I added a few comments about the data formatte
tberghammer created this revision.
Herald added a reviewer: EricWF.
Fix the libc++ std::vector data formatter
Previously we randomly triggered either the std::vector<...> or the
std::vector data formatter causing an issue when the former got
triggered for an std::vector.
This change moves the lo
tberghammer added subscribers: lldb-commits, tberghammer.
tberghammer added inline comments.
/lldb/trunk/include/lldb/Core/Address.h:21-50 I think we should try to merge
these namespace definitions as in my view the current syntax makes the top of
the file very noisy. What do you think?
Users:
This revision was automatically updated to reflect the committed changes.
Closed by commit rL299259: Stop calling ValueObject::SetName from synthetic
child providers (authored by tberghammer).
Changed prior to commit:
https://reviews.llvm.org/D31371?vs=93528&id=93704#toc
Repository:
rL LLVM
This revision was automatically updated to reflect the committed changes.
Closed by commit rL299251: Add support for sythetic operator dereference
(authored by tberghammer).
Changed prior to commit:
https://reviews.llvm.org/D31368?vs=93529&id=93701#toc
Repository:
rL LLVM
https://reviews.ll
This revision was automatically updated to reflect the committed changes.
Closed by commit rL299249: Do not dereference std::unique_ptr by default
(authored by tberghammer).
Changed prior to commit:
https://reviews.llvm.org/D31366?vs=93039&id=93699#toc
Repository:
rL LLVM
https://reviews.ll
tberghammer added a comment.
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 wa
tberghammer added a comment.
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
tberghammer updated this revision to Diff 93529.
tberghammer added a comment.
Fix grammer for the html documentation.
https://reviews.llvm.org/D31368
Files:
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/TestDataFormatterStdUniquePtr.py
tberghammer updated this revision to Diff 93528.
tberghammer added a comment.
Fix typos in the comments
https://reviews.llvm.org/D31371
Files:
include/lldb/Core/ValueObject.h
source/Core/ValueObject.cpp
source/DataFormatters/VectorType.cpp
source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
tberghammer updated this revision to Diff 93525.
tberghammer added a comment.
Add documentation to the website
https://reviews.llvm.org/D31368
Files:
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/libstdcpp/unique_ptr/TestDataFormatterStdUniquePtr.py
sourc
tberghammer added a comment.
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*
tberghammer updated this revision to Diff 93241.
tberghammer added a comment.
Changed StackFrame to use Dereference instead of accessing the $$dereference$$
magic field.
https://reviews.llvm.org/D31368
Files:
packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-stl/l
tberghammer added a comment.
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.
Regarding skipping tests I am not aware
tberghammer requested review of this revision.
tberghammer added a comment.
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/
tberghammer created this revision.
Calling ValueObject::SetName from a sythetic child provider would change
the underying value object used for the non-synthetic child as well what
is clearly unintentional.
https://reviews.llvm.org/D31371
Files:
include/lldb/Core/ValueObject.h
source/Core/V
tberghammer created this revision.
After this change a sythetic child provider can generate a special child
named "$$dereference$$" what if present is used when "operator*" or
"operator->" used on a ValueObject. The goal of the change is to make
expressions like "up->foo" work inside the "frame va
tberghammer abandoned this revision.
tberghammer added a comment.
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".
tberghammer added a comment.
Can you make the usage of "using namespace llvm::sys::fs;" a bit more
consistent? Sometime you write fully qualified name, sometime you add it to the
top of the file while sometime only to the function where it is used.
Comment at: llvm/include/ll
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
LGTM, assuming that it works on all 3 OSes
Comment at: packages/Python/lldbsuite/test/make/Android.rules:1
+NDK_ROOT := $(shell dirname $(CC))/../../../../..
+NDK_R
tberghammer added a comment.
In https://reviews.llvm.org/D30272#686061, @jingham wrote:
> I also thought about having the synthetic child provider mark up the special
> child value objects when it made them. It bugs me a little but that you
> couldn't, for instance, have a synthetic child prov
tberghammer added a comment.
Thank you the comments. Based on them I have the following proposal:
- Add a new property to value object with name "m_is_dereference_of_parent"
- Add a new static method named "CreateCopy(name, valobj,
is_dereference_of_parent)" to ValueObject and to SBValue what wi
tberghammer added a comment.
My original plan was to add it to the synthetic child provider but after some
thoughts and experimenting I concluded it doesn't really belongs to there
because it should be responsible for generating new children while here we are
modifying the way the parent object
tberghammer created this revision.
Improve data formatter for libstdcpp unique_ptr
- Fix infinite loop when there is a reference loop created from smart pointers
- Respect pointer depth argument in frame variable command
- Support dereferencing unique_ptr in the frame variable command
- Support o
tberghammer created this revision.
Map ELF files as writable so we can update the relocations in them
After this change ELF files will be mapped as private writable pages so
we can cheaply update the relocations inside them without have to read
them into memory and any modification we do in the m
tberghammer accepted this revision.
tberghammer added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D28775
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/li
This revision was automatically updated to reflect the committed changes.
Closed by commit rL291559: Improve Type::GetTypeScopeAndBasenameHelper and add
unit tests (authored by tberghammer).
Changed prior to commit:
https://reviews.llvm.org/D28466?vs=83669&id=83791#toc
Repository:
rL LLVM
h
tberghammer updated this revision to Diff 83669.
tberghammer marked 9 inline comments as done.
https://reviews.llvm.org/D28466
Files:
include/lldb/Symbol/Type.h
source/Core/Module.cpp
source/Symbol/Type.cpp
source/Symbol/TypeList.cpp
source/Symbol/TypeMap.cpp
unittests/Symbol/CMakeLis
tberghammer created this revision.
tberghammer added a reviewer: clayborg.
tberghammer added a subscriber: lldb-commits.
Herald added a subscriber: mgorny.
Improve Type::GetTypeScopeAndBasenameHelper and add unit tests
Previously it failed to handle nested types inside templated classes
m
This revision was automatically updated to reflect the committed changes.
Closed by commit rL290895: Improve the performance of jModulesInfo in
lldb-server (authored by tberghammer).
Changed prior to commit:
https://reviews.llvm.org/D28233?vs=82884&id=82897#toc
Repository:
rL LLVM
https://r
tberghammer marked an inline comment as done.
tberghammer added a comment.
On some extremely large cases I seen the response time to fell from ~120s to
~8s (default packet timeout is 2s).
https://reviews.llvm.org/D28233
___
lldb-commits mailing lis
tberghammer abandoned this revision.
tberghammer added a comment.
Based on the feedback will try to fix the Clang AS importer instead (don't have
any ETA for it)
https://reviews.llvm.org/D27394
___
lldb-commits mailing list
lldb-commits@lists.llvm.
tberghammer created this revision.
tberghammer added a reviewer: labath.
tberghammer added a subscriber: lldb-commits.
Improve the performance of jModulesInfo in lldb-server
Previously it parsed /proc//maps for every module separately
resulting in a very slow response time. This CL add some cachi
tberghammer added a reviewer: aprantl.
tberghammer added a comment.
+Adrian
Thank you for all the comment. I agree that teaching the AST Importer to be
able to handle types inside a DeclBlock would be the best long term solution
but I am not sure about its complexity and feasibility (will take
tberghammer created this revision.
tberghammer added a reviewer: clayborg.
tberghammer added a subscriber: lldb-commits.
Fix expression evaluation inside lambda functions for gcc
gcc emits the artificial struct created for lambda expressions inside a
lexical block what is not understood by clang
tberghammer added inline comments.
Comment at: include/lldb/Core/RegularExpression.h:34
#else
-#if __ANDROID_NDK__
+#if ANDROID
#include
In most case you use "#ifdef". It would be nice to uniformalize
Comment at: source/Plugins/Language/CPlu
tberghammer accepted this revision.
tberghammer added a comment.
LGTM
Comment at:
source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp:246-247
+
+
NativeRegisterContextLinux *
(nit): Please revert
https://reviews.llvm.org/D27161
_
85 matches
Mail list logo