Change ProcessKDP::DoReadMemory() to break up large memory
read requests into smaller chunks; some remote kdp stubs
cannot handle memory reads larger than a KB or two & will
error out.
<rdar://problem/16983125> 


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@209341 91177308-0d34-0410-b5e6-96231b3b80d8
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
Merge llvm.org upstream r209452 into dev-tfiala-native-protocol-linux-x86_64

Conflicts:
	test/tools/lldb-gdbserver/TestLldbGdbServer.py
Implemented register read for llgs linux x86_64.

Implemented the $p read register packet.

Enabled the gdb-remote test on linux that verified $p returns a
result that matches the expected bitsize.  Modified the test to
skip registers that don't have sets.  This is needed on x86_64
to skip the DRx debug registers that are reported via qRegisterInfo
but cannot be queried directly.  (Hmm: maybe don't list those
with qRegisterInfo).

Fixed issue in register context reading code appropriated from
RegisterContextPosix* that would try to read a full, raw
register without first checking if the lldb register kind for
the passed-in RegisterInfo* was valid.  Linux x86_64 dr* registers
have the lldb kind set to LLDB_INVALID_REGNUM.