Index: lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_step/TestExitDuringStep.py =================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_step/TestExitDuringStep.py +++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/thread/exit_during_step/TestExitDuringStep.py @@ -23,7 +23,8 @@ self.build(dictionary=self.getBuildFlags()) self.exit_during_step_base( "thread step-inst -m all-threads", - 'stop reason = instruction step') + 'stop reason = instruction step', + True) @skipIfFreeBSD # llvm.org/pr21411: test is hanging def test_step_over(self): @@ -31,7 +32,8 @@ self.build(dictionary=self.getBuildFlags()) self.exit_during_step_base( "thread step-over -m all-threads", - 'stop reason = step over') + 'stop reason = step over', + False) @skipIfFreeBSD # llvm.org/pr21411: test is hanging def test_step_in(self): @@ -39,7 +41,8 @@ self.build(dictionary=self.getBuildFlags()) self.exit_during_step_base( "thread step-in -m all-threads", - 'stop reason = step in') + 'stop reason = step in', + False) def setUp(self): # Call super's setUp(). @@ -48,7 +51,7 @@ self.breakpoint = line_number('main.cpp', '// Set breakpoint here') self.continuepoint = line_number('main.cpp', '// Continue from here') - def exit_during_step_base(self, step_cmd, step_stop_reason): + def exit_during_step_base(self, step_cmd, step_stop_reason, by_instruction): """Test thread exit during step handling.""" exe = os.path.join(os.getcwd(), "a.out") self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET) @@ -111,6 +114,9 @@ current_line = frame.GetLineEntry().GetLine() + if by_instruction and current_line == 0: + continue + self.assertGreaterEqual( current_line, self.breakpoint,