Mercurial > hg > Gears > GearsAgda
view src/parallel_execution/TimerImpl.cbc @ 477:c3202635c20a
fix Stack.agda
author | ryokka |
---|---|
date | Thu, 28 Dec 2017 15:52:01 +0900 |
parents | ac244346c85d |
children | b8b412a7670a |
line wrap: on
line source
#include <stdio.h> #include <sys/time.h> #include "../context.h" #interface "Timer.h" Timer* createTimerImpl(struct Context* context) { struct Timer* timer = new Timer(); struct TimerImpl* timerImpl = new TimerImpl(); timer->timer = (union Data*)timerImpl; timer->start = C_startTimer; timer->end = C_endTimer; return timer; } __code startTimer(struct TimerImpl* timer, __code next(...)) { struct timeval tv; gettimeofday(&tv, NULL); timer->time = tv.tv_sec + (double)tv.tv_usec*1e-6; goto next(...); } __code endTimer(struct TimerImpl* timer, __code next(...)) { struct timeval tv; gettimeofday(&tv, NULL); printf("%0.6f\n", (tv.tv_sec+(double)tv.tv_usec*1e-6) - timer->time); goto next(...); }