|
gem5
v19.0.0.0
|
#include <process.hh>
Public Member Functions | |
| virtual ::sc_core::sc_curr_proc_kind | procKind () const =0 |
| bool | needsStart () const |
| void | needsStart (bool ns) |
| bool | dynamic () const |
| bool | isUnwinding () const |
| void | isUnwinding (bool v) |
| bool | terminated () const |
| bool | scheduled () const |
| void | scheduled (bool new_val) |
| void | forEachKid (const std::function< void(Process *)> &work) |
| bool | suspended () const |
| bool | disabled () const |
| void | suspend (bool inc_kids) |
| void | resume (bool inc_kids) |
| void | disable (bool inc_kids) |
| void | enable (bool inc_kids) |
| void | kill (bool inc_kids) |
| void | reset (bool inc_kids) |
| void | throw_it (ExceptionWrapperBase &exc, bool inc_kids) |
| void | injectException (ExceptionWrapperBase &exc) |
| void | syncResetOn (bool inc_kids) |
| void | syncResetOff (bool inc_kids) |
| void | signalReset (bool set, bool sync) |
| void | incref () |
| void | decref () |
| ::sc_core::sc_event & | resetEvent () |
| ::sc_core::sc_event & | terminatedEvent () |
| void | setStackSize (size_t size) |
| void | run () |
| void | addStatic (StaticSensitivity *) |
| void | setDynamic (DynamicSensitivity *) |
| void | clearDynamic () |
| void | addReset (Reset *) |
| void | setTimeout (::sc_core::sc_time t) |
| void | cancelTimeout () |
| void | satisfySensitivity (Sensitivity *) |
| void | ready () |
| virtual Fiber * | fiber () |
| void | lastReport (::sc_core::sc_report *report) |
| ::sc_core::sc_report * | lastReport () const |
| bool | hasStaticSensitivities () |
| bool | internal () |
| bool | timedOut () |
| bool | inReset () |
| bool | dontInitialize () |
| void | dontInitialize (bool di) |
| void | joinWait (::sc_core::sc_join *join) |
| void | waitCount (int count) |
| const char * | uniqueName (const char *seed) |
Public Member Functions inherited from sc_core::sc_process_b | |
| sc_process_b (const char *name) | |
| sc_process_b () | |
Public Member Functions inherited from sc_core::sc_object | |
| const char * | name () const |
| const char * | basename () const |
| virtual const char * | kind () const |
| virtual void | print (std::ostream &=std::cout) const |
| virtual void | dump (std::ostream &=std::cout) const |
| virtual const std::vector< sc_object * > & | get_child_objects () const |
| virtual const std::vector< sc_event * > & | get_child_events () const |
| sc_object * | get_parent_object () const |
| bool | add_attribute (sc_attr_base &) |
| sc_attr_base * | get_attribute (const std::string &) |
| sc_attr_base * | remove_attribute (const std::string &) |
| void | remove_all_attributes () |
| int | num_attributes () const |
| sc_attr_cltn & | attr_cltn () |
| const sc_attr_cltn & | attr_cltn () const |
| sc_simcontext * | simcontext () const |
Public Member Functions inherited from sc_gem5::ListNode | |
| ListNode () | |
| virtual | ~ListNode () |
| void | popListNode () |
Static Public Member Functions | |
| static Process * | newest () |
Public Attributes | |
| ExceptionWrapperBase * | excWrapper |
| ScEvent | timeoutEvent |
Public Attributes inherited from sc_core::sc_process_b | |
| const char * | file |
| int | lineno |
Public Attributes inherited from sc_gem5::ListNode | |
| ListNode * | nextListNode |
| ListNode * | prevListNode |
Protected Member Functions | |
| void | timeout () |
| Process (const char *name, ProcessFuncWrapper *func, bool internal=false) | |
| virtual | ~Process () |
| void | terminate () |
Protected Member Functions inherited from sc_core::sc_object | |
| sc_object () | |
| sc_object (const char *) | |
| sc_object (const sc_object &) | |
| sc_object & | operator= (const sc_object &) |
| virtual | ~sc_object () |
Protected Attributes | |
| InternalScEvent | _resetEvent |
| InternalScEvent | _terminatedEvent |
| ProcessFuncWrapper * | func |
| bool | _internal |
| bool | _timedOut |
| bool | _dontInitialize |
| bool | _needsStart |
| bool | _dynamic |
| bool | _isUnwinding |
| bool | _terminated |
| bool | _scheduled |
| bool | _suspended |
| bool | _suspendedReady |
| bool | _disabled |
| bool | _syncReset |
| int | syncResetCount |
| int | asyncResetCount |
| int | _waitCount |
| int | refCount |
| size_t | stackSize |
| StaticSensitivities | staticSensitivities |
| DynamicSensitivity * | dynamicSensitivity |
| std::vector< Reset * > | resets |
| std::unique_ptr<::sc_core::sc_report > | _lastReport |
| std::vector<::sc_core::sc_join * > | joinWaiters |
| UniqueNameGen | nameGen |
Static Protected Attributes | |
| static Process * | _newest |
Definition at line 64 of file process.hh.
|
protected |
Definition at line 380 of file process.cc.
References _disabled, _dontInitialize, _dynamic, _internal, _isUnwinding, _needsStart, _newest, _scheduled, _suspended, _syncReset, _terminated, _timedOut, _waitCount, asyncResetCount, Fiber::DefaultStackSize, dynamicSensitivity, func, refCount, sc_core::SC_BEFORE_END_OF_ELABORATION, sc_core::sc_get_status(), stackSize, syncResetCount, and timeout().
|
inlineprotectedvirtual |
Definition at line 151 of file process.hh.
References ArmISA::s.
| void Process::addReset | ( | Reset * | reset | ) |
Definition at line 300 of file process.cc.
| void Process::addStatic | ( | StaticSensitivity * | s | ) |
Definition at line 284 of file process.cc.
Referenced by sc_gem5::newStaticSensitivityEvent(), sc_gem5::newStaticSensitivityExport(), sc_gem5::newStaticSensitivityFinder(), sc_gem5::newStaticSensitivityInterface(), and sc_gem5::newStaticSensitivityPort().
| void Process::cancelTimeout | ( | ) |
Definition at line 306 of file process.cc.
References sc_gem5::Scheduler::deschedule(), and sc_gem5::scheduler.
Referenced by sc_core::next_trigger(), terminate(), and sc_core::wait().
|
inline |
Definition at line 112 of file process.hh.
Referenced by sc_core::next_trigger(), terminate(), and sc_core::wait().
|
inline |
Definition at line 101 of file process.hh.
Referenced by sc_core::sc_process_handle::operator=(), and sc_core::sc_process_handle::~sc_process_handle().
| void Process::disable | ( | bool | inc_kids | ) |
Definition at line 114 of file process.cc.
References disable(), name(), MipsISA::p, sc_core::sc_allow_process_control_corners, sc_core::SC_ID_PROCESS_CONTROL_CORNER_CASE_, and SC_REPORT_ERROR.
Referenced by disable(), and sc_core::sc_process_handle::disable().
|
inline |
Definition at line 81 of file process.hh.
References Trace::disable(), X86ISA::enable, and Stats::reset().
Referenced by sc_gem5::Sensitivity::notify().
|
inline |
Definition at line 135 of file process.hh.
Referenced by sc_gem5::ClockTick::createProcess(), sc_core::sc_module::dont_initialize(), sc_gem5::newCThreadProcess(), sc_gem5::Scheduler::reg(), and sc_gem5::spawnWork().
|
inline |
Definition at line 136 of file process.hh.
|
inline |
Definition at line 70 of file process.hh.
Referenced by sc_core::sc_process_handle::dynamic().
| void Process::enable | ( | bool | inc_kids | ) |
Definition at line 132 of file process.cc.
References enable(), and MipsISA::p.
Referenced by enable(), and sc_core::sc_process_handle::enable().
|
inlinevirtual |
Reimplemented in sc_gem5::Thread.
Definition at line 123 of file process.hh.
References Fiber::primaryFiber().
Referenced by sc_gem5::Scheduler::yield().
| void Process::forEachKid | ( | const std::function< void(Process *)> & | work | ) |
Definition at line 69 of file process.cc.
|
inline |
Definition at line 130 of file process.hh.
|
inline |
Definition at line 100 of file process.hh.
Referenced by sc_core::sc_process_handle::operator=(), and sc_core::sc_process_handle::sc_process_handle().
| void Process::injectException | ( | ExceptionWrapperBase & | exc | ) |
Definition at line 218 of file process.cc.
References sc_gem5::Scheduler::runNow(), and sc_gem5::scheduler.
|
inline |
Definition at line 133 of file process.hh.
Referenced by sc_gem5::Scheduler::yield().
|
inline |
Definition at line 131 of file process.hh.
|
inline |
Definition at line 71 of file process.hh.
Referenced by sc_core::sc_report_handler::default_handler(), and sc_core::sc_process_handle::is_unwinding().
|
inline |
Definition at line 72 of file process.hh.
References ArmISA::v.
|
inline |
Definition at line 138 of file process.hh.
| void Process::kill | ( | bool | inc_kids | ) |
Definition at line 143 of file process.cc.
References kill(), name(), MipsISA::p, sc_core::sc_get_status(), sc_core::SC_ID_KILL_PROCESS_WHILE_UNITIALIZED_, SC_REPORT_ERROR, and sc_core::SC_RUNNING.
Referenced by kill(), and sc_core::sc_process_handle::kill().
| void Process::lastReport | ( | ::sc_core::sc_report * | report | ) |
Definition at line 368 of file process.cc.
Referenced by sc_core::sc_report_handler::clear_cached_report(), sc_core::sc_report_handler::get_cached_report(), and sc_core::sc_report_handler::report().
| sc_core::sc_report * Process::lastReport | ( | ) | const |
Definition at line 378 of file process.cc.
|
inline |
Definition at line 68 of file process.hh.
Referenced by sc_gem5::Scheduler::yield().
|
inline |
Definition at line 69 of file process.hh.
References ArmISA::ns.
|
inlinestatic |
Definition at line 125 of file process.hh.
Referenced by sc_core::sc_module::async_reset_signal_is(), sc_core::sc_module::dont_initialize(), sc_core::sc_module::reset_signal_is(), sc_core::sc_get_current_process_handle(), and sc_core::sc_module::set_stack_size().
|
pure virtual |
| void Process::ready | ( | ) |
Definition at line 357 of file process.cc.
References sc_gem5::Scheduler::ready(), and sc_gem5::scheduler.
Referenced by sc_gem5::Scheduler::reg(), and sc_gem5::ClockTick::tick().
| void Process::reset | ( | bool | inc_kids | ) |
Definition at line 171 of file process.cc.
References name(), MipsISA::p, reset(), sc_gem5::Scheduler::runNow(), sc_core::sc_get_status(), sc_core::SC_ID_RESET_PROCESS_WHILE_NOT_RUNNING_, SC_REPORT_ERROR, sc_core::SC_RUNNING, and sc_gem5::scheduler.
Referenced by sc_gem5::newReset(), reset(), sc_core::sc_process_handle::reset(), and sc_gem5::Scheduler::yield().
|
inline |
Definition at line 103 of file process.hh.
Referenced by sc_core::sc_process_handle::reset_event(), and sc_gem5::Scheduler::yield().
| void Process::resume | ( | bool | inc_kids | ) |
Definition at line 100 of file process.cc.
References MipsISA::p, resume(), sc_gem5::Scheduler::resume(), and sc_gem5::scheduler.
Referenced by resume(), and sc_core::sc_process_handle::resume().
| void Process::run | ( | ) |
Definition at line 264 of file process.cc.
References name(), and Stats::reset().
Referenced by sc_gem5::Thread::Context::main(), and sc_gem5::Scheduler::yield().
| void Process::satisfySensitivity | ( | Sensitivity * | s | ) |
Definition at line 334 of file process.cc.
Referenced by sc_gem5::Sensitivity::satisfy().
|
inline |
Definition at line 75 of file process.hh.
Referenced by sc_gem5::Scheduler::ready(), and sc_gem5::Scheduler::yield().
|
inline |
Definition at line 76 of file process.hh.
| void Process::setDynamic | ( | DynamicSensitivity * | s | ) |
Definition at line 290 of file process.cc.
References ArmISA::s.
Referenced by sc_gem5::newDynamicSensitivityEvent(), sc_gem5::newDynamicSensitivityEventAndList(), and sc_gem5::newDynamicSensitivityEventOrList().
|
inline |
Definition at line 106 of file process.hh.
Referenced by sc_core::sc_module::set_stack_size().
| void Process::setTimeout | ( | ::sc_core::sc_time | t | ) |
Definition at line 313 of file process.cc.
References sc_gem5::Scheduler::schedule(), and sc_gem5::scheduler.
Referenced by sc_core::next_trigger(), and sc_core::wait().
| void Process::signalReset | ( | bool | set, |
| bool | sync | ||
| ) |
Definition at line 243 of file process.cc.
References sc_gem5::Scheduler::runNext(), and sc_gem5::scheduler.
| void Process::suspend | ( | bool | inc_kids | ) |
Definition at line 79 of file process.cc.
References sc_gem5::Scheduler::current(), MipsISA::p, sc_core::SC_METHOD_PROC_, sc_gem5::scheduler, suspend(), sc_gem5::Scheduler::suspend(), and sc_gem5::Scheduler::yield().
Referenced by suspend(), and sc_core::sc_process_handle::suspend().
|
inline |
Definition at line 80 of file process.hh.
| void Process::syncResetOff | ( | bool | inc_kids | ) |
Definition at line 234 of file process.cc.
References MipsISA::p, and syncResetOff().
Referenced by sc_core::sc_process_handle::sync_reset_off(), and syncResetOff().
| void Process::syncResetOn | ( | bool | inc_kids | ) |
Definition at line 225 of file process.cc.
References MipsISA::p, and syncResetOn().
Referenced by sc_core::sc_process_handle::sync_reset_on(), and syncResetOn().
|
protected |
Definition at line 397 of file process.cc.
References _newest, _suspended, _suspendedReady, _syncReset, _terminated, _terminatedEvent, cancelTimeout(), clearDynamic(), joinWaiters, sc_core::sc_event::notify(), ArmISA::s, and staticSensitivities.
Referenced by sc_gem5::Thread::Context::main().
|
inline |
Definition at line 73 of file process.hh.
Referenced by sc_core::sc_process_handle::terminated().
|
inline |
Definition at line 104 of file process.hh.
Referenced by sc_core::sc_process_handle::terminated_event().
| void Process::throw_it | ( | ExceptionWrapperBase & | exc, |
| bool | inc_kids | ||
| ) |
Definition at line 200 of file process.cc.
References name(), MipsISA::p, sc_core::sc_get_status(), sc_core::SC_ID_THROW_IT_IGNORED_, sc_core::SC_ID_THROW_IT_WHILE_NOT_RUNNING_, sc_core::SC_METHOD_PROC_, SC_REPORT_ERROR, SC_REPORT_WARNING, sc_core::SC_RUNNING, and throw_it().
Referenced by throw_it(), and sc_gem5::throw_it_wrapper().
|
inline |
Definition at line 132 of file process.hh.
Referenced by sc_core::timed_out().
|
protected |
Definition at line 320 of file process.cc.
Referenced by Process().
|
inline |
Definition at line 142 of file process.hh.
References name().
Referenced by sc_core::sc_gen_unique_name().
|
inline |
|
protected |
Definition at line 184 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 172 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 175 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 167 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 176 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 201 of file process.hh.
|
protected |
Definition at line 174 of file process.hh.
Referenced by sc_gem5::Thread::Context::main(), and Process().
|
staticprotected |
Definition at line 149 of file process.hh.
Referenced by Process(), and terminate().
|
protected |
Definition at line 162 of file process.hh.
|
protected |
Definition at line 178 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 182 of file process.hh.
Referenced by Process(), and terminate().
|
protected |
Definition at line 183 of file process.hh.
Referenced by terminate().
|
protected |
Definition at line 186 of file process.hh.
Referenced by Process(), and terminate().
|
protected |
Definition at line 177 of file process.hh.
Referenced by Process(), and terminate().
|
protected |
Definition at line 163 of file process.hh.
Referenced by terminate().
|
protected |
Definition at line 170 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 191 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 189 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 198 of file process.hh.
Referenced by Process().
| ExceptionWrapperBase* sc_gem5::Process::excWrapper |
Definition at line 93 of file process.hh.
Referenced by sc_gem5::Scheduler::yield().
|
protected |
Definition at line 165 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 203 of file process.hh.
Referenced by terminate().
|
protected |
Definition at line 205 of file process.hh.
|
protected |
Definition at line 193 of file process.hh.
Referenced by Process().
|
protected |
Definition at line 199 of file process.hh.
|
protected |
Definition at line 195 of file process.hh.
Referenced by sc_gem5::Thread::fiber(), and Process().
|
protected |
Definition at line 197 of file process.hh.
Referenced by terminate().
|
protected |
Definition at line 188 of file process.hh.
Referenced by Process().
| ScEvent sc_gem5::Process::timeoutEvent |
Definition at line 115 of file process.hh.