From 70cea8391ce7648154d40d13a81d97322e3ed79a Mon Sep 17 00:00:00 2001 From: gdisirio Date: Tue, 31 Aug 2010 17:12:49 +0000 Subject: =?UTF-8?q?W$=C2=A3"%&%"=C2=A3=C2=A3%&/&&=20GCC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2147 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/ports/GCC/ARM7/chcore.h | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'os') diff --git a/os/ports/GCC/ARM7/chcore.h b/os/ports/GCC/ARM7/chcore.h index 89391b352..a14b08aad 100644 --- a/os/ports/GCC/ARM7/chcore.h +++ b/os/ports/GCC/ARM7/chcore.h @@ -189,11 +189,11 @@ struct context { "stmfd sp!, {r0-r3, r12, lr} \n\t" \ "add r0, pc, #1 \n\t" \ "bx r0 \n\t" \ - ".code 16"); \ + ".code 16" : : : "memory"); \ } #else /* !THUMB */ #define PORT_IRQ_PROLOGUE() { \ - asm volatile ("stmfd sp!, {r0-r3, r12, lr}"); \ + asm volatile ("stmfd sp!, {r0-r3, r12, lr}" : : : "memory"); \ } #endif /* !THUMB */ @@ -207,11 +207,11 @@ struct context { #ifdef THUMB #define PORT_IRQ_EPILOGUE() { \ asm volatile ("ldr r0, =_port_irq_common \n\t" \ - "bx r0"); \ + "bx r0" : : : "memory"); \ } #else /* !THUMB */ #define PORT_IRQ_EPILOGUE() { \ - asm volatile ("b _port_irq_common"); \ + asm volatile ("b _port_irq_common" : : : "memory"); \ } #endif /* !THUMB */ @@ -245,10 +245,10 @@ struct context { */ #ifdef THUMB #define port_lock() { \ - asm volatile ("bl _port_lock_thumb" : : : "r3", "lr"); \ + asm volatile ("bl _port_lock_thumb" : : : "r3", "lr", "memory" \ } #else /* !THUMB */ -#define port_lock() asm volatile ("msr CPSR_c, #0x9F") +#define port_lock() asm volatile ("msr CPSR_c, #0x9F" : : : "memory") #endif /* !THUMB */ /** @@ -259,10 +259,10 @@ struct context { */ #ifdef THUMB #define port_unlock() { \ - asm volatile ("bl _port_unlock_thumb" : : : "r3", "lr"); \ + asm volatile ("bl _port_unlock_thumb" : : : "r3", "lr", "memory"); \ } #else /* !THUMB */ -#define port_unlock() asm volatile ("msr CPSR_c, #0x1F") +#define port_unlock() asm volatile ("msr CPSR_c, #0x1F" : : : "memory") #endif /* !THUMB */ /** @@ -292,7 +292,7 @@ struct context { */ #ifdef THUMB #define port_disable() { \ - asm volatile ("bl _port_disable_thumb" : : : "r3", "lr"); \ + asm volatile ("bl _port_disable_thumb" : : : "r3", "lr", "memory"); \ } #else /* !THUMB */ #define port_disable() { \ @@ -300,7 +300,7 @@ struct context { "orr r3, #0x80 \n\t" \ "msr CPSR_c, r3 \n\t" \ "orr r3, #0x40 \n\t" \ - "msr CPSR_c, r3" : : : "r3"); \ + "msr CPSR_c, r3" : : : "r3", "memory"); \ } #endif /* !THUMB */ @@ -312,10 +312,10 @@ struct context { */ #ifdef THUMB #define port_suspend() { \ - asm volatile ("bl _port_suspend_thumb" : : : "r3", "lr"); \ + asm volatile ("bl _port_suspend_thumb" : : : "r3", "lr", "memory"); \ } #else /* !THUMB */ -#define port_suspend() asm volatile ("msr CPSR_c, #0x9F") +#define port_suspend() asm volatile ("msr CPSR_c, #0x9F" : : : "memory") #endif /* !THUMB */ /** @@ -324,10 +324,10 @@ struct context { */ #ifdef THUMB #define port_enable() { \ - asm volatile ("bl _port_enable_thumb" : : : "r3", "lr"); \ + asm volatile ("bl _port_enable_thumb" : : : "r3", "lr", "memory"); \ } #else /* !THUMB */ -#define port_enable() asm volatile ("msr CPSR_c, #0x1F") +#define port_enable() asm volatile ("msr CPSR_c, #0x1F" : : : "memory") #endif /* !THUMB */ /** -- cgit v1.2.3