Fixes for mtvec-related issues in regressions
Created by: silabs-hfegran
Previous implementation for trap handler generation and nmis did not take vectored/non-vectored mode into account and used the wrong symbol as mtvec handler reference.
This PR aims to solve these issues by:
- nmi is always located at mtvec + 4*15 (actual configured mtvec, not the address of mtvec_handler)
- vectored and direct mode interrupt should have different handlers, one using trampoline code to get to the right handler (leaving room for nmi at the correct offset), the other places the jump-instructions directly at mtvec (and includes a jump to the nmi handler at the correct location)
These changes should resolve most timeouts due to interrupt-related runaway code.