diff --git a/Source/portable/GCC/ARM7_AT91FR40008/portmacro.h b/Source/portable/GCC/ARM7_AT91FR40008/portmacro.h
index 0d523721c..a4ae53465 100644
--- a/Source/portable/GCC/ARM7_AT91FR40008/portmacro.h
+++ b/Source/portable/GCC/ARM7_AT91FR40008/portmacro.h
@@ -113,7 +113,7 @@ extern "C" {
 #define portSTACK_GROWTH			( -1 )
 #define portTICK_RATE_MS			( ( portTickType ) 1000 / configTICK_RATE_HZ )		
 #define portBYTE_ALIGNMENT			8
-#define portYIELD()					asm volatile ( "SWI" )
+#define portYIELD()					asm volatile ( "SWI 0" )
 #define portNOP()					asm volatile ( "NOP" )
 
 /*
diff --git a/Source/portable/GCC/ARM7_AT91SAM7S/portmacro.h b/Source/portable/GCC/ARM7_AT91SAM7S/portmacro.h
index 6a8a3a7b5..4393dc147 100644
--- a/Source/portable/GCC/ARM7_AT91SAM7S/portmacro.h
+++ b/Source/portable/GCC/ARM7_AT91SAM7S/portmacro.h
@@ -211,7 +211,7 @@ extern volatile unsigned portLONG ulCriticalNesting;					\
 
 
 #define portYIELD_FROM_ISR()		vTaskSwitchContext()
-#define portYIELD()					asm volatile ( "SWI" )
+#define portYIELD()					asm volatile ( "SWI 0" )
 /*-----------------------------------------------------------*/
 
 
diff --git a/Source/portable/GCC/ARM7_LPC2000/portmacro.h b/Source/portable/GCC/ARM7_LPC2000/portmacro.h
index 62596db50..9b6889b93 100644
--- a/Source/portable/GCC/ARM7_LPC2000/portmacro.h
+++ b/Source/portable/GCC/ARM7_LPC2000/portmacro.h
@@ -188,7 +188,7 @@ extern volatile unsigned portLONG ulCriticalNesting;					\
 
 extern void vTaskSwitchContext( void );
 #define portYIELD_FROM_ISR()		vTaskSwitchContext()
-#define portYIELD()					__asm volatile ( "SWI" )
+#define portYIELD()					__asm volatile ( "SWI 0" )
 /*-----------------------------------------------------------*/
 
 
diff --git a/Source/portable/GCC/ARM7_LPC23xx/portmacro.h b/Source/portable/GCC/ARM7_LPC23xx/portmacro.h
index 9f049de11..bc591c3ed 100644
--- a/Source/portable/GCC/ARM7_LPC23xx/portmacro.h
+++ b/Source/portable/GCC/ARM7_LPC23xx/portmacro.h
@@ -211,7 +211,7 @@ extern volatile unsigned portLONG ulCriticalNesting;					\
 
 
 #define portYIELD_FROM_ISR()		vTaskSwitchContext()
-#define portYIELD()					__asm volatile ( "SWI" )
+#define portYIELD()					__asm volatile ( "SWI 0" )
 /*-----------------------------------------------------------*/