Provide more information when process launch can't change directory to the
path passed with -w

Test this functionality.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160130 91177308-0d34-0410-b5e6-96231b3b80d8
Blacklisted a UUID that is generated by OpenCL on
Mac OS X, because the UUID is the same for all
OpenCL-generated dylibs and therefore would
conflict.

<rdar://problem/11620586>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160135 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11791234>

Fixed a case where the python interpreter could end up holding onto a previous lldb::SBProcess (probably in lldb.process) when run under Xcode. Prior to this fix, the lldb::SBProcess held onto a shared pointer to a lldb_private::Process. This in turn could cause the process to still have a thread list with stack frames. The stack frames would have module shared pointers in the lldb_private::SymbolContext objects. 

We also had issues with things staying in the shared module list too long when we found things by UUID (we didn't remove the out of date ModuleSP from the global module cache).

Now all of this is fixed and everything goes away between runs.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160140 91177308-0d34-0410-b5e6-96231b3b80d8
Added a check to the Section to make sure we don't
return sections that don't have valid modules.

<rdar://problem/11605824>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160141 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11740973>

Fixed issues that could happen when the UUID doesn't change in a binary and old stale debug info could end up being used.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160145 91177308-0d34-0410-b5e6-96231b3b80d8
Unify how we get host version on Mac OS X & iOS.
Also remove our dependency on UIKit & AppKit.
Cleaned up the project files a bit.

<rdar://problem/11814498>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160147 91177308-0d34-0410-b5e6-96231b3b80d8
When parsing the epilogue of a thumbv2 function, when we see the
frame pointer overwritten with the caller's fp value, return to 
expressing the CFA in terms of the stack pointer.
<rdar://problem/11855862>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160150 91177308-0d34-0410-b5e6-96231b3b80d8
Make the setting for "target.process.thread.step-avoid-regexp" work for inlined functions, not just concrete top level functions.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160151 91177308-0d34-0410-b5e6-96231b3b80d8
Resolve source paths that start with ~ when doing substitutions.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160158 91177308-0d34-0410-b5e6-96231b3b80d8
Added the ability to see source context with each frame in the "crashlog" command with the "--source-context" (-C for short to match grep) option.

Also made the symbolication of the crash logs more efficient when using the "--crashed-only" ("-c") option where only the crashed thread is symbolicated. We now only download the images for the frames in the crashed thread.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160160 91177308-0d34-0410-b5e6-96231b3b80d8
Show source by default for the first 4 frames of the crash thread. Also added options to allow showing source for all frames (--source-frames=NFRAMES) and for all threads (--source-all).



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160175 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11753405> Making sure we deal correctly with signed NSNumber values

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160179 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11628688> Making sure to use the ostype format for OSType values

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160180 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11773899> Formatters for BOOL* and BOOL&

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160181 91177308-0d34-0410-b5e6-96231b3b80d8
Updated LLVM and added a fix to LLDB which allows
LLDB to distinguish between multiple anonymous
structs/unions in the same class.

<rdar://problem/11466212>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160186 91177308-0d34-0410-b5e6-96231b3b80d8
Add accessors on process to get & set the selected thread by IndexID (useful since that's the one that "thread list" shows and it won't get reused even if the underlying system thread ID gets reused.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160187 91177308-0d34-0410-b5e6-96231b3b80d8
Be a little more safe when checking whether the
current symbol context is a C++ or Objective-C
instance method.

Specifically, ensure that we fetch information
on the current block, not just the current
function.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160195 91177308-0d34-0410-b5e6-96231b3b80d8
Revert the change I committed yesterday, it caused a regression
with one armv7 unwind.  I'll look at updating this or finding a
different way of fixing it later tonight.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160198 91177308-0d34-0410-b5e6-96231b3b80d8
<rdar://problem/11782789> Changes to the watchpoint implementation on ARM so that we single-step before stopping at the WP. This is necessary because on ARM the WP triggers before the opcode is actually executed, so we would be unable to continue since we would keep hitting the WP. We work around this by disabling the WP, single stepping and then putting the WP back in place.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160199 91177308-0d34-0410-b5e6-96231b3b80d8
Fixing a buildbot issue in GDBRemoteCommunicationServer due to an undefined constant in latest commit

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160208 91177308-0d34-0410-b5e6-96231b3b80d8