- Oct 11, 2014
-
-
Enrico Granata authored
When parsing ObjC types from encoded strings (and disallowing any-type), the ^? combination gets resolved to no type, while we could resolve it to void* I don't think on any of the platforms where ObjC matters sizeof(T*) depends on T, so even if we never figured out the pointee type, the pointer type should still be sane This might also allow some limited inspection where previously none was possible, so a win llvm-svn: 219540
-
- Oct 10, 2014
-
-
Andrew MacPherson authored
This accounts for the case where a dlopen() call fails when loading a library with a missing dependency. llvm-svn: 219520
-
Todd Fiala authored
Addresses pr/21190 (http://llvm.org/bugs/show_bug.cgi?id=21190). r219169 implemented this change list: http://reviews.llvm.org/D5472 for more details. llvm-svn: 219461
-
Todd Fiala authored
See http://reviews.llvm.org/D5695 for details. This change does the following: Enable lldb-gdbserver (llgs) usage for local-process Linux debugging. To turn on local llgs debugging support, which is disabled by default, enable this setting: (lldb) settings set platform.plugin.linux.use-llgs-for-local true Adds a stream-based Dump() function to FileAction. Pushes some platform methods that Linux (and FreeBSD) will want to share with MacOSX from PlatformDarwin into PlatformPOSIX. Reviewed by Greg Clayton. llvm-svn: 219457
-
Enrico Granata authored
In cases where you'd use an expression to get a value to insert in a command, be ready to use synthetic children if they are there. Those are now a source of values, so worth checking for llvm-svn: 219452
-
- Oct 09, 2014
-
-
Enrico Granata authored
Enhance the libc++ list data formatter so that it does not start looking for loops until asked to actually fetch children. Also, if you're going to read child X, only look for a loop in the first X nodes. Loops further down the road won't really matter. This should speed things up for large lists and fix rdar://18583790 llvm-svn: 219447
-
Zachary Turner authored
llvm-svn: 219435
-
Enrico Granata authored
If a ValueObject has a child that vends synthetic children, but only does so to generate a value for itself, that's not a disqualifier from one-line printing. Also, fetch synthetic values if available and requested for children as well while printing them llvm-svn: 219427
-
Enrico Granata authored
Add an API on ValueObject to retrieve the desired dynamic/synthetic combination all at once, if available, working somewhat hard to avoid returning an invalid ValueObject in the process llvm-svn: 219423
-
Todd Fiala authored
Adds a test to verify that a thread resume request marks the thread as running after doing the resume callback. This test fails without the corresponding ThreadStateCoordinator.cpp change. Fixes the code where that state was not maintained. llvm-svn: 219412
-
Todd Fiala authored
llvm-svn: 219377
-
Todd Fiala authored
llvm-svn: 219374
-
Todd Fiala authored
Also cleans up the lldb Xcode project's Source > Host > posix directory to use group-relative file naming. Also alphabetizes file entries. llvm-svn: 219373
-
Todd Fiala authored
POSIX dynamic loader: add more logging around launch/attach, fix breakpoint handling on entry callback. This change adds some logging around dynamic loader handling. It also fixes an issue where the dynamic loader entry breakpoint can end up being re-inserted, showing the wrong (i.e. software breakpoint) instruction at the stop location when a backtrace is displayed at program startup. I discussed with Jim Ingham a few weeks back. Essentially the one-hit breakpoints need to make it back to public state handling before the software breakpoint gets cleared. The flow I was hitting was that the breakpoint would get set, it would get hit, it would get cleared to step over, then it would get reapplied, when we never wanted it reapplied. Stops at the beginning of execution would then show backtraces with software breakpoint instructions in it, erroneously. This change fixes it. There might be a more elegant way to do this, or a flow change somewhere else to avoid, but it does fix an issue I experienced in startup breakpoint handling. llvm-svn: 219371
-
Enrico Granata authored
Add a SyntheticValueProviderFrontEnd that serves internally the same purpose as lldb.SBSyntheticValueProvider serves on the API layer llvm-svn: 219352
-
- Oct 08, 2014
-
-
Zachary Turner authored
llvm-svn: 219340
-
Zachary Turner authored
Python one-line execution was using ConnectionFileDescriptor to do a non-blocking read against a pipe. This won't work on Windows, as CFD is implemented using select(), and select() only works with sockets on Windows. The solution is to use ConnectionGenericFile on Windows, which uses the native API to do overlapped I/O on the pipe. This in turn requires re-implementing Host::Pipe on Windows using native OS handles instead of the more portable _pipe CRT api. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D5679 llvm-svn: 219339
-
Enrico Granata authored
On a suggestion from Jim Ingham, this class allows you to very easily define synthetic child providers that return a synthetic value (in the sense of r219330), but no children Also, document this new feature in our www docs llvm-svn: 219337
-
Enrico Granata authored
Extend synthetic children to produce synthetic values (as in, those that GetValueAsUnsigned(), GetValueAsCString() would return) The way to do this is to write a synthetic child provider for your type, and have it vend the (optional) get_value function. If get_value is defined, and it returns a valid SBValue, that SBValue's value (as in lldb_private::Value) will be used as the synthetic ValueObject's Value The rationale for doing things this way is twofold: - there are many possible ways to define a "value" (SBData, a Python number, ...) but SBValue seems general enough as a thing that stores a "value", so we just trade values that way and that keeps our currency trivial - we could introduce a new level of layering (ValueObjectSyntheticValue), a new kind of formatter (synthetic value producer), but that would complicate the model (can I have a dynamic with no synthetic children but synthetic value? synthetic value with synthetic children but no dynamic?), and I really couldn't see much benefit to be reaped from this added complexity in the matrix On the other hand, just defining a synthetic child provider with a get_value but returning no actual children is easy enough that it's not a significant road-block to adoption of this feature Comes with a test case llvm-svn: 219330
-
Ed Maste authored
llvm.org/pr21211 llvm-svn: 219329
-
Ed Maste authored
The build fails due to missing asan runtime in the FreeBSD base system. Instead of marking it expected fail, just skip until we have the runtime available. llvm.org/pr21136 llvm-svn: 219328
-
Todd Fiala authored
Useful for verifying what bytes a software breakpoint clobbers/restores. llvm-svn: 219318
-
Shawn Best authored
llvm-svn: 219269
-
Jim Ingham authored
also contains a breakpoint. <rdar://problem/18519712> llvm-svn: 219263
-
Jason Molenda authored
the default search method is "always" as of r218405. For the purposes of this test, set it back to "headers" to confirm that the file+line breakpoint doesn't work, then verify that it does work with "always". Leave it in "always" setting. <rdar://problem/18564244> llvm-svn: 219251
-
Enrico Granata authored
Change this test case so that it no longer fails in the face of Bug 21190. The failure and the bug are entirely unrelated, and it's trivial to write a repro case for that bug anyway, so no need to use this complicated test case llvm-svn: 219248
-
Jason Molenda authored
the backtrace, try falling back to the architecture default unwind plan and see if we can backtrace a little further. <rdar://problem/18556719> llvm-svn: 219247
-
Enrico Granata authored
The type category enable * was implemented assuming a previous disable * had happened. While that will most likely be true in practice, the consequences of this not being the case will be a crash. I fix the crash by doing two things: 1) don't let already-enabled categories be enabled anyway; 2) if a category were disabled but with a bogus last-enabled position - highly highly unlikely - just put it in the first empty slot. I am not so sure 2) is bulletproof perfect, but I also don't think 2) will practically ever happen llvm-svn: 219245
-
- Oct 07, 2014
-
-
Jim Ingham authored
that the function we were calling would continue to sleep for the requested time even if it was interrupted. That is not true of std::this_thread::sleep_for, at least not on OS X. Fix the test case so that if it wakes up early, it goes back to sleep till the time is actually greater than the end point. <rdar://problem/18523742> llvm-svn: 219234
-
Zachary Turner authored
llvm-svn: 219232
-
Greg Clayton authored
- tree items can define any number of key/value pairs - creating a tree you specify which columns you want to display and it will pick out the right key/value pairs from the new tree item dictionaries - added new "tk-target" command to explore the target's images, sections, symbols, compile units and line tables. llvm-svn: 219219
-
Todd Fiala authored
See http://reviews.llvm.org/D5632 for details. Change by Shawn Best. llvm-svn: 219213
-
Ed Maste authored
llvm-svn: 219181
-
Todd Fiala authored
This setting contains the following: A list containing all the arguments to be passed to the expression parser compiler. This change also ensures quoted arguments are handled appropriately. See http://reviews.llvm.org/D5472 for more details. Change by Tong Shen. llvm-svn: 219169
-
Jason Molenda authored
<rdar://problem/18560328> llvm-svn: 219152
-
Jason Molenda authored
llvm-svn: 219151
-
Enrico Granata authored
llvm-svn: 219148
-
- Oct 06, 2014
-
-
Enrico Granata authored
llvm-svn: 219147
-
Enrico Granata authored
In some cases, the LLDB test suite will be run on a built framework with no sources coming along. In those cases, we want to skip the SB API test case. Add a marker for that, and apply it llvm-svn: 219146
-
Zachary Turner authored
This is the first step in getting ConnectionFileDescriptor ported to Windows. It implements a connection against a disk file for windows. This supports connection strings of the form file://PATH which are currently supported only on posix platforms in ConnectionFileDescriptor. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D5608 llvm-svn: 219145
-