Add ObjectFileJIT library


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204698 91177308-0d34-0410-b5e6-96231b3b80d8
Add expected failure annotation for llvm.org/pr19241


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204718 91177308-0d34-0410-b5e6-96231b3b80d8
Update 'running threaded' messages after option parsing change

"Running multithreaded with n threads (from LLDB_TEST_THREADS)" is
incorrect in the common case, because the thread count is now obtained
from a --threads option, or a default of multiprocessing.cpu_count().

I left the messages in for now as there are some intermittent issues
that happen while running tests multithreaded and it may help in
triaging those.  We may wish to just remove them later on.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204725 91177308-0d34-0410-b5e6-96231b3b80d8
A fix for: http://llvm.org/bugs/show_bug.cgi?id=19241 

When there was no process, the expression options were set to not ignore breakpoints. This causes debug info to be generated and causes errors when evaluating simple expressions.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204745 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed up intermittently failing tests to skip on Linux.

Also added 'import sys' on some tests that are using non-standard
unittest2.skipUnless blocks with code that is intended to do things
that we have more specializes @* attributes for.  These skip
conditions were failing to execute due to missing import, causing
darwin-only tests to run on Linux regardless.  Will file a bug for
that separately.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204747 91177308-0d34-0410-b5e6-96231b3b80d8
Improve Elf object file UUID calculation performance.

This change makes significant improvements in the performance of
calculating a UUID within ObjectFileELF, and handles both running
processes and core files correctly. This does lazy evaluation of
UUID generation and caches the result when calculated.

Change by Piotr Rak.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204749 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed the IRInterpreter to ignore call instructions
that call debug-information intrinsics.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204750 91177308-0d34-0410-b5e6-96231b3b80d8
Added a missing "break" to avoid falling through
when other cases get added.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204751 91177308-0d34-0410-b5e6-96231b3b80d8
Move calls to DisableAllBreakpointSites() and m_thread_list.DiscardThreadPlans() into base Process::Destroy() instead of in subclass DoDestroy() methods.


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

Add a GetFoundationVersion() to AppleObjCRuntime
This API is used to return and cache the major version of Foundation.framework, which is potentially a useful piece of data to key off of to enable or disable certain ObjC related behaviors (especially in data formatters)



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204756 91177308-0d34-0410-b5e6-96231b3b80d8
Make ProcessLinux return true for DetachRequiresHalt() because PTRACE_DETACH requires this.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204759 91177308-0d34-0410-b5e6-96231b3b80d8
Make sure this test has a looser dependency on the exact class generated here.. it is going to be some sort of NS-provided String, but let's not bet on the details

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

For small structs, the frame format now prints them as one-liners
This follows the same definition that frame variable does for deciding what a "small struct" is, and as such should be fairly consistent with the variable display in general



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204762 91177308-0d34-0410-b5e6-96231b3b80d8
Add a test case for the previous commit



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@204763 91177308-0d34-0410-b5e6-96231b3b80d8
Made the Materializer not write back variables
if they didn't change, just like it does for
registers.  This makes life easier for kernel
debugging and any other situation where values
are read-only.

<rdar://problem/16367795>


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