15.1.2.26 user_init
The user_init
attribute may be applied to any
non-interrupt function with void
parameter and return types. Applying
this attribute will cause default C start-up modules to call this function before the
user main is executed. There is no guarantee of ordering, so these functions cannot rely
on other user_init
functions having been previously run; these
functions will be called after PSV and data initialization. A user_init
may still be called by the executing program. For example:
void __attribute__((user_init)) initialize_me(void) {
// perform initalization sequence alpha alpha beta
}