summaryrefslogtreecommitdiff
path: root/firmware/target/arm/crt0.S
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/crt0.S')
-rw-r--r--firmware/target/arm/crt0.S32
1 files changed, 0 insertions, 32 deletions
diff --git a/firmware/target/arm/crt0.S b/firmware/target/arm/crt0.S
index 7befecb593..b9cc27f5c5 100644
--- a/firmware/target/arm/crt0.S
+++ b/firmware/target/arm/crt0.S
@@ -137,38 +137,6 @@ newstart:
137 ldr ip, =main @ make sure we are using the virtual address 137 ldr ip, =main @ make sure we are using the virtual address
138 bx ip 138 bx ip
139 139
140/* All illegal exceptions call into UIE with exception address as first
141 * parameter. This is calculated differently depending on which exception
142 * we're in. Second parameter is exception number, used for a string lookup
143 * in UIE. */
144undef_instr_handler:
145 sub r0, lr, #4 @ r0 points to the faulty ARM instruction
146#ifdef USE_THUMB
147 mrs r1, spsr
148 tst r1, #(1<<5) @ T bit set ?
149 subne r0, lr, #2 @ if yes, r0 points to the faulty THUMB instruction
150#endif /* USE_THUMB */
151 mov r1, #0
152 b UIE
153
154/* We run sys mode most of the time, and should never see a software
155 * exception being thrown. Make it illegal and call UIE. */
156software_int_handler:
157reserved_handler:
158 sub r0, lr, #4
159 mov r1, #4
160 b UIE
161
162prefetch_abort_handler:
163 sub r0, lr, #4
164 mov r1, #1
165 b UIE
166
167data_abort_handler:
168 sub r0, lr, #8
169 mov r1, #2
170 b UIE
171
172/* Cache-align interrupt stacks */ 140/* Cache-align interrupt stacks */
173.balign 32 141.balign 32
174 142