--- a/os/common/ports/ARMCMx/compilers/GCC/crt0_v6m.s
+++ b/os/common/ports/ARMCMx/compilers/GCC/crt0_v6m.s
@@ -105,6 +105,13 @@
- #define CRT0_CALL_DESTRUCTORS TRUE\r
- #endif\r
- \r
-+/**\r
-+ * @brief Magic number for jumping to bootloader.\r
-+ */\r
-+#if !defined(MAGIC_BOOTLOADER_NUMBER) || defined(__DOXYGEN__)\r
-+#define MAGIC_BOOTLOADER_NUMBER 0xDEADBEEF\r
-+#endif\r
-+\r
- /*===========================================================================*/\r
- /* Code section. */\r
- /*===========================================================================*/\r
+ #define CRT0_CALL_DESTRUCTORS TRUE
+ #endif
+
++/**
++ * @brief Magic number for jumping to bootloader.
++ */
++#if !defined(MAGIC_BOOTLOADER_NUMBER) || defined(__DOXYGEN__)
++#define MAGIC_BOOTLOADER_NUMBER 0xDEADBEEF
++#endif
++
+ /*===========================================================================*/
+ /* Code section. */
+ /*===========================================================================*/
@@ -124,6 +131,17 @@
- .thumb_func\r
- .global Reset_Handler\r
- Reset_Handler:\r
-+\r
-+#ifdef STM32_BOOTLOADER_ADDRESS\r
-+ /* jump to bootloader code */\r
-+ ldr r0, =__ram0_end__-4\r
-+ ldr r1, =MAGIC_BOOTLOADER_NUMBER\r
-+ ldr r2, [r0, #0]\r
-+ str r0, [r0, #0] /* erase stored magic */\r
-+ cmp r2, r1\r
-+ beq Bootloader_Jump\r
-+#endif /* STM32_BOOTLOADER_ADDRESS */\r
-+\r
- /* Interrupts are globally masked initially.*/\r
- cpsid i\r
- \r
+ .thumb_func
+ .global Reset_Handler
+ Reset_Handler:
++
++#ifdef STM32_BOOTLOADER_ADDRESS
++ /* jump to bootloader code */
++ ldr r0, =__ram0_end__-4
++ ldr r1, =MAGIC_BOOTLOADER_NUMBER
++ ldr r2, [r0, #0]
++ str r0, [r0, #0] /* erase stored magic */
++ cmp r2, r1
++ beq Bootloader_Jump
++#endif /* STM32_BOOTLOADER_ADDRESS */
++
+ /* Interrupts are globally masked initially.*/
+ cpsid i
+
@@ -242,6 +260,21 @@ endfiniloop:
- ldr r1, =__default_exit\r
- bx r1\r
- \r
-+#ifdef STM32_BOOTLOADER_ADDRESS\r
-+/*\r
-+ * Jump-to-bootloader function.\r
-+ */\r
-+\r
-+ .align 2\r
-+ .thumb_func\r
-+Bootloader_Jump:\r
-+ ldr r0, =STM32_BOOTLOADER_ADDRESS\r
-+ ldr r1, [r0, #0]\r
-+ mov sp, r1\r
-+ ldr r0, [r0, #4]\r
-+ bx r0\r
-+#endif /* STM32_BOOTLOADER_ADDRESS */\r
-+\r
- #endif\r
- \r
- /** @} */\r
+ ldr r1, =__default_exit
+ bx r1
+
++#ifdef STM32_BOOTLOADER_ADDRESS
++/*
++ * Jump-to-bootloader function.
++ */
++
++ .align 2
++ .thumb_func
++Bootloader_Jump:
++ ldr r0, =STM32_BOOTLOADER_ADDRESS
++ ldr r1, [r0, #0]
++ mov sp, r1
++ ldr r0, [r0, #4]
++ bx r0
++#endif /* STM32_BOOTLOADER_ADDRESS */
++
+ #endif
+
+ /** @} */
diff --git a/os/common/ports/ARMCMx/compilers/GCC/crt0_v7m.s b/os/common/ports/ARMCMx/compilers/GCC/crt0_v7m.s
index 4812a29..dca9f88 100644
--- a/os/common/ports/ARMCMx/compilers/GCC/crt0_v7m.s
+++ b/os/common/ports/ARMCMx/compilers/GCC/crt0_v7m.s
@@ -140,6 +140,13 @@
- #define CRT0_CPACR_INIT 0x00F00000\r
- #endif\r
- \r
-+/**\r
-+ * @brief Magic number for jumping to bootloader.\r
-+ */\r
-+#if !defined(MAGIC_BOOTLOADER_NUMBER) || defined(__DOXYGEN__)\r
-+#define MAGIC_BOOTLOADER_NUMBER 0xDEADBEEF\r
-+#endif\r
-+\r
- /*===========================================================================*/\r
- /* Code section. */\r
- /*===========================================================================*/\r
+ #define CRT0_CPACR_INIT 0x00F00000
+ #endif
+
++/**
++ * @brief Magic number for jumping to bootloader.
++ */
++#if !defined(MAGIC_BOOTLOADER_NUMBER) || defined(__DOXYGEN__)
++#define MAGIC_BOOTLOADER_NUMBER 0xDEADBEEF
++#endif
++
+ /*===========================================================================*/
+ /* Code section. */
+ /*===========================================================================*/
@@ -164,6 +171,17 @@
- .thumb_func\r
- .global Reset_Handler\r
- Reset_Handler:\r
-+\r
-+#ifdef STM32_BOOTLOADER_ADDRESS\r
-+ /* jump to bootloader code */\r
-+ ldr r0, =__ram0_end__-4\r
-+ ldr r1, =MAGIC_BOOTLOADER_NUMBER\r
-+ ldr r2, [r0, #0]\r
-+ str r0, [r0, #0] /* erase stored magic */\r
-+ cmp r2, r1\r
-+ beq Bootloader_Jump\r
-+#endif /* STM32_BOOTLOADER_ADDRESS */\r
-+\r
- /* Interrupts are globally masked initially.*/\r
- cpsid i\r
- \r
+ .thumb_func
+ .global Reset_Handler
+ Reset_Handler:
++
++#ifdef STM32_BOOTLOADER_ADDRESS
++ /* jump to bootloader code */
++ ldr r0, =__ram0_end__-4
++ ldr r1, =MAGIC_BOOTLOADER_NUMBER
++ ldr r2, [r0, #0]
++ str r0, [r0, #0] /* erase stored magic */
++ cmp r2, r1
++ beq Bootloader_Jump
++#endif /* STM32_BOOTLOADER_ADDRESS */
++
+ /* Interrupts are globally masked initially.*/
+ cpsid i
+
@@ -305,6 +323,21 @@ endfiniloop:
- /* Branching to the defined exit handler.*/\r
- b __default_exit\r
- \r
-+#ifdef STM32_BOOTLOADER_ADDRESS\r
-+/*\r
-+ * Jump-to-bootloader function.\r
-+ */\r
-+\r
-+ .align 2\r
-+ .thumb_func\r
-+Bootloader_Jump:\r
-+ ldr r0, =STM32_BOOTLOADER_ADDRESS\r
-+ ldr r1, [r0, #0]\r
-+ mov sp, r1\r
-+ ldr r0, [r0, #4]\r
-+ bx r0\r
-+#endif /* STM32_BOOTLOADER_ADDRESS */\r
-+\r
- #endif /* !defined(__DOXYGEN__) */\r
- \r
- /** @} */\r
+ /* Branching to the defined exit handler.*/
+ b __default_exit
+
++#ifdef STM32_BOOTLOADER_ADDRESS
++/*
++ * Jump-to-bootloader function.
++ */
++
++ .align 2
++ .thumb_func
++Bootloader_Jump:
++ ldr r0, =STM32_BOOTLOADER_ADDRESS
++ ldr r1, [r0, #0]
++ mov sp, r1
++ ldr r0, [r0, #4]
++ bx r0
++#endif /* STM32_BOOTLOADER_ADDRESS */
++
+ #endif /* !defined(__DOXYGEN__) */
+
+ /** @} */