diff options
author | Giovanni Di Sirio <gdisirio@gmail.com> | 2019-04-23 06:53:43 +0000 |
---|---|---|
committer | Giovanni Di Sirio <gdisirio@gmail.com> | 2019-04-23 06:53:43 +0000 |
commit | ceba105275ca7d43a7c425f25787423ea3c90c4c (patch) | |
tree | 531590c85a49aa542d7cc7c4ba7fd3251c8b6c0d /os/common/ports/ARMCMx/compilers | |
parent | a7ce9444af2bcd30e0255c712fbab3dba1a82305 (diff) | |
download | ChibiOS-ceba105275ca7d43a7c425f25787423ea3c90c4c.tar.gz ChibiOS-ceba105275ca7d43a7c425f25787423ea3c90c4c.tar.bz2 ChibiOS-ceba105275ca7d43a7c425f25787423ea3c90c4c.zip |
Fixed bug #1027.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/stable_19.1.x@12753 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
Diffstat (limited to 'os/common/ports/ARMCMx/compilers')
-rw-r--r-- | os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S | 3 | ||||
-rw-r--r-- | os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s | 6 | ||||
-rw-r--r-- | os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s | 7 |
3 files changed, 16 insertions, 0 deletions
diff --git a/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S b/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S index db3f675ea..89e37583e 100644 --- a/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S +++ b/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S @@ -103,6 +103,9 @@ _port_switch: .thumb_func
.globl _port_thread_start
_port_thread_start:
+#if CH_DBG_ENABLE_STACK_CHECK || PORT_ENABLE_GUARD_PAGES
+ bl _port_set_region
+#endif
#if CH_DBG_SYSTEM_STATE_CHECK
bl _dbg_check_unlock
#endif
diff --git a/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s b/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s index 0b330e8d3..b0de85ce1 100644 --- a/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s +++ b/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s @@ -64,6 +64,9 @@ ICSR_PENDSVSET SET 0x10000000 EXTERN chThdExit
EXTERN chSysHalt
EXTERN chSchDoReschedule
+#if CH_DBG_ENABLE_STACK_CHECK || PORT_ENABLE_GUARD_PAGES
+ EXTERN _port_set_region
+#endif
#if CH_DBG_STATISTICS
EXTERN _stats_start_measure_crit_thd
EXTERN _stats_stop_measure_crit_thd
@@ -107,6 +110,9 @@ _port_switch: */
PUBLIC _port_thread_start
_port_thread_start:
+#if CH_DBG_ENABLE_STACK_CHECK || PORT_ENABLE_GUARD_PAGES
+ bl _port_set_region
+#endif
#if CH_DBG_SYSTEM_STATE_CHECK
bl _dbg_check_unlock
#endif
diff --git a/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s b/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s index 6f536c2c2..04d082ee5 100644 --- a/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s +++ b/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s @@ -59,7 +59,11 @@ ICSR_PENDSVSET EQU 0x10000000 AREA |.text|, CODE, READONLY
IMPORT chThdExit
+ IMPORT chSysHalt
IMPORT chSchDoReschedule
+#if CH_DBG_ENABLE_STACK_CHECK || PORT_ENABLE_GUARD_PAGES
+ IMPORT _port_set_region
+#endif
#if CH_DBG_STATISTICS
IMPORT _stats_start_measure_crit_thd
IMPORT _stats_stop_measure_crit_thd
@@ -102,6 +106,9 @@ _port_switch PROC */
EXPORT _port_thread_start
_port_thread_start PROC
+#if CH_DBG_ENABLE_STACK_CHECK || PORT_ENABLE_GUARD_PAGES
+ bl _port_set_region
+#endif
#if CH_DBG_SYSTEM_STATE_CHECK
bl _dbg_check_unlock
#endif
|