static void pfpu_start(MilkymistPFPUState *s)

{

    int x, y;

    int i;



    for (y = 0; y <= s->regs[R_VMESHLAST]; y++) {

        for (x = 0; x <= s->regs[R_HMESHLAST]; x++) {

            D_EXEC(qemu_log("\nprocessing x=%d y=%d\n", x, y));



            /* set current position */

            s->gp_regs[GPR_X] = x;

            s->gp_regs[GPR_Y] = y;



            /* run microcode on this position */

            i = 0;

            while (pfpu_decode_insn(s)) {

                /* decode at most MICROCODE_WORDS instructions */

                if (i++ >= MICROCODE_WORDS) {

                    error_report("milkymist_pfpu: too many instructions "

                            "executed in microcode. No VECTOUT?");

                    break;

                }

            }



            /* reset pc for next run */

            s->regs[R_PC] = 0;

        }

    }



    s->regs[R_VERTICES] = x * y;



    trace_milkymist_pfpu_pulse_irq();

    qemu_irq_pulse(s->irq);

}

static void pfpu_start(MilkymistPFPUState *s)

{

    int x, y;

    int i;



    for (y = 0; y <= s->regs[R_VMESHLAST]; y++) {

        for (x = 0; x <= s->regs[R_HMESHLAST]; x++) {

            D_EXEC(qemu_log("\nprocessing x=%d y=%d\n", x, y));



            

            s->gp_regs[GPR_X] = x;

            s->gp_regs[GPR_Y] = y;



            

            i = 0;

            while (pfpu_decode_insn(s)) {

                

                if (i++ >= MICROCODE_WORDS) {

                    error_report("milkymist_pfpu: too many instructions "

                            "executed in microcode. No VECTOUT?");

                    break;

                }

            }



            

            s->regs[R_PC] = 0;

        }

    }



    s->regs[R_VERTICES] = x * y;



    trace_milkymist_pfpu_pulse_irq();

    qemu_irq_pulse(s->irq);

}

                if (i++ >= MICROCODE_WORDS) {
static void FUNC_0(MilkymistPFPUState *VAR_0)

{

    int VAR_1, VAR_2;

    int VAR_3;



    for (VAR_2 = 0; VAR_2 <= VAR_0->regs[R_VMESHLAST]; VAR_2++) {

        for (VAR_1 = 0; VAR_1 <= VAR_0->regs[R_HMESHLAST]; VAR_1++) {

            D_EXEC(qemu_log("\nprocessing VAR_1=%d VAR_2=%d\n", VAR_1, VAR_2));



            

            VAR_0->gp_regs[GPR_X] = VAR_1;

            VAR_0->gp_regs[GPR_Y] = VAR_2;



            

            VAR_3 = 0;

            while (pfpu_decode_insn(VAR_0)) {

                

                if (VAR_3++ >= MICROCODE_WORDS) {

                    error_report("milkymist_pfpu: too many instructions "

                            "executed in microcode. No VECTOUT?");

                    break;

                }

            }



            

            VAR_0->regs[R_PC] = 0;

        }

    }



    VAR_0->regs[R_VERTICES] = VAR_1 * VAR_2;



    trace_milkymist_pfpu_pulse_irq();

    qemu_irq_pulse(VAR_0->irq);

}

static void FUNC_0(MilkymistPFPUState *VAR_0)
{ int VAR_1, VAR_2; int VAR_3; for (VAR_2 = 0; VAR_2 <= VAR_0->regs[R_VMESHLAST]; VAR_2++) { for (VAR_1 = 0; VAR_1 <= VAR_0->regs[R_HMESHLAST]; VAR_1++) { D_EXEC(qemu_log("\nprocessing VAR_1=%d VAR_2=%d\n", VAR_1, VAR_2)); VAR_0->gp_regs[GPR_X] = VAR_1; VAR_0->gp_regs[GPR_Y] = VAR_2; VAR_3 = 0; while (pfpu_decode_insn(VAR_0)) { if (VAR_3++ >= MICROCODE_WORDS) { error_report("milkymist_pfpu: too many instructions "
"executed in microcode. No VECTOUT?"); break; } } VAR_0->regs[R_PC] = 0; } } VAR_0->regs[R_VERTICES] = VAR_1 * VAR_2; trace_milkymist_pfpu_pulse_irq(); qemu_irq_pulse(VAR_0->irq); }