Fixes a typo that causes Reserve(X) to both re-allocate the container and
change the last index (i.e. to X), which has unintended consequences for
Reserve(X) followed by Append().


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

Fixed an issue with the lldb/test/lang/cpp/virtual test case had a virtual class that had a DW_TAG_inheritance child that was virtual and had a DW_AT_data_member_location of:

DW_AT_data_member_location( DW_OP_dup, DW_OP_deref, DW_OP_constu(0x00000018), DW_OP_minus, DW_OP_deref, DW_OP_plus )

We failed to evaluate this and then we were passing the incorrect offset back to clang and clang would crash. The AST external source has a function named LayoutRecordType which allows us to supply the virtual base class offsets, but that really doesn't make sense to do as clang will lay them out correctly. So we must ignore virtual base classes when doing layout.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190811 91177308-0d34-0410-b5e6-96231b3b80d8
Fixes symbol resolution for a function with a tail call because the PC
for the frame is one past the address range of the calling function.
- Lowers the fix from RegisterContextLLDB for use with disassembly
- Fixes one of three issues in the disassembly test in TestInferiorAssert.py

Also adds documentation that explains the resolution depths and interface.

Note: This change affects the resolution scope for eSymbolContextFunction
without impacting the performance of eSymbolContextSymbol.

Thanks to Matt Kopec for his review.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190812 91177308-0d34-0410-b5e6-96231b3b80d8
Add test suite support for TestLoadUnload.py for Linux.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190815 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed symbol lookup to be stable when multiple symbols have the same address.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190816 91177308-0d34-0410-b5e6-96231b3b80d8
Improve stability of Linux ProcessMonitor by not using fds for synchronization:
- ProcessMonitor::[Do|Serve]Operation no longer depend on file descriptors!
- removed unused member functions CloseFD and EnableIPC
- add semaphores to signal when an Operation is ready to be processed/complete.

This commit fixes a bug that was identified under stress-testing (i.e. build
LLVM while running tests) that led to LLDB becoming unresponsive because the
read/write operations on file descriptors in ProcessMonitor were not checked.

Other test runner improvement/convenience:
- pickup environment variables LLDB_LINUX_LOG and LLDB_LINUX_LOG_OPTIONS to
  enable (Linux) logging when running the test suite. Example usage:

        $ LLDB_LINUX_LOG="mylog.txt" LLDB_LINUX_LOG_OPTIONS="process thread" python dotest.py




git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190820 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed a crasher where the remote platform was NULL and was being used.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190823 91177308-0d34-0410-b5e6-96231b3b80d8
Fixing a problem with thread creation signal order dependency

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190831 91177308-0d34-0410-b5e6-96231b3b80d8
Make the docs for the -s -o -S and -O options clearer.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190838 91177308-0d34-0410-b5e6-96231b3b80d8
Re-enabling TestStopHookMultipleThreads
- original bug llvm.org/pr14323 is long closed



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190865 91177308-0d34-0410-b5e6-96231b3b80d8
Update Linux bug tracker link in TestPrintStackTraces
- now fails due to llvm.org/pr15415 (partial stack trace while stopped inside read() call)



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190867 91177308-0d34-0410-b5e6-96231b3b80d8
Examine more than 1 frame for equivalent contexts in ThreadPlanStepOverRange
- searches frames beginning from the current frame, stops when an equivalent context is found
- not using GetStackFrameCount() for performance reasons
- fixes TestInlineStepping (clang/gcc buildbots)



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190868 91177308-0d34-0410-b5e6-96231b3b80d8
Logging enhancements to ConnectionFileDescriptor

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190872 91177308-0d34-0410-b5e6-96231b3b80d8
Avoid abort on "memory read -s N" for N=3,5,6,7

We cannot use "GetMaxU64Bitfield" for non-power-of-two sizes, so just use
the same code that handles N > 8 for these.

Review: http://llvm-reviews.chandlerc.com/D1699


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190873 91177308-0d34-0410-b5e6-96231b3b80d8
Don't output a stray 0x if GetData fails for memory read -f hex


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190875 91177308-0d34-0410-b5e6-96231b3b80d8
Use a StreamString to fix the endianness in
constants before using them in the IR interpreter.

Patch by Félix Cloutier.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190877 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a typo in DataExtractor.cpp causing build breakage
that was introduced by r190873.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190879 91177308-0d34-0410-b5e6-96231b3b80d8
Rename shared libraries for TestLoadUnload.py due to potential shared library name clashes.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190884 91177308-0d34-0410-b5e6-96231b3b80d8
Disabling test broken (on GCC buildbot) due to http://llvm.org/pr14637
- prompt disappears with older libedit versions
- will re-enable once we have a recent libedit on the buildbot in question



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@190889 91177308-0d34-0410-b5e6-96231b3b80d8
Merge pull request #1 from llvm-mirror/master

Merge from mainline