base.hh (12127:4207df055b0d) base.hh (12276:22c220be30c5)
1/*
1/*
2 * Copyright (c) 2011-2013 ARM Limited
2 * Copyright (c) 2011-2013, 2017 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

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

302 void init() override;
303 void startup() override;
304 void regStats() override;
305
306 void regProbePoints() override;
307
308 void registerThreadContexts();
309
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

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

302 void init() override;
303 void startup() override;
304 void regStats() override;
305
306 void regProbePoints() override;
307
308 void registerThreadContexts();
309
310 // Functions to deschedule and reschedule the events to enter the
311 // power gating sleep before and after checkpoiting respectively.
312 void deschedulePowerGatingEvent();
313 void schedulePowerGatingEvent();
314
310 /**
311 * Prepare for another CPU to take over execution.
312 *
313 * When this method exits, all internal state should have been
314 * flushed. After the method returns, the simulator calls
315 * takeOverFrom() on the new CPU with this CPU as its parameter.
316 */
317 virtual void switchOut();

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

578 {
579 assert(tid < numThreads);
580 return &addressMonitor[tid];
581 }
582
583 bool waitForRemoteGDB() const;
584
585 Cycles syscallRetryLatency;
315 /**
316 * Prepare for another CPU to take over execution.
317 *
318 * When this method exits, all internal state should have been
319 * flushed. After the method returns, the simulator calls
320 * takeOverFrom() on the new CPU with this CPU as its parameter.
321 */
322 virtual void switchOut();

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

583 {
584 assert(tid < numThreads);
585 return &addressMonitor[tid];
586 }
587
588 bool waitForRemoteGDB() const;
589
590 Cycles syscallRetryLatency;
591 // Enables CPU to enter power gating on a configurable cycle count
592 protected:
593 const Cycles pwrGatingLatency;
594 void enterPwrGating();
595 EventFunctionWrapper enterPwrGatingEvent;
586};
587
588#endif // THE_ISA == NULL_ISA
589
590#endif // __CPU_BASE_HH__
596};
597
598#endif // THE_ISA == NULL_ISA
599
600#endif // __CPU_BASE_HH__