static void vmstate_subsection_save(QEMUFile *f, const VMStateDescription *vmsd,

                                    void *opaque)

{

    const VMStateSubsection *sub = vmsd->subsections;



    while (sub && sub->needed) {

        if (sub->needed(opaque)) {

            const VMStateDescription *vmsd = sub->vmsd;

            uint8_t len;



            qemu_put_byte(f, QEMU_VM_SUBSECTION);

            len = strlen(vmsd->name);

            qemu_put_byte(f, len);

            qemu_put_buffer(f, (uint8_t *)vmsd->name, len);

            qemu_put_be32(f, vmsd->version_id);

            assert(!vmsd->subsections);

            vmstate_save_state(f, vmsd, opaque);

        }

        sub++;

    }

}

static void vmstate_subsection_save(QEMUFile *f, const VMStateDescription *vmsd,

                                    void *opaque)

{

    const VMStateSubsection *sub = vmsd->subsections;



    while (sub && sub->needed) {

        if (sub->needed(opaque)) {

            const VMStateDescription *vmsd = sub->vmsd;

            uint8_t len;



            qemu_put_byte(f, QEMU_VM_SUBSECTION);

            len = strlen(vmsd->name);

            qemu_put_byte(f, len);

            qemu_put_buffer(f, (uint8_t *)vmsd->name, len);

            qemu_put_be32(f, vmsd->version_id);

            assert(!vmsd->subsections);

            vmstate_save_state(f, vmsd, opaque);

        }

        sub++;

    }

}

    const VMStateSubsection *sub = vmsd->subsections;             assert(!vmsd->subsections);
static void FUNC_0(QEMUFile *VAR_0, const VMStateDescription *VAR_4,

                                    void *VAR_2)

{

    const VMStateSubsection *VAR_3 = VAR_4->subsections;



    while (VAR_3 && VAR_3->needed) {

        if (VAR_3->needed(VAR_2)) {

            const VMStateDescription *VAR_4 = VAR_3->VAR_4;

            uint8_t len;



            qemu_put_byte(VAR_0, QEMU_VM_SUBSECTION);

            len = strlen(VAR_4->name);

            qemu_put_byte(VAR_0, len);

            qemu_put_buffer(VAR_0, (uint8_t *)VAR_4->name, len);

            qemu_put_be32(VAR_0, VAR_4->version_id);

            assert(!VAR_4->subsections);

            vmstate_save_state(VAR_0, VAR_4, VAR_2);

        }

        VAR_3++;

    }

}

static void FUNC_0(QEMUFile *VAR_0, const VMStateDescription *VAR_4,
void *VAR_2)
{ const VMStateSubsection *VAR_3 = VAR_4->subsections; while (VAR_3 && VAR_3->needed) { if (VAR_3->needed(VAR_2)) { const VMStateDescription *VAR_4 = VAR_3->VAR_4; uint8_t len; qemu_put_byte(VAR_0, QEMU_VM_SUBSECTION); len = strlen(VAR_4->name); qemu_put_byte(VAR_0, len); qemu_put_buffer(VAR_0, (uint8_t *)VAR_4->name, len); qemu_put_be32(VAR_0, VAR_4->version_id); assert(!VAR_4->subsections); vmstate_save_state(VAR_0, VAR_4, VAR_2); } VAR_3++; } }