[lldb/Breakpoint] Include whether or not a breakpoint is a HW BP
authorJonas Devlieghere <jonas@devlieghere.com>
Sat, 25 Jan 2020 01:16:02 +0000 (17:16 -0800)
committerJonas Devlieghere <jonas@devlieghere.com>
Sat, 25 Jan 2020 03:24:25 +0000 (19:24 -0800)
Include whether or not a breakpoint is a hardware breakpoint in the
breakpoint location. This will show up in things like the breakpoint
list.

Differential revision: https://reviews.llvm.org/D73389

lldb/packages/Python/lldbsuite/test/functionalities/breakpoint/hardware_breakpoints/hardware_breakpoint_on_multiple_threads/TestHWBreakMultiThread.py
lldb/source/Breakpoint/BreakpointLocation.cpp

index 0ea8e04..f9a916f 100644 (file)
@@ -101,6 +101,10 @@ class HardwareBreakpointMultiThreadTestCase(TestBase):
             # Continue the loop and test that we are stopped 4 times.
             count += 1
 
+        # Check the breakpoint list.
+        self.expect("breakpoint list", substrs=['hw_break_function', 'hardware'])
+        self.expect("breakpoint list -v", substrs=['function = hw_break_function', 'hardware = true'])
+
         if removal_type == 'delete':
             self.runCmd("settings set auto-confirm true")
 
index ecfc8b5..646c2e3 100644 (file)
@@ -597,7 +597,8 @@ void BreakpointLocation::GetDescription(Stream *s,
     s->EOL();
     s->Indent();
     s->Printf("resolved = %s\n", IsResolved() ? "true" : "false");
-
+    s->Indent();
+    s->Printf("hardware = %s\n", IsHardware() ? "true" : "false");
     s->Indent();
     s->Printf("hit count = %-4u\n", GetHitCount());
 
@@ -608,8 +609,8 @@ void BreakpointLocation::GetDescription(Stream *s,
     }
     s->IndentLess();
   } else if (level != eDescriptionLevelInitial) {
-    s->Printf(", %sresolved, hit count = %u ", (IsResolved() ? "" : "un"),
-              GetHitCount());
+    s->Printf(", %sresolved, %shit count = %u ", (IsResolved() ? "" : "un"),
+              (IsHardware() ? "hardware, " : ""), GetHitCount());
     if (m_options_up) {
       m_options_up->GetDescription(s, level);
     }