sim_events.hh (7821:f1d298b7416c) | sim_events.hh (9952:7437cc334df1) |
---|---|
1/* | 1/* |
2 * Copyright (c) 2013 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated 11 * unmodified and in its entirety in all distributions of the software, 12 * modified or unmodified, in source code or in binary form. 13 * |
|
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; 9 * redistributions in binary form must reproduce the above copyright --- 17 unchanged lines hidden (view full) --- 27 * 28 * Authors: Nathan Binkert 29 */ 30 31#ifndef __SIM_SIM_EVENTS_HH__ 32#define __SIM_SIM_EVENTS_HH__ 33 34#include "sim/eventq.hh" | 14 * Copyright (c) 2002-2005 The Regents of The University of Michigan 15 * All rights reserved. 16 * 17 * Redistribution and use in source and binary forms, with or without 18 * modification, are permitted provided that the following conditions are 19 * met: redistributions of source code must retain the above copyright 20 * notice, this list of conditions and the following disclaimer; 21 * redistributions in binary form must reproduce the above copyright --- 17 unchanged lines hidden (view full) --- 39 * 40 * Authors: Nathan Binkert 41 */ 42 43#ifndef __SIM_SIM_EVENTS_HH__ 44#define __SIM_SIM_EVENTS_HH__ 45 46#include "sim/eventq.hh" |
47#include "sim/serialize.hh" |
|
35 36// 37// Event to terminate simulation at a particular cycle/instruction 38// 39class SimLoopExitEvent : public Event 40{ 41 protected: 42 // string explaining why we're terminating 43 std::string cause; 44 int code; 45 Tick repeat; 46 47 public: | 48 49// 50// Event to terminate simulation at a particular cycle/instruction 51// 52class SimLoopExitEvent : public Event 53{ 54 protected: 55 // string explaining why we're terminating 56 std::string cause; 57 int code; 58 Tick repeat; 59 60 public: |
48 SimLoopExitEvent(const std::string &_cause, int c, Tick repeat = 0); | 61 // non-scheduling version for createForUnserialize() 62 SimLoopExitEvent(); 63 SimLoopExitEvent(const std::string &_cause, int c, Tick repeat = 0, 64 bool serialize = false); |
49 50 std::string getCause() { return cause; } 51 int getCode() { return code; } 52 53 void process(); // process event 54 55 virtual const char *description() const; | 65 66 std::string getCause() { return cause; } 67 int getCode() { return code; } 68 69 void process(); // process event 70 71 virtual const char *description() const; |
72 73 virtual void serialize(std::ostream &os); 74 virtual void unserialize(Checkpoint *cp, const std::string §ion); 75 static Serializable *createForUnserialize(Checkpoint *cp, 76 const std::string §ion); |
|
56}; 57 58class CountedDrainEvent : public Event 59{ 60 private: 61 // Count of how many objects have not yet drained 62 int count; 63 --- 31 unchanged lines hidden --- | 77}; 78 79class CountedDrainEvent : public Event 80{ 81 private: 82 // Count of how many objects have not yet drained 83 int count; 84 --- 31 unchanged lines hidden --- |