<rdar://problem/11852100>

The "stop-line-count-after" and "stop-line-count-before" settings are broken. This fixes them.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160071 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed an issue where if you ask to search the global list of modules for a module with "target modules list", if it found a match in the current target, it would skip looking at the global list. Now if you ask for the global list, we use it and skip the target.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160072 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed a bug that caused the Process not to rebroadcast
the fact that a process exited while running a thread
plan.  For example, if a user types the expression

expr (void)exit(0)

then the process terminates but LLDB does not notify
listeners like Xcode that this occurred.

<rdar://problem/11845155>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160077 91177308-0d34-0410-b5e6-96231b3b80d8
Don't call DoOnRemoval if you are just peeking at events.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160079 91177308-0d34-0410-b5e6-96231b3b80d8
If we hit a breakpoint but there's a thread specifier which doesn't match this thread, return no stop reason.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160080 91177308-0d34-0410-b5e6-96231b3b80d8
Added the ability to search through sections for pointer data.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160083 91177308-0d34-0410-b5e6-96231b3b80d8
Modifying the "address" format, which prints a pointer and a description of what it points to, to detect when the deref of that pointer points to something valid. So if you have:

    % cat sp.cpp 
    #include <tr1/memory>

    class A
    {
    public:
        A (): m_i (12) {}
        virtual ~A() {}
    private:
        int m_i;
    };

    int main (int argc, char const *argv[], char const *envp[])
    {
        A *a_pointers[2] = { NULL, NULL };
        A a1;
        A a2;
        a_pointers[0] = &a1;
        a_pointers[1] = &a2;
        return 0;
    }


And you stop at the "return 0", you can now read memory using the "address" format and see:

(lldb) memory read --format address `&a_pointers`
0x7fff5fbff870: 0x00007fff5fbff860 -> 0x00000001000010b0 vtable for A + 16
0x7fff5fbff878: 0x00007fff5fbff850 -> 0x00000001000010b0 vtable for A + 16
0x7fff5fbff880: 0x00007fff5fbff8d0
0x7fff5fbff888: 0x00007fff5fbff8c0
0x7fff5fbff890: 0x0000000000000001
0x7fff5fbff898: 0x36d54c275add2294
0x7fff5fbff8a0: 0x00007fff5fbff8b0
0x7fff5fbff8a8: 0x0000000100000bb4 a.out`start + 52

Note the extra dereference that was applied to 0x00007fff5fbff860 and 0x00007fff5fbff850 so we can see that these are "A" classes.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160085 91177308-0d34-0410-b5e6-96231b3b80d8
Removed unused variable to quiet a warning.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160086 91177308-0d34-0410-b5e6-96231b3b80d8
Added an editline fix to make the delete key act
as expected on Mac OS X.

<rdar://problem/11813365>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160091 91177308-0d34-0410-b5e6-96231b3b80d8
Add a new 'target modules show-unwind' command to show the different
UnwindPlans for a function.  This specifically does not use any
previously-generated UnwindPlans so if any logging is performed
while creating the UnwindPlans, it will be repeated.  This is
useful for when an lldb stack trace is not correct and you want
to gather diagnostic information from the user -- they can do 
log enable -v lldb unwind, image show-unwind of the function, and
you'll get the full logging as the UnwindPlans are recreated.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160095 91177308-0d34-0410-b5e6-96231b3b80d8
Added a mutex to the call frame info to guard
generation of the FDE index.

<rdar://problem/11813705>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160099 91177308-0d34-0410-b5e6-96231b3b80d8
Add a command channel to wait on along with the file descriptor the ConnectionFileDescriptor class is managing, so we can always pop ourselves out of our select call regardless of how well behaved the channel we are talking to is.

<rdar://problem/11448282>

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