Create multilevel debug mode

llvm-svn: 139913
diff --git a/libcxx/include/__debug b/libcxx/include/__debug
index e7d027a..4e80c6f 100644
--- a/libcxx/include/__debug
+++ b/libcxx/include/__debug
@@ -11,11 +11,17 @@
 #ifndef _LIBCPP_DEBUG_H
 #define _LIBCPP_DEBUG_H
 
+#if _LIBCPP_DEBUG_LEVEL >= 1
+
 #   include <cstdlib>
 #   include <cstdio>
 #   include <cstddef>
 #   define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : (_VSTD::printf("%s\n", m), _VSTD::abort()))
 
+#endif
+
+#if _LIBCPP_DEBUG_LEVEL >= 2
+
 _LIBCPP_BEGIN_NAMESPACE_STD
 
 struct _LIBCPP_VISIBLE __c_node;
@@ -177,5 +183,7 @@
 
 _LIBCPP_END_NAMESPACE_STD
 
+#endif
+
 #endif  // _LIBCPP_DEBUG_H