]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/system/SchedulerBasicP.nc
Remove need for volatiles in scheduler by fixing McuSleep.sleep to tell
[tinyos-2.x.git] / tos / system / SchedulerBasicP.nc
index d80968ed473120cf16f53ea35d6268a644a8a01c..9f99fd668e1e9ae1acc57f39374079c1582dad2c 100644 (file)
@@ -53,9 +53,11 @@ implementation
     NO_TASK = 255,
   };
 
-  volatile uint8_t m_head;
-  volatile uint8_t m_tail;
-  volatile uint8_t m_next[NUM_TASKS];
+  uint8_t m_head;
+  uint8_t m_tail;
+  uint8_t m_next[NUM_TASKS];
+
+#define v_head (*(volatile uint8_t *)&m_head)
 
   // Helper functions (internal functions) intentionally do not have atomic
   // sections.  It is left as the duty of the exported interface functions to