File tree 1 file changed +9
-4
lines changed
1 file changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -79,11 +79,11 @@ SECTIONS
79
79
80
80
/* Reset vector */
81
81
KEEP(*(.vector_table.reset_vector)); /* this is the `__RESET_VECTOR` symbol */
82
- __reset_vector = .;
83
82
84
83
/* Exceptions */
84
+ __exceptions = .; /* start of exceptions */
85
85
KEEP(*(.vector_table.exceptions)); /* this is the `__EXCEPTIONS` symbol */
86
- __eexceptions = .;
86
+ __eexceptions = .; /* end of exceptions */
87
87
88
88
/* Device specific interrupts */
89
89
KEEP(*(.vector_table.interrupts)); /* this is the `__INTERRUPTS` symbol */
@@ -231,8 +231,13 @@ origin and length are set to multiples of 8 in the `memory.x` file.");
231
231
232
232
/* # Position checks */
233
233
234
- /* ## .vector_table */
235
- ASSERT(__reset_vector == ADDR(.vector_table) + 0x8, "
234
+ /* ## .vector_table
235
+ *
236
+ * If the *start* of exception vectors is not 8 bytes past the start of the
237
+ * vector table, then we somehow did not place the reset vector, which should
238
+ * live 4 bytes past the start of the vector table.
239
+ */
240
+ ASSERT(__exceptions == ADDR(.vector_table) + 0x8, "
236
241
BUG(cortex-m-rt): the reset vector is missing");
237
242
238
243
ASSERT(__eexceptions == ADDR(.vector_table) + 0x40, "
You can’t perform that action at this time.
0 commit comments