summaryrefslogtreecommitdiff
path: root/libcpu
diff options
context:
space:
mode:
author蒙蒙plus <[email protected]>2026-05-28 18:08:24 +0800
committerRbb666 <[email protected]>2026-06-02 18:05:02 +0800
commitb1d51b4964a316e7225b94728c6701b4948b0735 (patch)
tree16a6d419e6f4cf168d532f14903dd74069bfd0d6 /libcpu
parent2e4f500b147a09c95a5f7f2be5f76422d2377472 (diff)
fix IAR build error
Diffstat (limited to 'libcpu')
-rw-r--r--libcpu/arm/cortex-m4/cpuport.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libcpu/arm/cortex-m4/cpuport.c b/libcpu/arm/cortex-m4/cpuport.c
index 69bcc4c6d9..c78c75bd55 100644
--- a/libcpu/arm/cortex-m4/cpuport.c
+++ b/libcpu/arm/cortex-m4/cpuport.c
@@ -455,7 +455,9 @@ rt_inline rt_uint32_t rt_hw_get_ipsr(void)
__asm volatile ("MRS %0, ipsr" : "=r" (result) );
return(result);
#elif defined(__IAR_SYSTEMS_ICC__)
- return __iar_builtin_rsr("IPSR");
+ uint32_t result;
+ __asm volatile ("MRS %0, ipsr" : "=r" (result));
+ return result;
#elif defined ( __GNUC__ )
uint32_t result;
__asm volatile ("MRS %0, ipsr" : "=r" (result) );
@@ -519,7 +521,9 @@ rt_inline rt_uint32_t rt_hw_get_primask_value(void)
__asm volatile ("MRS %0, primask" : "=r" (result));
return result;
#elif defined(__IAR_SYSTEMS_ICC__)
- return __iar_builtin_rsr("PRIMASK");
+ uint32_t result;
+ __asm volatile ("MRS %0, primask" : "=r" (result));
+ return result;
#elif defined(__GNUC__)
uint32_t result;
__asm volatile ("MRS %0, primask" : "=r" (result));