static inline void softusb_read_pmem(MilkymistSoftUsbState *s,

        uint32_t offset, uint8_t *buf, uint32_t len)

{

    if (offset + len >= s->pmem_size) {

        error_report("milkymist_softusb: read pmem out of bounds "

                "at offset 0x%x, len %d", offset, len);


        return;

    }



    memcpy(buf, s->pmem_ptr + offset, len);

}
static inline void softusb_read_pmem(MilkymistSoftUsbState *s,

        uint32_t offset, uint8_t *buf, uint32_t len)

{

    if (offset + len >= s->pmem_size) {

        error_report("milkymist_softusb: read pmem out of bounds "

                "at offset 0x%x, len %d", offset, len);


        return;

    }



    memcpy(buf, s->pmem_ptr + offset, len);

}
static inline void FUNC_0(MilkymistSoftUsbState *VAR_0,

        uint32_t VAR_1, uint8_t *VAR_2, uint32_t VAR_3)

{

    if (VAR_1 + VAR_3 >= VAR_0->pmem_size) {

        error_report("milkymist_softusb: read pmem out of bounds "

                "at VAR_1 0x%x, VAR_3 %d", VAR_1, VAR_3);


        return;

    }



    memcpy(VAR_2, VAR_0->pmem_ptr + VAR_1, VAR_3);

}
static inline void FUNC_0(MilkymistSoftUsbState *VAR_0,
uint32_t VAR_1, uint8_t *VAR_2, uint32_t VAR_3)
{ if (VAR_1 + VAR_3 >= VAR_0->pmem_size) { error_report("milkymist_softusb: read pmem out of bounds "
"at VAR_1 0x%x, VAR_3 %d", VAR_1, VAR_3); return; } memcpy(VAR_2, VAR_0->pmem_ptr + VAR_1, VAR_3); }