pmu.hh (10609:ae5582819481) | pmu.hh (10905:a6ca6831e775) |
---|---|
1/* 2 * Copyright (c) 2011-2014 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 --- 82 unchanged lines hidden (view full) --- 91class PMU : public SimObject, public ArmISA::BaseISADevice { 92 public: 93 PMU(const ArmPMUParams *p); 94 ~PMU(); 95 96 void addEventProbe(unsigned int id, SimObject *obj, const char *name); 97 98 public: // SimObject and related interfaces | 1/* 2 * Copyright (c) 2011-2014 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 --- 82 unchanged lines hidden (view full) --- 91class PMU : public SimObject, public ArmISA::BaseISADevice { 92 public: 93 PMU(const ArmPMUParams *p); 94 ~PMU(); 95 96 void addEventProbe(unsigned int id, SimObject *obj, const char *name); 97 98 public: // SimObject and related interfaces |
99 void serialize(std::ostream &os) M5_ATTR_OVERRIDE; 100 void unserialize(Checkpoint *cp, const std::string &sec) M5_ATTR_OVERRIDE; | 99 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE; 100 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE; |
101 102 void drainResume() M5_ATTR_OVERRIDE; 103 104 105 public: // ISA Device interface 106 /** 107 * Set a register within the PMU. 108 * --- 207 unchanged lines hidden (view full) --- 316 const std::string name; 317 318 private: 319 // Disable the default constructor 320 EventType(); 321 }; 322 323 /** State of a counter within the PMU. */ | 101 102 void drainResume() M5_ATTR_OVERRIDE; 103 104 105 public: // ISA Device interface 106 /** 107 * Set a register within the PMU. 108 * --- 207 unchanged lines hidden (view full) --- 316 const std::string name; 317 318 private: 319 // Disable the default constructor 320 EventType(); 321 }; 322 323 /** State of a counter within the PMU. */ |
324 struct CounterState { | 324 struct CounterState : public Serializable { |
325 CounterState() 326 : eventId(0), filter(0), value(0), enabled(false), 327 overflow64(false) { 328 329 listeners.reserve(4); 330 } 331 | 325 CounterState() 326 : eventId(0), filter(0), value(0), enabled(false), 327 overflow64(false) { 328 329 listeners.reserve(4); 330 } 331 |
332 void serialize(std::ostream &os); 333 void unserialize(Checkpoint *cp, const std::string §ion); | 332 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE; 333 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE; |
334 335 /** 336 * Add an event count to the counter and check for overflow. 337 * 338 * @param delta Number of events to add to the counter. 339 * @return true on overflow, false otherwise. 340 */ 341 bool add(uint64_t delta); --- 165 unchanged lines hidden --- | 334 335 /** 336 * Add an event count to the counter and check for overflow. 337 * 338 * @param delta Number of events to add to the counter. 339 * @return true on overflow, false otherwise. 340 */ 341 bool add(uint64_t delta); --- 165 unchanged lines hidden --- |