mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-02-15 15:33:56 +00:00
Add EXC_SYSCALL to the set of ignorable mach exceptions.
Add some more tests of what exceptions we accept and don't accept. Differential Revision: https://reviews.llvm.org/D151843
This commit is contained in:
parent
82b5a934b8
commit
620dc1224f
@ -63,7 +63,8 @@ static Status ExceptionMaskValidator(const char *string, void *unused) {
|
||||
|| 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;
|
||||
|
@ -30,10 +30,22 @@ class TestDarwinSignalHandlers(TestBase):
|
||||
"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
|
||||
|
Loading…
x
Reference in New Issue
Block a user