static void handle_sync(DisasContext *s, uint32_t insn,

                        unsigned int op1, unsigned int op2, unsigned int crm)

{

    if (op1 != 3) {

        unallocated_encoding(s);

        return;

    }



    switch (op2) {

    case 2: /* CLREX */

        gen_clrex(s, insn);

        return;

    case 4: /* DSB */

    case 5: /* DMB */

    case 6: /* ISB */

        /* We don't emulate caches so barriers are no-ops */

        return;

    default:

        unallocated_encoding(s);

        return;

    }

}

static void handle_sync(DisasContext *s, uint32_t insn,

                        unsigned int op1, unsigned int op2, unsigned int crm)

{

    if (op1 != 3) {

        unallocated_encoding(s);

        return;

    }



    switch (op2) {

    case 2: 

        gen_clrex(s, insn);

        return;

    case 4: 

    case 5: 

    case 6: 

        

        return;

    default:

        unallocated_encoding(s);

        return;

    }

}

static void FUNC_0(DisasContext *VAR_0, uint32_t VAR_1,

                        unsigned int VAR_2, unsigned int VAR_3, unsigned int VAR_4)

{

    if (VAR_2 != 3) {

        unallocated_encoding(VAR_0);

        return;

    }



    switch (VAR_3) {

    case 2: 

        gen_clrex(VAR_0, VAR_1);

        return;

    case 4: 

    case 5: 

    case 6: 

        

        return;

    default:

        unallocated_encoding(VAR_0);

        return;

    }

}

static void FUNC_0(DisasContext *VAR_0, uint32_t VAR_1,
unsigned int VAR_2, unsigned int VAR_3, unsigned int VAR_4)
{ if (VAR_2 != 3) { unallocated_encoding(VAR_0); return; } switch (VAR_3) { case 2:
gen_clrex(VAR_0, VAR_1); return; case 4:
case 5:
case 6:
return; default:
unallocated_encoding(VAR_0); return; } }