aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordave2007-03-01 18:53:24 +0000
committerdave2007-03-01 18:53:24 +0000
commit84d05a535904404d0cd220b6f758c59ae976eea8 (patch)
tree5da6a05a6893fdbd51c403ef70937ddd4533aeff
parent4e1e77c23b5d5d0b5026cdb92b8f3a96ca55aa66 (diff)
There.
-rw-r--r--estorm/vectors.S27
1 files changed, 27 insertions, 0 deletions
diff --git a/estorm/vectors.S b/estorm/vectors.S
new file mode 100644
index 0000000..57e5ea8
--- /dev/null
+++ b/estorm/vectors.S
@@ -0,0 +1,27 @@
+ .code 32
+ .align 0
+ .section ".vectors"
+
+@ What follows is the exception vectors for. They are placed at the
+@ bottom of memory at system start up, and just call into exception
+@ handlers in crt0_s.S.
+@
+@ LDR is used instead of branching because LDR jumps can be relocated.
+
+ ldr pc, v0 @ Reset
+ ldr pc, v1 @ Undefined Instruction
+ ldr pc, v2 @ Software Interrupt
+ ldr pc, v3 @ Prefetch Abort
+ ldr pc, v4 @ Data Abort
+ ldr pc, v5 @ Reserved
+ ldr pc, v6 @ IRQ
+ ldr pc, v7 @ FIQ
+
+v0: .long init_reset
+v1: .long illegal_hdl
+v2: .long swi_hdl
+v3: .long prefetch_hdl
+v4: .long data_hdl
+v5: .long reserved_hdl
+v6: .long irq_hdl
+v7: .long fiq_hdl