aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/chschd.c6
-rw-r--r--src/include/scheduler.h7
2 files changed, 7 insertions, 6 deletions
diff --git a/src/chschd.c b/src/chschd.c
index 45b6c266c..7ad33d82f 100644
--- a/src/chschd.c
+++ b/src/chschd.c
@@ -26,11 +26,7 @@
/** @cond never*/
-static ReadyList rlist;
-
-#ifndef CH_CURRP_REGISTER_CACHE
-Thread *currp;
-#endif
+ReadyList rlist;
#ifdef CH_USE_SYSTEMTIME
volatile t_time stime;
diff --git a/src/include/scheduler.h b/src/include/scheduler.h
index c56773ee1..89bc37292 100644
--- a/src/include/scheduler.h
+++ b/src/include/scheduler.h
@@ -41,8 +41,13 @@ typedef struct {
ThreadsQueue r_queue;
t_prio r_prio;
t_cnt r_preempt;
+#ifndef CH_CURRP_REGISTER_CACHE
+ Thread *r_current;
+#endif
} ReadyList;
+extern ReadyList rlist;
+
/*
* Scheduler APIs.
*/
@@ -70,7 +75,7 @@ extern "C" {
#ifdef CH_CURRP_REGISTER_CACHE
register Thread *currp asm(CH_CURRP_REGISTER_CACHE);
#else
-extern Thread *currp;
+#define currp rlist.r_current
#endif
/**