This revision was not accepted when it landed; it landed in state "Needs Review". This revision was automatically updated to reflect the committed changes. Closed by commit rG620dc1224ff9: Add EXC_SYSCALL to the set of ignorable mach exceptions. (authored by jingham).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151843/new/ https://reviews.llvm.org/D151843 Files: lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py Index: lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py =================================================================== --- lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py +++ lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py @@ -30,10 +30,22 @@ "EXC_BAD_AXESS", error=True, ) - # Now set ourselves to ignore some exceptions. The test depends on ignoring EXC_BAD_ACCESS, but I passed a couple - # to make sure they parse: + # Make sure that we don't accept exceptions that lldb/debugserver need: + self.match( + "settings set platform.plugin.darwin.ignored-exceptions EXC_BREAKPOINT", + "EXC_BREAKPOINT", + error=True, + ) + # Make sure that we don't accept exceptions that lldb/debugserver need: + self.match( + "settings set platform.plugin.darwin.ignored-exceptions EXC_SOFT_SIGNAL", + "EXC_SOFT_SIGNAL", + error=True, + ) + # Now set ourselves to ignore some exceptions. The test depends on ignoring EXC_BAD_ACCESS, but I passed all the + # ones we currently accept to make sure they parse: self.runCmd( - "settings set platform.plugin.darwin.ignored-exceptions EXC_BAD_ACCESS|EXC_ARITHMETIC" + "settings set platform.plugin.darwin.ignored-exceptions EXC_BAD_ACCESS|EXC_BAD_INSTRUCTION|EXC_ARITHMETIC|EXC_RESOURCE|EXC_GUARD|EXC_SYSCALL" ) (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint( self, "Stop here to get things going", self.main_source_file Index: lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp =================================================================== --- lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp +++ lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp @@ -63,7 +63,8 @@ || candidate == "EXC_BAD_INSTRUCTION" || candidate == "EXC_ARITHMETIC" || candidate == "EXC_RESOURCE" - || candidate == "EXC_GUARD")) { + || candidate == "EXC_GUARD" + || candidate == "EXC_SYSCALL")) { error.SetErrorStringWithFormat("invalid exception type: '%s'", candidate.str().c_str()); return error;
Index: lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py =================================================================== --- lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py +++ lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py @@ -30,10 +30,22 @@ "EXC_BAD_AXESS", error=True, ) - # Now set ourselves to ignore some exceptions. The test depends on ignoring EXC_BAD_ACCESS, but I passed a couple - # to make sure they parse: + # Make sure that we don't accept exceptions that lldb/debugserver need: + self.match( + "settings set platform.plugin.darwin.ignored-exceptions EXC_BREAKPOINT", + "EXC_BREAKPOINT", + error=True, + ) + # Make sure that we don't accept exceptions that lldb/debugserver need: + self.match( + "settings set platform.plugin.darwin.ignored-exceptions EXC_SOFT_SIGNAL", + "EXC_SOFT_SIGNAL", + error=True, + ) + # Now set ourselves to ignore some exceptions. The test depends on ignoring EXC_BAD_ACCESS, but I passed all the + # ones we currently accept to make sure they parse: self.runCmd( - "settings set platform.plugin.darwin.ignored-exceptions EXC_BAD_ACCESS|EXC_ARITHMETIC" + "settings set platform.plugin.darwin.ignored-exceptions EXC_BAD_ACCESS|EXC_BAD_INSTRUCTION|EXC_ARITHMETIC|EXC_RESOURCE|EXC_GUARD|EXC_SYSCALL" ) (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint( self, "Stop here to get things going", self.main_source_file Index: lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp =================================================================== --- lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp +++ lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp @@ -63,7 +63,8 @@ || candidate == "EXC_BAD_INSTRUCTION" || candidate == "EXC_ARITHMETIC" || candidate == "EXC_RESOURCE" - || candidate == "EXC_GUARD")) { + || candidate == "EXC_GUARD" + || candidate == "EXC_SYSCALL")) { error.SetErrorStringWithFormat("invalid exception type: '%s'", candidate.str().c_str()); return error;
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits