Flesh out ExecContext serialize/unserialize (including RegFile).
Add support for serializing enums.
arch/alpha/isa_traits.hh:
Add serialize/unserialize functions for RegFile
(defined in new isa_traits.cc).
cpu/exec_context.cc:
Flesh out serialize/unserialize.
sim/serialize.hh:
Add {UN}SERIALIZE_ENUM().
--HG--
extra : convert_revision : 9e30c7e7b3b290dc8ea0888ba3636fc93ee89052
This commit is contained in:
@@ -66,6 +66,16 @@ void arrayParamIn(const IniFile *db, const std::string §ion,
|
||||
|
||||
#define UNSERIALIZE_SCALAR(scalar) paramIn(db, section, #scalar, scalar)
|
||||
|
||||
// ENUMs are like SCALARs, but we cast them to ints on the way out
|
||||
#define SERIALIZE_ENUM(scalar) paramOut(os, #scalar, (int)scalar)
|
||||
|
||||
#define UNSERIALIZE_ENUM(scalar) \
|
||||
do { \
|
||||
int tmp; \
|
||||
paramIn(db, section, #scalar, tmp); \
|
||||
scalar = (typeof(scalar))tmp; \
|
||||
} while (0)
|
||||
|
||||
#define SERIALIZE_ARRAY(member, size) \
|
||||
arrayParamOut(os, #member, member, size)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user