scheduler.cc (13403:cebee63981d3) scheduler.cc (13488:2e12afaa6cc7)
1/*
2 * Copyright 2018 Google, Inc.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met: redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer;
8 * redistributions in binary form must reproduce the above copyright

--- 94 unchanged lines hidden (view full) ---

103 Channel *c;
104 while ((c = updateList.getNext()))
105 c->popListNode();
106}
107
108void
109Scheduler::initPhase()
110{
1/*
2 * Copyright 2018 Google, Inc.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met: redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer;
8 * redistributions in binary form must reproduce the above copyright

--- 94 unchanged lines hidden (view full) ---

103 Channel *c;
104 while ((c = updateList.getNext()))
105 c->popListNode();
106}
107
108void
109Scheduler::initPhase()
110{
111 runUpdate();
112
111 for (Process *p = initList.getNext(); p; p = initList.getNext()) {
112 p->popListNode();
113
114 if (p->dontInitialize()) {
115 if (!p->hasStaticSensitivities() && !p->internal()) {
116 SC_REPORT_WARNING(sc_core::SC_ID_DISABLE_WILL_ORPHAN_PROCESS_,
117 p->name());
118 }
119 } else {
120 p->ready();
121 }
122 }
123
113 for (Process *p = initList.getNext(); p; p = initList.getNext()) {
114 p->popListNode();
115
116 if (p->dontInitialize()) {
117 if (!p->hasStaticSensitivities() && !p->internal()) {
118 SC_REPORT_WARNING(sc_core::SC_ID_DISABLE_WILL_ORPHAN_PROCESS_,
119 p->name());
120 }
121 } else {
122 p->ready();
123 }
124 }
125
124 runUpdate();
125 runDelta();
126
127 for (auto ets: eventsToSchedule)
128 eq->schedule(ets.first, ets.second);
129 eventsToSchedule.clear();
130
131 if (_started) {
132 if (!runToTime && starved())

--- 371 unchanged lines hidden ---
126 runDelta();
127
128 for (auto ets: eventsToSchedule)
129 eq->schedule(ets.first, ets.second);
130 eventsToSchedule.clear();
131
132 if (_started) {
133 if (!runToTime && starved())

--- 371 unchanged lines hidden ---