[Lldb-commits] [PATCH] Enable TestInferiorCrashing and TestRecursiveInferior on android

Pavel Labath labath at google.com
Thu Jun 25 05:49:11 PDT 2015


Hi tberghammer,

the original bug was fixed (a rogue breakpoint messing up inferior data structures) and the tests
seems to pass now. Since android has a default SEGV handler, I have had to alter the test
expectation in this case.

http://reviews.llvm.org/D10733

Files:
  test/functionalities/inferior-crashing/TestInferiorCrashing.py
  test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py

Index: test/functionalities/inferior-crashing/TestInferiorCrashing.py
===================================================================
--- test/functionalities/inferior-crashing/TestInferiorCrashing.py
+++ test/functionalities/inferior-crashing/TestInferiorCrashing.py
@@ -68,7 +68,6 @@
         self.inferior_crashing_step_after_break()
 
     @skipIfFreeBSD # llvm.org/pr16684
-    @expectedFailureAndroid("llvm.org/pr23694")
     def test_inferior_crashing_step_after_break_dwarf(self):
         """Test that lldb functions correctly after stepping through a crash."""
         self.buildDwarf()
@@ -215,6 +214,8 @@
         expected_state = 'exited' # Provide the exit code.
         if self.platformIsDarwin():
             expected_state = 'stopped' # TODO: Determine why 'next' and 'continue' have no effect after a crash.
+        elif re.match(".*-.*-.*-android", self.dbg.GetSelectedPlatform().GetTriple()):
+            expected_state = 'stopped' # android has a default SEGV handler, which will re-raise the signal, so we come up stopped again
 
         self.expect("next",
             substrs = ['Process', expected_state])
Index: test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
===================================================================
--- test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
+++ test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
@@ -68,7 +68,6 @@
         self.recursive_inferior_crashing_step_after_break()
 
     @skipIfFreeBSD # llvm.org/pr16684
-    @expectedFailureAndroid("llvm.org/pr23694")
     def test_recursive_inferior_crashing_step_after_break_dwarf(self):
         """Test that lldb functions correctly after stepping through a crash."""
         self.buildDwarf()
@@ -212,6 +211,9 @@
         expected_state = 'exited' # Provide the exit code.
         if self.platformIsDarwin():
             expected_state = 'stopped' # TODO: Determine why 'next' and 'continue' have no effect after a crash.
+        elif re.match(".*-.*-.*-android", self.dbg.GetSelectedPlatform().GetTriple()):
+            expected_state = 'stopped' # android has a default SEGV handler, which will re-raise the signal, so we come up stopped again
+
 
         self.expect("next",
             substrs = ['Process', expected_state])

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D10733.28455.patch
Type: text/x-patch
Size: 2366 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20150625/4a65f85a/attachment.bin>


More information about the lldb-commits mailing list