Added gdbremote protocol test for $p and returned data size.

Each register returned by $qRegisterInfo is tested that it's
$p register read returns a representation that is the correct byte size
as indicated by $qRegisterInfo.

Currently enabled for debugserver, disabled for llgs.

The llgs branch will use this to verify $p implementation.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209452 91177308-0d34-0410-b5e6-96231b3b80d8
Make sure SectionLoadHistory::GetCurrentSectionLoadList () is thread safe.

<rdar://problem/15818525>



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209485 91177308-0d34-0410-b5e6-96231b3b80d8
The UnwindTable (one per module) used to hand out shared pointers
to its unwind assembly profiler to all of the FuncUnwinders (one
per symbol) under it.  If lldb is running multiple targets, you
could get two different FuncUnwinders in the same Module trying
to use the same llvm disassembler simultaneously and that may be
a re-entrancy problem.  

Instead, the UnwindTable has the unwind assembly profiler and when
the FuncUnwinders want to use it, they get exclusive access to
the assembly profiler until they're done using it.
<rdar://problem/16992332> 


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209488 91177308-0d34-0410-b5e6-96231b3b80d8
Revert r209488; Greg suggests a different approach.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209492 91177308-0d34-0410-b5e6-96231b3b80d8
Instead of having an UnwindTable own a single assembly profiler, 
and sharing it with all of its FuncUnwinders, have each FuncUnwinder
create an AssemblyProfiler on demand as needed.  I was worried that
the cost of creating the llvm disassemblers would be high for this
approach but it's not supposed to be an expensive operation, and it
means we don't need to add locks around this section of code.
<rdar://problem/16992332> 


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209493 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed the Symbol code to resolve the callable address
of the symbol itself rather than forcing clients to do
it.  This simplifies the logic for the expression
parser a great deal.

<rdar://problem/16935324>


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