vmstate: Introduce VMSTATE_STRUCT_TEST
Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
e61a1e0a11
commit
11fe0e6e0e
18
hw/hw.h
18
hw/hw.h
@ -436,13 +436,14 @@ extern const VMStateInfo vmstate_info_unused_buffer;
|
|||||||
.offset = offsetof(_state, _field), \
|
.offset = offsetof(_state, _field), \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define VMSTATE_STRUCT(_field, _state, _version, _vmsd, _type) { \
|
#define VMSTATE_STRUCT_TEST(_field, _state, _test, _version, _vmsd, _type) { \
|
||||||
.name = (stringify(_field)), \
|
.name = (stringify(_field)), \
|
||||||
.version_id = (_version), \
|
.version_id = (_version), \
|
||||||
.vmsd = &(_vmsd), \
|
.field_exists = (_test), \
|
||||||
.size = sizeof(_type), \
|
.vmsd = &(_vmsd), \
|
||||||
.flags = VMS_STRUCT, \
|
.size = sizeof(_type), \
|
||||||
.offset = vmstate_offset_value(_state, _field, _type), \
|
.flags = VMS_STRUCT, \
|
||||||
|
.offset = vmstate_offset_value(_state, _field, _type), \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define VMSTATE_STRUCT_POINTER(_field, _state, _vmsd, _type) { \
|
#define VMSTATE_STRUCT_POINTER(_field, _state, _vmsd, _type) { \
|
||||||
@ -574,6 +575,9 @@ extern const VMStateDescription vmstate_i2c_slave;
|
|||||||
#define VMSTATE_SINGLE(_field, _state, _version, _info, _type) \
|
#define VMSTATE_SINGLE(_field, _state, _version, _info, _type) \
|
||||||
VMSTATE_SINGLE_TEST(_field, _state, NULL, _version, _info, _type)
|
VMSTATE_SINGLE_TEST(_field, _state, NULL, _version, _info, _type)
|
||||||
|
|
||||||
|
#define VMSTATE_STRUCT(_field, _state, _version, _vmsd, _type) \
|
||||||
|
VMSTATE_STRUCT_TEST(_field, _state, NULL, _version, _vmsd, _type)
|
||||||
|
|
||||||
#define VMSTATE_INT8_V(_f, _s, _v) \
|
#define VMSTATE_INT8_V(_f, _s, _v) \
|
||||||
VMSTATE_SINGLE(_f, _s, _v, vmstate_info_int8, int8_t)
|
VMSTATE_SINGLE(_f, _s, _v, vmstate_info_int8, int8_t)
|
||||||
#define VMSTATE_INT16_V(_f, _s, _v) \
|
#define VMSTATE_INT16_V(_f, _s, _v) \
|
||||||
|
Loading…
Reference in New Issue
Block a user