While working on cleaning up pxa2xx_timer, I stumbled upon storing array of structures, which is referenced via a pointer. Thus I had to add this macro.
Signed-off-by: Dmitry Eremin-Solenikov <dbarysh...@gmail.com> --- hw/hw.h | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/hw/hw.h b/hw/hw.h index 163a683..acdeb6a 100644 --- a/hw/hw.h +++ b/hw/hw.h @@ -456,6 +456,16 @@ extern const VMStateInfo vmstate_info_unused_buffer; .offset = vmstate_offset_value(_state, _field, _type), \ } +#define VMSTATE_STRUCT_POINTER_ARRAY_TEST(_field, _state, _num, _test, _vmsd, _type) { \ + .name = (stringify(_field)), \ + .field_exists = (_test), \ + .num = (_num), \ + .vmsd = &(_vmsd), \ + .size = sizeof(_type), \ + .flags = VMS_STRUCT|VMS_POINTER|VMS_ARRAY, \ + .offset = vmstate_offset_pointer(_state, _field, _type), \ +} + #define VMSTATE_STRUCT_POINTER_TEST(_field, _state, _test, _vmsd, _type) { \ .name = (stringify(_field)), \ .field_exists = (_test), \ -- 1.7.2.3