@@ -384,7 +384,8 @@ schedule thread@Thread{
384
384
timers = timers'' }
385
385
return (SimPORTrace time tid tstep tlbl (EventThrow e) $
386
386
SimPORTrace time tid tstep tlbl (EventMask maskst') $
387
- SimPORTrace time tid tstep tlbl (EventEffect vClock eff)
387
+ SimPORTrace time tid tstep tlbl (EventEffect vClock eff) $
388
+ SimPORTrace time tid tstep tlbl (EventRaces races')
388
389
trace)
389
390
390
391
(Left isMain, timers'')
@@ -829,7 +830,8 @@ deschedule Yield thread@Thread { threadId = tid,
829
830
control' = advanceControl (threadStepId thread) control
830
831
races' = updateRaces thread simstate in
831
832
832
- SimPORTrace time tid tstep tlbl (EventEffect vClock eff) <$>
833
+ SimPORTrace time tid tstep tlbl (EventEffect vClock eff) .
834
+ SimPORTrace time tid tstep tlbl (EventRaces races') <$>
833
835
reschedule simstate { runqueue = runqueue',
834
836
threads = threads',
835
837
races = races',
@@ -879,7 +881,8 @@ deschedule Interruptable thread@Thread{threadId = tid,
879
881
let (thread', eff) = stepThread thread
880
882
races' = updateRaces thread simstate in
881
883
882
- SimPORTrace time tid tstep tlbl (EventEffect vClock eff) <$>
884
+ SimPORTrace time tid tstep tlbl (EventEffect vClock eff) .
885
+ SimPORTrace time tid tstep tlbl (EventRaces races') <$>
883
886
schedule thread'
884
887
simstate{ races = races',
885
888
control = advanceControl (threadStepId thread) control }
@@ -907,7 +910,8 @@ deschedule (Blocked blockedReason) thread@Thread{ threadId = tid,
907
910
threads' = Map. insert (threadId thread') thread' threads
908
911
races' = updateRaces thread1 simstate in
909
912
910
- SimPORTrace time tid tstep tlbl (EventEffect vClock eff) <$>
913
+ SimPORTrace time tid tstep tlbl (EventEffect vClock eff) .
914
+ SimPORTrace time tid tstep tlbl (EventRaces races') <$>
911
915
reschedule simstate { threads = threads',
912
916
races = races',
913
917
control = advanceControl (threadStepId thread1) control }
@@ -934,10 +938,11 @@ deschedule Terminated thread@Thread { threadId = tid, threadLabel = tlbl, thread
934
938
[ (time, tid', (- 1 ), tlbl', EventThrowToWakeup )
935
939
| tid' <- unblocked
936
940
, let tlbl' = lookupThreadLabel tid' threads ]
937
- $ SimPORTrace time tid (threadStep thread) tlbl (EventEffect vClock eff)
941
+ $ SimPORTrace time tid tstep tlbl (EventEffect vClock eff)
942
+ $ SimPORTrace time tid tstep tlbl (EventRaces races')
938
943
trace
939
944
940
- deschedule Sleep thread@ Thread { threadId = tid , threadEffect = effect }
945
+ deschedule Sleep thread@ Thread { threadId = tid , threadEffect = effect' }
941
946
simstate@ SimState {runqueue, threads} =
942
947
943
948
-- Schedule control says we should run a different thread. Put
0 commit comments