process.hh (13131:bf07048d69e4) | process.hh (13132:1fb4a87f550f) |
---|---|
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 --- 23 unchanged lines hidden (view full) --- 32 33#include <functional> 34#include <memory> 35#include <vector> 36 37#include "base/fiber.hh" 38#include "sim/eventq.hh" 39#include "systemc/core/bindinfo.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 --- 23 unchanged lines hidden (view full) --- 32 33#include <functional> 34#include <memory> 35#include <vector> 36 37#include "base/fiber.hh" 38#include "sim/eventq.hh" 39#include "systemc/core/bindinfo.hh" |
40#include "systemc/core/event.hh" |
|
40#include "systemc/core/list.hh" 41#include "systemc/core/object.hh" 42#include "systemc/core/sched_event.hh" 43#include "systemc/ext/core/sc_event.hh" 44#include "systemc/ext/core/sc_export.hh" 45#include "systemc/ext/core/sc_interface.hh" 46#include "systemc/ext/core/sc_module.hh" 47#include "systemc/ext/core/sc_port.hh" --- 206 unchanged lines hidden (view full) --- 254 public: 255 PendingSensitivityFinder(Process *p, const sc_core::sc_event_finder *f) : 256 PendingSensitivity(p), finder(f) 257 {} 258 259 void 260 finalize(Sensitivities &s) override 261 { | 41#include "systemc/core/list.hh" 42#include "systemc/core/object.hh" 43#include "systemc/core/sched_event.hh" 44#include "systemc/ext/core/sc_event.hh" 45#include "systemc/ext/core/sc_export.hh" 46#include "systemc/ext/core/sc_interface.hh" 47#include "systemc/ext/core/sc_module.hh" 48#include "systemc/ext/core/sc_port.hh" --- 206 unchanged lines hidden (view full) --- 255 public: 256 PendingSensitivityFinder(Process *p, const sc_core::sc_event_finder *f) : 257 PendingSensitivity(p), finder(f) 258 {} 259 260 void 261 finalize(Sensitivities &s) override 262 { |
262 s.push_back(new SensitivityEvent(process, &finder->find_event())); | 263 const ::sc_core::sc_port_base *port = finder->port(); 264 int size = port->size(); 265 for (int i = 0; i < size; i++) { 266 ::sc_core::sc_interface *interface = port->_gem5Interface(i); 267 const ::sc_core::sc_event *event = &finder->find_event(interface); 268 s.push_back(new SensitivityEvent(process, event)); 269 } |
263 } 264}; 265 266typedef std::vector<PendingSensitivity *> PendingSensitivities; 267 268 269class Process : public ::sc_core::sc_process_b, public ListNode 270{ --- 123 unchanged lines hidden --- | 270 } 271}; 272 273typedef std::vector<PendingSensitivity *> PendingSensitivities; 274 275 276class Process : public ::sc_core::sc_process_b, public ListNode 277{ --- 123 unchanged lines hidden --- |