summaryrefslogtreecommitdiffstats
path: root/bsps/microblaze/shared/start/start.S
diff options
context:
space:
mode:
authorKinsey Moore <kinsey.moore@oarcorp.com>2022-01-26 10:18:46 -0600
committerJoel Sherrill <joel@rtems.org>2022-02-04 11:30:59 -0600
commit127980c799ef9dee66c9ae4259962d6ffb9776b8 (patch)
treec37500baf0473390f23c45933e50b20874102ffa /bsps/microblaze/shared/start/start.S
parentmicroblaze: Add support for libbsd networking (diff)
downloadrtems-127980c799ef9dee66c9ae4259962d6ffb9776b8.tar.bz2
cpukit/microblaze: Add exception framework
This patch updates the CPU_Exception_frame to include all necessary registers, combines hardware snd software exception handlers into a shared vector, provides an architecture-specific hook for taking control of exception handling, and moves exception handling over to actually using the CPU_Exception_frame instead of a minimal interrupt stack frame. As the significant contents of _exception_handler.S have been entirely rewritten, the copyright information on this file has been updated to reflect that.
Diffstat (limited to 'bsps/microblaze/shared/start/start.S')
-rw-r--r--bsps/microblaze/shared/start/start.S7
1 files changed, 6 insertions, 1 deletions
diff --git a/bsps/microblaze/shared/start/start.S b/bsps/microblaze/shared/start/start.S
index 97250f9316..bd50fe0d24 100644
--- a/bsps/microblaze/shared/start/start.S
+++ b/bsps/microblaze/shared/start/start.S
@@ -76,7 +76,12 @@ _vector_interrupt:
.section .vectors.hw_exception, "ax"
.align 2
_vector_hw_exception:
- brai _hw_exception_handler
+/*
+ * Hardware and software exceptions are handled identically with the MSR[EiP]
+ * bit differentiating them and determining which register should be used for
+ * return.
+ */
+ brai _exception_handler
.section .text
.globl _start1