If lldb is being built with ASAN instrumentation, have lldb
create its own threads with 8MB additional maximum stack size.
Extra room is needed for the bookkeeping needed for this 
instrumentation.

llvm-svn: 227421
diff --git a/lldb/source/Host/common/ThreadLauncher.cpp b/lldb/source/Host/common/ThreadLauncher.cpp
index ec7da32..c19a233 100644
--- a/lldb/source/Host/common/ThreadLauncher.cpp
+++ b/lldb/source/Host/common/ThreadLauncher.cpp
@@ -38,6 +38,16 @@
         error.SetError(::GetLastError(), eErrorTypeWin32);
 #else
 
+
+    // ASAN instrumentation adds a lot of bookkeeping overhead on stack frames.
+#if __has_feature(address_sanitizer)
+    const size_t eight_megabytes = 8 * 1024 * 1024;
+    if (min_stack_byte_size < eight_megabytes)
+    {
+        min_stack_byte_size += eight_megabytes;
+    }
+#endif
+
     pthread_attr_t *thread_attr_ptr = NULL;
     pthread_attr_t thread_attr;
     bool destroy_attr = false;