aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2024-03-12 16:47:38 +0000
committerAndrew Turner <andrew@FreeBSD.org>2024-07-15 12:23:49 +0000
commitcf5be947352bf5956ee98d4ef81050411bd05b08 (patch)
tree063198e519c204f131f2672c2f828c5046af1107
parentc3d86d27c3aa5308bc1d9d1a8a95da7efaf34773 (diff)
arm64: Use a switch to decide when to enable debug
Use a switch statement to decide which exceptions we need to call dbg_enable for. This simplifies adding more esceptions to the list in the future. Reviewed by: jhb Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D44352 (cherry picked from commit d93b3a65f7697630ca1dd2635fc976f3ef36b602)
-rw-r--r--sys/arm64/arm64/trap.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c
index 6534fd2283a1..50f930b66664 100644
--- a/sys/arm64/arm64/trap.c
+++ b/sys/arm64/arm64/trap.c
@@ -496,9 +496,15 @@ do_el1h_sync(struct thread *td, struct trapframe *frame)
* Enable debug exceptions if we aren't already handling one. They will
* be masked again in the exception handler's epilogue.
*/
- if (exception != EXCP_BRK && exception != EXCP_WATCHPT_EL1 &&
- exception != EXCP_SOFTSTP_EL1)
+ switch (exception) {
+ case EXCP_BRK:
+ case EXCP_WATCHPT_EL1:
+ case EXCP_SOFTSTP_EL1:
+ break;
+ default:
dbg_enable();
+ break;
+ }
switch (exception) {
case EXCP_FP_SIMD: