// peripherals.c void clock_init(void) ... void gpio_init(void) ...
ldr r0, =__init_slots_start ldr r1, =__init_slots_end bl call_init_slots ; loops through [r0, r1) calling each function pointer
Consider a bare‑metal ARM Cortex‑M project:
// peripherals.c void clock_init(void) ... void gpio_init(void) ...
ldr r0, =__init_slots_start ldr r1, =__init_slots_end bl call_init_slots ; loops through [r0, r1) calling each function pointer global_init_slot
Consider a bare‑metal ARM Cortex‑M project: // peripherals