" ldr r0, [r0]                  \n"\r
                                        " ldr r0, [r0]                  \n"\r
                                        " msr msp, r0                   \n" /* Set the msp back to the start of the stack. */\r
+                                       " cpsie i                               \n"\r
                                        " svc 0                                 \n" /* System call to start first task. */\r
+                                       " nop                                   \n"\r
                                );\r
 }\r
 /*-----------------------------------------------------------*/\r
 
     FreeRTOS is distributed in the hope that it will be useful, but WITHOUT\r
     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for\r
-    more details. You should have received a copy of the GNU General Public \r
-    License and the FreeRTOS license exception along with FreeRTOS; if not it \r
-    can be viewed here: http://www.freertos.org/a00114.html and also obtained \r
+    more details. You should have received a copy of the GNU General Public\r
+    License and the FreeRTOS license exception along with FreeRTOS; if not it\r
+    can be viewed here: http://www.freertos.org/a00114.html and also obtained\r
     by writing to Richard Barry, contact details for whom are available on the\r
     FreeRTOS WEB site.\r
 \r
     licensing and training services.\r
 */\r
 \r
-/*\r
-       Change from V4.2.1:\r
-\r
-       + Introduced usage of configKERNEL_INTERRUPT_PRIORITY macro to set the\r
-         interrupt priority used by the kernel.\r
-*/\r
-\r
 #include <FreeRTOSConfig.h>\r
 \r
 /* For backward compatibility, ensure configKERNEL_INTERRUPT_PRIORITY is\r
        /* Set the msp back to the start of the stack. */\r
        msr msp, r0\r
        /* Call SVC to start the first task. */\r
+       cpsie i\r
        svc 0\r
 \r
        END\r