[debugger] Changing how debugger handles exception when hybrid suspend is enabled...
authorThays Grazia <thaystg@gmail.com>
Wed, 23 Oct 2019 20:56:58 +0000 (17:56 -0300)
committerGitHub <noreply@github.com>
Wed, 23 Oct 2019 20:56:58 +0000 (17:56 -0300)
commitace84342024f4729b33a8c2517b75b3fd83d1048
treeda54647c0a8c2050c4d87bc857b98f5b75bb837f
parent51b535ff07e3cacfee19967d7ade74eef59d38c1
[debugger] Changing how debugger handles exception when hybrid suspend is enabled (mono/mono#17478)

* Removing all fixes to fix mono/mono#15203 and mono/mono#17083, and trying a new approach to fix this mono/mono#17084, together.

The thing is when we are executing on hybrid suspend the caller is executed inside try catch in the runtime_invoke_ method that is generated. And this try catch should be ignored for the debugger exception, otherwise it's the last try catch in main thread, but should always be considered to generate the stack trace.

Fixes mono/mono#17084

* This test check the case that we were missing. On preemptive this test always runs perfectly, on Hybrid, never run well until this PR.

* Changing how call unit test.
Changing variable name.

Commit migrated from https://github.com/mono/mono/commit/8fda1738f728dec900e7a53b78fefdbbbc9e0924
src/mono/mono/mini/exceptions-amd64.c
src/mono/mono/mini/exceptions-arm.c
src/mono/mono/mini/exceptions-arm64.c
src/mono/mono/mini/exceptions-mips.c
src/mono/mono/mini/exceptions-ppc.c
src/mono/mono/mini/exceptions-s390x.c
src/mono/mono/mini/exceptions-sparc.c
src/mono/mono/mini/exceptions-x86.c
src/mono/mono/mini/mini-exceptions.c