| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
which saves unnecessary traffic to the kernel.
llvm-svn: 139410
|
|
|
|
| |
llvm-svn: 139402
|
|
|
|
|
|
|
| |
correctly, symbols are coming soon. It also needs to be 32/64 bit hardened
with more testing.
llvm-svn: 139401
|
|
|
|
|
|
|
|
|
|
|
| |
--show-aliases (-a) shows aliases for commands, as well as built-in commands
--hide-user-defined (-u) hides user defined commands
by default 'help' without arguments does not show aliases anymore. to see them, add --show-aliases
to have only built-in commands appear, use 'help --hide-user-defined' ; there is currently no way to hide
built-in commands from the help output
'help command' is not changed by this commit, and help is shown even if command is an alias and -a is not specified
llvm-svn: 139377
|
|
|
|
|
|
|
|
| |
./build-swig-Python.sh: line 76: INTERFACE_FILES: command not found
when running SWIG, which was introduced during the last checkin.
llvm-svn: 139376
|
|
|
|
| |
llvm-svn: 139372
|
|
|
|
| |
llvm-svn: 139345
|
|
|
|
| |
llvm-svn: 139342
|
|
|
|
| |
llvm-svn: 139338
|
|
|
|
|
|
| |
Mac OS X to track the allocation history of pointers on the target process
llvm-svn: 139337
|
|
|
|
|
|
|
| |
One fixes a trailing comma bug (g++ doesn't like them)
The other gets the Error from the result of an expression evaluation and uses it as the error for the Process::LoadImage() method.
llvm-svn: 139336
|
|
|
|
|
|
|
|
| |
CommandObjectFrameVariable.
Plus minor indentation change.
llvm-svn: 139335
|
|
|
|
|
|
|
|
|
|
| |
store the per-Target default Source File & Line.
Set the default Source File & line to main (if it can be found.) at startup. Selecting the current thread & or frame resets
the current source file & line, and "source list" as well as the breakpoint command "break set -l <NUM>" will use the
current source file.
llvm-svn: 139323
|
|
|
|
|
|
| |
StopInfoTrace or StopInfoWatchpoint based on the exc_sub_code, as well.
llvm-svn: 139315
|
|
|
|
|
|
| |
command help to match the current LLDB.
llvm-svn: 139313
|
|
|
|
| |
llvm-svn: 139294
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
callback method
in order to distinguish the real single step exception from a watchpoint exception
which uses the same exc_type of EXC_BREAKPOINT and exc_code of EXC_I386_SGL.
This is done by checking the debug status register to find out whether the watchpoint
data break event has fired, and, if yes, stuff the data break address into the exception's
exc_sub_code field on the debugserver side for lldb to consume on the other end.
llvm-svn: 139274
|
|
|
|
|
|
| |
the stack & try to go up or at the bottom and try to go down.
llvm-svn: 139273
|
|
|
|
| |
llvm-svn: 139271
|
|
|
|
| |
llvm-svn: 139249
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
watchpoint
(MachThreadList::EnableHardwareWatchpoint()) where the watchpoint is not associated
with a thread and the current thread, if set, is returned, otherwise we return the
first thread.
Plus minor change to RNBRemote::HandlePacket_z() to use the existing macros to check
the validity of break_id/watch_id.
llvm-svn: 139246
|
|
|
|
|
|
|
|
| |
INVALID_NUB_WATCH_ID
to determine its validity.
llvm-svn: 139209
|
|
|
|
|
|
|
|
|
| |
explicative names and return shared-pointers instead of bools
Reduced the amount of memory required to avoid loops in DumpPrintableRepresentation() from 32 bits down to 1 bit
- Additionally, disallowed creating summary strings of the form ${var%S} which did nothing but cause endless loops by definition
llvm-svn: 139201
|
|
|
|
|
|
|
|
| |
class (Not Tested Yet).
Also update the signature of WatchpointLocation::SetEnable() to take a bool as input arg.
llvm-svn: 139198
|
|
|
|
| |
llvm-svn: 139174
|
|
|
|
|
|
|
|
| |
an instance of watchpoint location list.
Also add a typefed for WatchpointLocationSP to lldb-forward-rtti.h.
llvm-svn: 139166
|
|
|
|
|
|
|
|
|
| |
argument.
Plus for watchpoint related functions, add new macros INVALID_NUB_WATCH_ID and
NUB_WATCH_ID_IS_VALID and use them, instead.
llvm-svn: 139163
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- introduced two new classes ValueObjectConstResultChild and ValueObjectConstResultImpl: the first one is a ValueObjectChild obtained from
a ValueObjectConstResult, the second is a common implementation backend for VOCR and VOCRCh of method calls meant to read through pointers stored
in frozen objects ; now such reads transparently move from host to target as required
- as a consequence of the above, removed code that made target-memory copies of expression results in several places throughout LLDB, and also
removed code that enabled to recognize an expression result VO as such
- introduced a new GetPointeeData() method in ValueObject that lets you read a given amount of objects of type T from a VO
representing a T* or T[], and doing dereferences transparently
in private layer it returns a DataExtractor ; in public layer it returns an instance of a newly created lldb::SBData
- as GetPointeeData() does the right thing for both frozen and non-frozen ValueObject's, reimplemented ReadPointedString() to use it
en lieu of doing the raw read itself
- introduced a new GetData() method in ValueObject that lets you get a copy of the data that backs the ValueObject (for pointers,
this returns the address without any previous dereferencing steps ; for arrays it actually reads the whole chunk of memory)
in public layer this returns an SBData, just like GetPointeeData()
- introduced a new CreateValueFromData() method in SBValue that lets you create a new SBValue from a chunk of data wrapped in an SBData
the limitation to remember for this kind of SBValue is that they have no address: extracting the address-of for these objects (with any
of GetAddress(), GetLoadAddress() and AddressOf()) will return invalid values
- added several tests to check that "p"-ing objects (STL classes, char* and char[]) will do the right thing
Solved a bug where global pointers to global variables were not dereferenced correctly for display
New target setting "max-string-summary-length" gives the maximum number of characters to show in a string when summarizing it, instead of the hardcoded 128
Solved a bug where the summary for char[] and char* would not be shown if the ValueObject's were dumped via the "p" command
Removed m_pointers_point_to_load_addrs from ValueObject. Introduced a new m_address_type_of_children, which each ValueObject can set to tell the address type
of any pointers and/or references it creates. In the current codebase, this is load address most of the time (the only notable exception being file
addresses that generate file address children UNLESS we have a live process)
Updated help text for summary-string
Fixed an issue in STL formatters where std::stlcontainer::iterator would match the container's synthetic children providers
Edited the syntax and help for some commands to have proper argument types
llvm-svn: 139160
|
|
|
|
|
|
|
| |
'size_t size', instead of 'lldb::tid_t tid'. Pass size to the StoppointLocation
ctor as well.
llvm-svn: 139131
|
|
|
|
|
|
|
|
|
|
|
| |
Add a virtual method GetHardwareWatchpointHit() to the DNBArchProtocol base class
which consults the architecture to return the watchpoint hit; otherwise return an
invalid index.
Add impl. of the method to X86_64 and I386 subclasses, plus reset the debug status
register before we resume execution of the inferior thread.
llvm-svn: 139034
|
|
|
|
| |
llvm-svn: 138996
|
|
|
|
|
|
|
|
| |
register names when dumping variable locations and location lists. Also did
some cleanup where "int" types were being used for "lldb::RegisterKind"
values.
llvm-svn: 138988
|
|
|
|
| |
llvm-svn: 138981
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DWARF accelerator table sections to the DWARF parser. These sections are similar
to the .debug_pubnames and .debug_pubtypes, but they are designed to be hash tables
that are saved to disc in a way that the sections can just be loaded into memory
and used without any work on the debugger side. The .debug_pubnames and .debug_pubtypes
sections are not ordered, contain a copy of the name in the section itself which
makes these sections quite large, they only include publicly exported names (so no
static functions, no types defined inside functions), many compilers put different
information in them making them very unreliable so most debugger ignore these sections
and parse the DWARF on their own. The tables must also be parsed and sorted in order
to be used effectively. The new sections can be quickly loaded and very efficiently be used
to do name to DIE lookups with very little up front work. The format of these new
sections will be changing while we work out the bugs, but we hope to have really
fast name to DIE lookups soon.
llvm-svn: 138979
|
|
|
|
|
|
|
|
| |
a data using DataEncoder.
Added DataEncoder to the lldb-forward.h file.
llvm-svn: 138950
|
|
|
|
|
|
| |
can reserve a block of memory and store stuff into it.
llvm-svn: 138949
|
|
|
|
|
|
| |
-f" to work, that had gotten broken at some point in the past.
llvm-svn: 138929
|
|
|
|
| |
llvm-svn: 138907
|
|
|
|
| |
llvm-svn: 138899
|
|
|
|
|
|
| |
which contains the watchpoint hit information.
llvm-svn: 138881
|
|
|
|
|
|
| |
which did not take into account the hardware index.
llvm-svn: 138867
|
|
|
|
| |
llvm-svn: 138863
|
|
|
|
|
|
| |
implment Enable/DisableHardwareWatchpoint.
llvm-svn: 138847
|
|
|
|
|
|
| |
to implment Enable/DisableHardwareWatchpoint.
llvm-svn: 138844
|
|
|
|
| |
llvm-svn: 138790
|
|
|
|
| |
llvm-svn: 138770
|
|
|
|
| |
llvm-svn: 138763
|
|
|
|
| |
llvm-svn: 138761
|
|
|
|
|
|
| |
never checking them for NULL. Pass a reference instead.
llvm-svn: 138694
|
|
|
|
|
|
| |
directly to the one in sys.
llvm-svn: 138693
|