process.cc (13261:c8e97d29976d) process.cc (13288:f1c04129f709)
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

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

26 *
27 * Authors: Gabe Black
28 */
29
30#include "systemc/core/process.hh"
31
32#include "base/logging.hh"
33#include "systemc/core/event.hh"
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

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

26 *
27 * Authors: Gabe Black
28 */
29
30#include "systemc/core/process.hh"
31
32#include "base/logging.hh"
33#include "systemc/core/event.hh"
34#include "systemc/core/port.hh"
34#include "systemc/core/scheduler.hh"
35#include "systemc/ext/core/sc_join.hh"
36#include "systemc/ext/core/sc_main.hh"
37#include "systemc/ext/core/sc_process_handle.hh"
38#include "systemc/ext/utils/sc_report_handler.hh"
39
40namespace sc_gem5
41{

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

288 if (dynamicSensitivity) {
289 dynamicSensitivity->clear();
290 delete dynamicSensitivity;
291 }
292 dynamicSensitivity = s;
293}
294
295void
35#include "systemc/core/scheduler.hh"
36#include "systemc/ext/core/sc_join.hh"
37#include "systemc/ext/core/sc_main.hh"
38#include "systemc/ext/core/sc_process_handle.hh"
39#include "systemc/ext/utils/sc_report_handler.hh"
40
41namespace sc_gem5
42{

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

289 if (dynamicSensitivity) {
290 dynamicSensitivity->clear();
291 delete dynamicSensitivity;
292 }
293 dynamicSensitivity = s;
294}
295
296void
296Process::addReset(ResetSensitivity *s)
297Process::addReset(Reset *reset)
297{
298{
298 resetSensitivities.push_back(s);
299 resets.push_back(reset);
299}
300
301void
302Process::cancelTimeout()
303{
304 if (timeoutEvent.scheduled())
305 scheduler.deschedule(&timeoutEvent);
306}

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

413Process *Process::_newest;
414
415void
416throw_it_wrapper(Process *p, ExceptionWrapperBase &exc, bool inc_kids)
417{
418 p->throw_it(exc, inc_kids);
419}
420
300}
301
302void
303Process::cancelTimeout()
304{
305 if (timeoutEvent.scheduled())
306 scheduler.deschedule(&timeoutEvent);
307}

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

414Process *Process::_newest;
415
416void
417throw_it_wrapper(Process *p, ExceptionWrapperBase &exc, bool inc_kids)
418{
419 p->throw_it(exc, inc_kids);
420}
421
422void
423newReset(const sc_core::sc_port_base *pb, Process *p, bool s, bool v)
424{
425 Port *port = Port::fromPort(pb);
426 port->addReset(new Reset(p, s, v));
427}
428
429void
430newReset(const sc_core::sc_signal_in_if<bool> *sig, Process *p, bool s, bool v)
431{
432 Reset *reset = new Reset(p, s, v);
433 if (!reset->install(sig))
434 delete reset;
435}
436
421} // namespace sc_gem5
437} // namespace sc_gem5