serialize.hh (11076:463a4b0f0dda) serialize.hh (11077:fae097742b7e)
1/*
2 * Copyright (c) 2015 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

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

66class CheckpointIn;
67class SimObject;
68class SimObjectResolver;
69class EventQueue;
70
71typedef std::ostream CheckpointOut;
72
73
1/*
2 * Copyright (c) 2015 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

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

66class CheckpointIn;
67class SimObject;
68class SimObjectResolver;
69class EventQueue;
70
71typedef std::ostream CheckpointOut;
72
73
74/** The current version of the checkpoint format.
75 * This should be incremented by 1 and only 1 for every new version, where a new
76 * version is defined as a checkpoint created before this version won't work on
77 * the current version until the checkpoint format is updated. Adding a new
78 * SimObject shouldn't cause the version number to increase, only changes to
79 * existing objects such as serializing/unserializing more state, changing sizes
80 * of serialized arrays, etc. */
81static const uint64_t gem5CheckpointVersion = 0x000000000000000f;
82
83template <class T>
84void paramOut(CheckpointOut &cp, const std::string &name, const T &param);
85
86template <typename DataType, typename BitUnion>
87void paramOut(CheckpointOut &cp, const std::string &name,
88 const BitfieldBackend::BitUnionOperators<DataType, BitUnion> &p)
89{
90 paramOut(cp, name, p.__data);

--- 336 unchanged lines hidden ---
74template <class T>
75void paramOut(CheckpointOut &cp, const std::string &name, const T &param);
76
77template <typename DataType, typename BitUnion>
78void paramOut(CheckpointOut &cp, const std::string &name,
79 const BitfieldBackend::BitUnionOperators<DataType, BitUnion> &p)
80{
81 paramOut(cp, name, p.__data);

--- 336 unchanged lines hidden ---