static void pl061_update(pl061_state *s)

{

    uint8_t changed;

    uint8_t mask;

    uint8_t out;

    int i;



    /* Outputs float high.  */

    /* FIXME: This is board dependent.  */

    out = (s->data & s->dir) | ~s->dir;

    changed = s->old_data ^ out;

    if (!changed)

        return;



    s->old_data = out;

    for (i = 0; i < 8; i++) {

        mask = 1 << i;

        if ((changed & mask) && s->out) {

            DPRINTF("Set output %d = %d\n", i, (out & mask) != 0);

            qemu_set_irq(s->out[i], (out & mask) != 0);

        }

    }



    /* FIXME: Implement input interrupts.  */

}

static void pl061_update(pl061_state *s)

{

    uint8_t changed;

    uint8_t mask;

    uint8_t out;

    int i;



    

    

    out = (s->data & s->dir) | ~s->dir;

    changed = s->old_data ^ out;

    if (!changed)

        return;



    s->old_data = out;

    for (i = 0; i < 8; i++) {

        mask = 1 << i;

        if ((changed & mask) && s->out) {

            DPRINTF("Set output %d = %d\n", i, (out & mask) != 0);

            qemu_set_irq(s->out[i], (out & mask) != 0);

        }

    }



    

}

static void FUNC_0(pl061_state *VAR_0)

{

    uint8_t changed;

    uint8_t mask;

    uint8_t out;

    int VAR_1;



    

    

    out = (VAR_0->data & VAR_0->dir) | ~VAR_0->dir;

    changed = VAR_0->old_data ^ out;

    if (!changed)

        return;



    VAR_0->old_data = out;

    for (VAR_1 = 0; VAR_1 < 8; VAR_1++) {

        mask = 1 << VAR_1;

        if ((changed & mask) && VAR_0->out) {

            DPRINTF("Set output %d = %d\n", VAR_1, (out & mask) != 0);

            qemu_set_irq(VAR_0->out[VAR_1], (out & mask) != 0);

        }

    }



    

}

static void FUNC_0(pl061_state *VAR_0)
{ uint8_t changed; uint8_t mask; uint8_t out; int VAR_1; out = (VAR_0->data & VAR_0->dir) | ~VAR_0->dir; changed = VAR_0->old_data ^ out; if (!changed)
return; VAR_0->old_data = out; for (VAR_1 = 0; VAR_1 < 8; VAR_1++) { mask = 1 << VAR_1; if ((changed & mask) && VAR_0->out) { DPRINTF("Set output %d = %d\n", VAR_1, (out & mask) != 0); qemu_set_irq(VAR_0->out[VAR_1], (out & mask) != 0); } } }