diff --git a/cores/esp8266/core_esp8266_main.cpp b/cores/esp8266/core_esp8266_main.cpp
index 4818852fcc..850d9b95a8 100644
--- a/cores/esp8266/core_esp8266_main.cpp
+++ b/cores/esp8266/core_esp8266_main.cpp
@@ -108,8 +108,7 @@ extern "C" void __esp_yield() {
 
 extern "C" void esp_yield() __attribute__ ((weak, alias("__esp_yield")));
 
-extern "C" void esp_schedule() {
-    // always on CONT stack here
+extern "C" IRAM_ATTR void esp_schedule() {
     ets_post(LOOP_TASK_PRIORITY, 0, 0);
 }