Skip to content

Commit

Permalink
added naked to all ARMM C startup entry codes
Browse files Browse the repository at this point in the history
  • Loading branch information
nvitya committed Sep 3, 2024
1 parent 0b01b8f commit d9750d4
Show file tree
Hide file tree
Showing 39 changed files with 77 additions and 76 deletions.
4 changes: 2 additions & 2 deletions adc/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions blinkled/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions can/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions coremark/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions dac/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions disp_7seg/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions disp_char/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions disp_color/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions disp_mono/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions eth_raw/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions eth_udp/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions extirq/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions i2c_eeprom/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions i2c_fram/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions i2c_sensor/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions i2c_slave/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions intflash/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions irq_timer/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions keymatrix/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions ledstripe/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
4 changes: 2 additions & 2 deletions psram/src/startup_armm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

extern "C" __attribute__((noreturn)) void _start(unsigned self_flashing);

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void soft_entry() // used at development of RAM-loaded (self-flashing) applications
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand All @@ -32,7 +32,7 @@ void soft_entry() // used at development of RAM-loaded (self-flashing) applicat
_start(1);
}

extern "C" __attribute__((section(".startup"), used, noreturn))
extern "C" __attribute__((section(".startup"), naked, used, noreturn))
void cold_entry() // power on start using integrated bootloaders and non volatile flash memory
{
mcu_preinit_code(); // inline code for preparing the MCU, RAM regions. Without this even the stack does not work on some MCUs.
Expand Down
Loading

0 comments on commit d9750d4

Please sign in to comment.