Fix broken Linux build after signature change of ResolveExecutable.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222182 91177308-0d34-0410-b5e6-96231b3b80d8
Fix broken NativeProcessLinux.cpp after signature change of ResolveExecutable.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222184 91177308-0d34-0410-b5e6-96231b3b80d8
Change HostThread::GetNativeThread() to return a derived reference.

Previously using HostThread::GetNativeThread() required an ugly
cast to most-derived type.  This solves the issue by simply returning
the derived type directly.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222185 91177308-0d34-0410-b5e6-96231b3b80d8
Fix override/virtual warnings.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222186 91177308-0d34-0410-b5e6-96231b3b80d8
Add APIs on SBFunction and SBCompileUnit to inquire about the language type that the function/compile unit is defined in

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222189 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a problem where the StringPrinter could be mistaking an empty string for a read error, and reporting spurious 'unable to read data' messages. rdar://19007243

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222190 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed a broken test suite test after recent editline merges.

The problem is that editline currently is trying to be smart when we paste things into a terminal window. It detects that input is pending and multi-line input is accepted as long as there is anything pending.

So if you open lldb and paste the text between the quotes:

"command regex carp
s/^$/help/

carp
"

We still still be stuck in the "command regex" multi-line input reader as it will have all three lines:

"s/^$/help/

carp
"

The true fix for this is something Kate Stone will soon work on:

- multi-line input readers must opt into this paste/pending input feature ("expr" will opt into it, all other commands won't)
- If we are in a multi-line input reader that requests this and stuff is pasted, then it will do what it does today
- if we start in a IOHandler that doesn't need/want pending input and text is pasted, and we transistion to a IOHandler that does want this functionality, then disable the pending input. Example text would be:

"frame variable
thread backtrace
expr
for (int i=0;i<10;++i)
  (int)printf("i = %i\n", i);

frame select 0
"

When we push the expression multi-line reader we would disable the pending input because we had pending input _before_ we entered "expr".

If we did this first:

(lldb) expr

Then we pasted:

"void foo()
{
}

void bar()
{
}
"

Then we would allow the pending input to not look for an empty line to terminate the expression. We filed radar 19008425 to track fixing this issue.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222206 91177308-0d34-0410-b5e6-96231b3b80d8
Have CommandObjectCommandsAddRegex inherit from IOHandlerDelegateMultiline so it will not immediately terminate after the first regular expression in "command regex <name>" commands.

Fixed the prompt to not include non-printable characters as it was hosing up the prompt when you ran "command regex foo" and entered multi-line editing mode.

Fixed error strings to include more complete descriptions when bad regular expressions are entered.

Removed the old IOHandlerLinesUpdated function as it is no longer needed (inheriting from IOHandlerDelegateMultiline takes care of what this function used to do).



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222207 91177308-0d34-0410-b5e6-96231b3b80d8
Read the LSDA and Personality Routine function address out of the
eh_frame data.  These two pieces of information are used in the
process of exception handler unwinding on SysV ABI systems.

This patch reads the data from the eh_frame section 
(DWARFCallFrameInfo.cpp), allows for it to be saved & read out
of a given UnwindPlan (UnwindPlan.h, UnwindPlan.cpp) - as well
as printing the information in the UnwindPlan::Dump method - and
adds methods to the FuncUnwinders object so that higher levels
can query if a given function has an LSDA / personality routine
defined.

It's only lightly tested, but seems to be working correctly as long
as your have this information in eh_frame.  Does not address getting
this information from compact unwind yet on Darwin systems.

<rdar://problem/18742797> 



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222214 91177308-0d34-0410-b5e6-96231b3b80d8
Make the mutex ivar in Unwind recursive so we don't have a thread
deadlocking when we have the base Unwind class and the HistoryUnwind
subclass both trying to acquire the lock on the same thread to clear
their respective ivar state.
<rdar://problem/18986350> 


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222221 91177308-0d34-0410-b5e6-96231b3b80d8
Add documentation for the SBTarget::ReadInstructions and
SBTarget::GetInstructions APIs so it's a little clearer to 
understand which should be used.

<rdar://problem/18787018>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222225 91177308-0d34-0410-b5e6-96231b3b80d8
Fix up the code in the FuncUnwinders class that
retrieves the personality routine addr and the
LSDA addr.  Don't bother checking with the
"non-call site" unwind plan - this kind of
information is only going to come from the 
call site unwind plan.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@222226 91177308-0d34-0410-b5e6-96231b3b80d8
Merge remote-tracking branch 'upstream/master' into gold

trunk@222226

Conflicts:
	source/Plugins/Process/Linux/NativeProcessLinux.cpp