Author: jingham
Date: Fri Nov 13 16:19:08 2015
New Revision: 253094

URL: http://llvm.org/viewvc/llvm-project?rev=253094&view=rev
Log:
Change the test to use the instruction list to get the consecutive addresses to 
break on.  Rerunning
was being foiled by ASLR.

Modified:
    
lldb/trunk/packages/Python/lldbsuite/test/functionalities/breakpoint/consecutive_breakpoins/TestConsecutiveBreakpoints.py

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/breakpoint/consecutive_breakpoins/TestConsecutiveBreakpoints.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/breakpoint/consecutive_breakpoins/TestConsecutiveBreakpoints.py?rev=253094&r1=253093&r2=253094&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/breakpoint/consecutive_breakpoins/TestConsecutiveBreakpoints.py
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/functionalities/breakpoint/consecutive_breakpoins/TestConsecutiveBreakpoints.py
 Fri Nov 13 16:19:08 2015
@@ -19,7 +19,7 @@ class ConsecutiveBreakpoitsTestCase(Test
     def test (self):
         self.build ()
         self.consecutive_breakpoints_tests()
-
+        
     def consecutive_breakpoints_tests(self):
         exe = os.path.join (os.getcwd(), "a.out")
 
@@ -40,24 +40,15 @@ class ConsecutiveBreakpoitsTestCase(Test
         thread = process.GetThreadAtIndex(0)
         self.assertEqual(thread.GetStopReason(), lldb.eStopReasonBreakpoint)
 
-        # Step to the next instruction
-        thread.StepInstruction(False)
-        self.assertEqual(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
-        address = thread.GetFrameAtIndex(0).GetPC()
-
-        # Run the process until termination
-        process.Continue()
-
-        # Now launch the process again, and do not stop at entry point.
-        process = target.LaunchSimple (None, None, 
self.get_process_working_directory())
-        self.assertTrue(process, PROCESS_IS_VALID)
-
-        # We should be stopped at the first breakpoint
-        thread = process.GetThreadAtIndex(0)
-        self.assertEqual(thread.GetStopReason(), lldb.eStopReasonBreakpoint)
-
         # Set breakpoint to the next instruction
-        target.BreakpointCreateByAddress(address)
+        frame = thread.GetFrameAtIndex(0)
+        
+        address = frame.GetPCAddress()
+        instructions = target.ReadInstructions(address, 2)
+        self.assertTrue(len(instructions) == 2)
+        address = instructions[1].GetAddress()
+        
+        target.BreakpointCreateByAddress(address.GetLoadAddress(target))
         process.Continue()
 
         # We should be stopped at the second breakpoint


_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to