diff options
| author | Meco Man <[email protected]> | 2023-09-19 14:23:19 -0400 |
|---|---|---|
| committer | guo <[email protected]> | 2023-09-20 10:01:25 +0800 |
| commit | 47a3139b633c15494c21db75ebb28e04d8c44787 (patch) | |
| tree | 16d48b53bf7c1ac4d62386164e5e97d93e1094bd /libcpu | |
| parent | 092b52ab242b4961b82dce18666133a1a4f8935a (diff) | |
[iar]修复__LDREX 和 __STREX 报 declared implicitly 警告
related: https://github.com/RT-Thread/rt-thread/issues/7381
Diffstat (limited to 'libcpu')
| -rw-r--r-- | libcpu/arm/common/atomic_arm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libcpu/arm/common/atomic_arm.c b/libcpu/arm/common/atomic_arm.c index 290d72e717..e9f1d4465b 100644 --- a/libcpu/arm/common/atomic_arm.c +++ b/libcpu/arm/common/atomic_arm.c @@ -12,6 +12,7 @@ #if defined (__IAR_SYSTEMS_ICC__) /* for IAR Compiler */ #include <intrinsics.h> +#include <iccarm_builtin.h> #endif /** \brief LDR Exclusive (32 bit) @@ -30,7 +31,7 @@ #elif defined (__IAR_SYSTEMS_ICC__) /* for IAR Compiler */ _Pragma("inline=forced") __intrinsic rt_atomic_t __LDREXW(volatile rt_atomic_t *ptr) { - return __LDREX((unsigned int *)ptr); + return __iar_builtin_LDREX((volatile unsigned int *)ptr); } #elif defined (__GNUC__) /* GNU GCC Compiler */ __attribute__((always_inline)) static inline rt_atomic_t __LDREXW(volatile rt_atomic_t *addr) |
