summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/arm64/arm64/trap.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/arch/arm64/arm64/trap.c b/sys/arch/arm64/arm64/trap.c
index d45c3873f62..537cd199515 100644
--- a/sys/arch/arm64/arm64/trap.c
+++ b/sys/arch/arm64/arm64/trap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.c,v 1.9 2017/08/09 05:53:11 jsg Exp $ */
+/* $OpenBSD: trap.c,v 1.10 2017/08/14 21:53:34 kettenis Exp $ */
/*-
* Copyright (c) 2014 Andrew Turner
* All rights reserved.
@@ -291,6 +291,11 @@ do_el0_sync(struct trapframe *frame)
refreshcreds(p);
switch(exception) {
+ case EXCP_UNKNOWN:
+ vfp_save();
+ sv.sival_ptr = (void *)frame->tf_elr;
+ trapsignal(p, SIGILL, 0, ILL_ILLOPC, sv);
+ break;
case EXCP_FP_SIMD:
case EXCP_TRAP_FP:
vfp_fault(frame->tf_elr, 0, frame, exception);