Dump kernel/native stacks of pure native threads.

Bug: 16463406
Change-Id: Ifa18d7ec6c60721ce4d3e73944851d1f07372043
diff --git a/runtime/thread.cc b/runtime/thread.cc
index 9b37eb7..6b65f12 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -962,6 +962,13 @@
     return false;
   }
 
+  // Threads with no managed stack frames should be shown.
+  const ManagedStack* managed_stack = thread->GetManagedStack();
+  if (managed_stack == NULL || (managed_stack->GetTopQuickFrame() == NULL &&
+      managed_stack->GetTopShadowFrame() == NULL)) {
+    return true;
+  }
+
   // In some other native method? That's interesting.
   // We don't just check kNative because native methods will be in state kSuspended if they're
   // calling back into the VM, or kBlocked if they're blocked on a monitor, or one of the