base.hh (9446:644f2a2c9bfc) base.hh (9448:569d1e8f74e4)
1/*
2 * Copyright (c) 2011-2012 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

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

360 *a particular thread.
361 */
362 EventQueue **comLoadEventQueue;
363
364 System *system;
365
366 /**
367 * Serialize this object to the given output stream.
1/*
2 * Copyright (c) 2011-2012 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

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

360 *a particular thread.
361 */
362 EventQueue **comLoadEventQueue;
363
364 System *system;
365
366 /**
367 * Serialize this object to the given output stream.
368 *
369 * @note CPU models should normally overload the serializeThread()
370 * method instead of the serialize() method as this provides a
371 * uniform data format for all CPU models and promotes better code
372 * reuse.
373 *
368 * @param os The stream to serialize to.
369 */
370 virtual void serialize(std::ostream &os);
371
372 /**
373 * Reconstruct the state of this object from a checkpoint.
374 * @param os The stream to serialize to.
375 */
376 virtual void serialize(std::ostream &os);
377
378 /**
379 * Reconstruct the state of this object from a checkpoint.
380 *
381 * @note CPU models should normally overload the
382 * unserializeThread() method instead of the unserialize() method
383 * as this provides a uniform data format for all CPU models and
384 * promotes better code reuse.
385
374 * @param cp The checkpoint use.
386 * @param cp The checkpoint use.
375 * @param section The section name of this object
387 * @param section The section name of this object.
376 */
377 virtual void unserialize(Checkpoint *cp, const std::string &section);
378
379 /**
388 */
389 virtual void unserialize(Checkpoint *cp, const std::string &section);
390
391 /**
392 * Serialize a single thread.
393 *
394 * @param os The stream to serialize to.
395 * @param tid ID of the current thread.
396 */
397 virtual void serializeThread(std::ostream &os, ThreadID tid) {};
398
399 /**
400 * Unserialize one thread.
401 *
402 * @param cp The checkpoint use.
403 * @param section The section name of this thread.
404 * @param tid ID of the current thread.
405 */
406 virtual void unserializeThread(Checkpoint *cp, const std::string &section,
407 ThreadID tid) {};
408
409 /**
380 * Return pointer to CPU's branch predictor (NULL if none).
381 * @return Branch predictor pointer.
382 */
383 virtual BranchPred *getBranchPred() { return NULL; };
384
385 virtual Counter totalInsts() const = 0;
386
387 virtual Counter totalOps() const = 0;

--- 52 unchanged lines hidden ---
410 * Return pointer to CPU's branch predictor (NULL if none).
411 * @return Branch predictor pointer.
412 */
413 virtual BranchPred *getBranchPred() { return NULL; };
414
415 virtual Counter totalInsts() const = 0;
416
417 virtual Counter totalOps() const = 0;

--- 52 unchanged lines hidden ---