Hello, I'm looking into how the unwind mechanism works in order to gather information to inform how we should eventually handle exceptions in MTE.
I'm currently having a discussion on the llvm-dev list about how HWASAN handles exceptions, and believe it has relevence. https://lists.llvm.org/pipermail/llvm-dev/2019-November/136807.html In the above email Peter brings up two hypothetical cases where an unwind landing pad increments the stack pointer before calling _Unwind_Resume. I have not found anything in the relevant ABI documents that discounts this possibility, but I am wondering if it happens in practice. (if this does happen in practice, then there would be extra work if the ABI were strengthened to ban this on MTE tagged functions). Does anyone know if GCC could emit such a landing pad? Cheers, MM