]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Demo/CORTEX_A2F200_SoftConsole/MicroSemi_Code/CMSIS/core_cm3.c
Fix bug in core_cm3.c atomic macros.
[freertos] / FreeRTOS / Demo / CORTEX_A2F200_SoftConsole / MicroSemi_Code / CMSIS / core_cm3.c
index 56fddc52bfc0513f5b0aa7c927c3488f357ba071..0e8c3c43c8fa5cd9c46c62d5f30c5be761c68c87 100644 (file)
@@ -733,7 +733,7 @@ uint32_t __STREXB(uint8_t value, uint8_t *addr)
 {\r
    uint32_t result=0;\r
   \r
-   __ASM volatile ("strexb %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );\r
+   __ASM volatile ("strexb %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );\r
    return(result);\r
 }\r
 \r
@@ -750,7 +750,7 @@ uint32_t __STREXH(uint16_t value, uint16_t *addr)
 {\r
    uint32_t result=0;\r
   \r
-   __ASM volatile ("strexh %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );\r
+   __ASM volatile ("strexh %0, %2, [%1]" : "=&r" (result) : "r" (addr), "r" (value) );\r
    return(result);\r
 }\r
 \r