- Oct 29, 2012
-
-
rdar://problem/11449953Enrico Granata authored
<rdar://problem/11449953> Change Debugger::SetOutputFileHandle() so that it does not automatically initialize the script interpreter in order to transfer its output file handle to it This should delay initialization of Python until strictly necessary and speed-up debugger startup Also, convert formatters for SEL and BOOL ObjC data-types from Python to C++, in order to reap more performance benefits from the above changes llvm-svn: 166967
-
rdar://problem/12500785Greg Clayton authored
I tracked down a leak that could happen when detaching from a process where the lldb_private::Process objects would stay around forever. This was caused by a eStateDetached event that was queued up on the lldb_private::Process private state thread listener. Since process events contain shared pointers to the process, this is dangerous if they don't get consume or cleared as having the lldb_private::Process class contain a collection of things that have a shared pointer to yourself is obviously bad. To fix this I modified the Process::Finalize() function to clear this list. The actual thing that was holding onto the ModuleSP and thus the static archive, was a stack frame. Since the process wasn't going away, it still had thread objects and they still had frames. I modified the Thread::Destroy() to clear the stack frames to ensure this further doesn't happen. llvm-svn: 166964
-
Jim Ingham authored
llvm-svn: 166959
-
Greg Clayton authored
llvm-svn: 166950
-
- Oct 27, 2012
-
-
Jim Ingham authored
so it could hold this information, and then used it to look up unfound names in the object pointer if it exists. This gets "frame var" to work for unqualified references to ivars captured in blocks. But the expression parser is ignoring this information still. llvm-svn: 166860
-
Jim Ingham authored
the raw exception. llvm-svn: 166859
-
Enrico Granata authored
Removing the IsDynamic() and GetStaticValue() calls, so that they will default to the base class behavior: - non-dynamic - itself as the static value This is in contrast with the previous behavior which could be confusing and could potentially cause issues when using those objects llvm-svn: 166857
-
Sean Callanan authored
- Only read the statically-defined isa table in the shared cache once. Only the dynamically-constructed isa table can change. - Ignore the statically-defined isa table if its version isn't what we expect. llvm-svn: 166856
-
Jason Molenda authored
llvm-svn: 166839
-
Jason Molenda authored
in lldb-169 and later. llvm-svn: 166838
-
- Oct 26, 2012
-
-
Andrew Kaylor authored
This patch updates comments in the Predicate class to describe a subtle behavior that callers may need to be aware. It also adds documentation for one function which didn’t have any. The subtle behavior is that the Predicate wait functions may not detect transitory changes in the predicate value. Consider the following scenario. Thread A waits for a bit to be set in the predicate value. Thread B sets the bit in the predicate value. Before Thread A wakes up, Thread C clears the bit in the predicate value. Thread A wakes, checks the value and goes back to waiting. The mutex and condition variables protect access to the value, but they offer no guarantee that another thread will not acquire the mutex and change the value before a waiting thread is restarted after a change. I believe that the current behavior is correct and reasonable. I just want to leave a marker to prevent possible problems in the future or to help anyone who might be unfortunate enough to encounter such a problem. llvm-svn: 166800
-
Jim Ingham authored
llvm-svn: 166799
-
Greg Clayton authored
Updated the "breakpoint command add" documentation and fixed the web site docs for the signature of the python breakpoint callback functions. llvm-svn: 166789
-
Jason Molenda authored
Full UnwindPlan is trying to do an impossible unwind; in that case invalidate the Full UnwindPlan and replace it with the architecture default unwind plan. This is a scenario that happens occasionally with arm unwinds in particular; the instruction analysis based full unwindplan can mis-parse the functions and the stack walk stops prematurely. Now we can do a simpleminded frame-chain walk to find the caller frame and continue the unwind. It's not ideal but given the complicated nature of analyzing the arm functions, and the lack of eh_frame information on iOS, it is a distinct improvement and fixes some long-standing problems with the unwinder on that platform. This is fixing <rdar://problem/12091421>. I may re-use this invalidate feature in the future if I can identify other cases where the full unwindplan's unwind information is clearly incorrect. This checkin also includes some cleanup for the volatile register definition in the arm ABI plugin for <rdar://problem/10652166> although work remains to be done for that bug. llvm-svn: 166757
-
Jason Molenda authored
llvm-svn: 166753
-
Filipe Cabecinhas authored
llvm-svn: 166740
-
rdar://problem/12570550Greg Clayton authored
TOT lldb broke finding App in app bundles when launching with shell. llvm-svn: 166733
-
Jim Ingham authored
llvm-svn: 166732
-
- Oct 25, 2012
-
-
Jim Ingham authored
llvm-svn: 166704
-
Greg Clayton authored
Allow operating system plug-ins to specify the address for registers so we don't have to create data up front. llvm-svn: 166701
-
Jim Ingham authored
llvm-svn: 166697
-
Greg Clayton authored
Changed the V1 and V2 runtimes to be able to detect when the ISA hash table has changed, and auto update as needed. llvm-svn: 166693
-
Sean Callanan authored
reflect a change to the initializer. llvm-svn: 166657
-
Jason Molenda authored
use a DynamicLoaderStatic dynamic loader for the session instead of a kernel or user dynamic loader. llvm-svn: 166652
-
Sean Callanan authored
to dotest.py so that the testsuite can run against any LLDB. <rdar://problem/12512268> llvm-svn: 166635
-
rdar://12481949Enrico Granata authored
Fixing the test case for rdar://12481949 to do the right thing with our new rules for sign-extension in GetValueAsUnsigned() llvm-svn: 166631
-
- Oct 24, 2012
-
-
Enrico Granata authored
llvm-svn: 166628
-
Enrico Granata authored
llvm-svn: 166627
-
Enrico Granata authored
llvm-svn: 166626
-
Enrico Granata authored
Reimplementing SBValue/ValueObject.GetValueAsUnsigned() in terms of appropriate calls in Scalar - Making sure Scalar does the right thing when casting signed values to unsigned ones. llvm-svn: 166618
-
Enrico Granata authored
Changing the NSDate data formatter to use GetData().uint64[] instead of relying on SBValue.GetValueAsUnsigned() to reinterpret a double as a uint64_t llvm-svn: 166610
-
Greg Clayton authored
llvm-svn: 166608
-
Greg Clayton authored
llvm-svn: 166604
-
rdar://problem/12481949Enrico Granata authored
<rdar://problem/12481949> Fixing SBValue.GetValueAsSigned() to do the right thing when dealing with a 32-bit negative value llvm-svn: 166603
-
Greg Clayton authored
Cleanup some variable names to indicate auto pointers and also manager the llvm::Module memory more correctly. llvm-svn: 166598
-
Jason Molenda authored
expect eArgTypeFilename. llvm-svn: 166542
-
rdar://problem/12523238Enrico Granata authored
Changed all relevant test cases to verify that MightHaveChildren() works correctly for objects of interest Added a bunch of convenience methods for test cases to use: target(), process(), thread() and frame() which mimic the lldb.X convenience variables As a bonus, edited the documentation on the website to describe the new method available for synthetic children providers writers to implement! That's all folks! llvm-svn: 166535
-
Sean Callanan authored
There was a generic catch-all type for path arguments called "eArgTypePath," and a specialized version called "eArgTypeFilename." It turns out all the cases where we used eArgTypePath we could have used Filename or we explicitly meant a directory. I changed Path to DirectoryName, made it use the directory completer, and rationalized the uses of Path. <rdar://problem/12559915> llvm-svn: 166533
-
Enrico Granata authored
Better error message for invalid argument to --category - silenced the printout of the raw args when not in verbose mode llvm-svn: 166514
-
Greg Clayton authored
Objective C cleanup. Removed an cache that was no longer needed and changes the code that gets the dynamic type and class name to use our new Objective C cache. llvm-svn: 166512
-