The following section describes the role of the target specific startup code.
When you create a new project to produce an executable file using a target
specific project template, a file containing the default startup code for the
target will be added to the project. Initially a shared version of this file
will be added to the project, if you want to modify this file you should select
the file in the project explorer and then select Import to copy the file
to your project directory.
The target startup file typically consists of the following:
- _vectors - This is the exception vector table. It is put into it's
own .vectors section in order to ensure that it is always placed at
address 0x00000000.
- reset_handler - This is the main reset handler function and
typically the main entry point of an executable. The reset handler will
usually carry out any target specific initialisation and then jump to the _start
entry point. In a C system the _start entry point is in the crt0.s
file.
- undef_handler - This is the default undefined instruction exception
handler. This has been declared as a weak symbol to allow the user the
override the implementation.
- swi_handler - This is the default software interrupt exception
handler. This has been declared as a weak symbol to allow the user the
override the implementation.
- pabort_handler - This is the default prefetch abort exception
handler. This has been declared as a weak symbol to allow the user the
override the implementation.
- dabort_handler - This is the default data abort exception handler.
This has been declared as a weak symbol to allow the user the override the
implementation.
- irq_handler - This is the default IRQ exception handler. This has
been declared as a weak symbol to allow the user the override the
implementation.
- fiq_handler - This is the default FIQ exception handler. This has
been declared as a weak symbol to allow the user the override the
implementation.