static always_inline void gen_store_mem (DisasContext *ctx,

                                         void (*tcg_gen_qemu_store)(TCGv t0, TCGv t1, int flags),

                                         int ra, int rb, int32_t disp16,

                                         int fp, int clear, int local)

{

    TCGv addr;

    if (local)

        addr = tcg_temp_local_new(TCG_TYPE_I64);

    else

        addr = tcg_temp_new(TCG_TYPE_I64);

    if (rb != 31) {

        tcg_gen_addi_i64(addr, cpu_ir[rb], disp16);

        if (clear)

            tcg_gen_andi_i64(addr, addr, ~0x7);

    } else {

        if (clear)

            disp16 &= ~0x7;

        tcg_gen_movi_i64(addr, disp16);

    }

    if (ra != 31) {

        if (fp)

            tcg_gen_qemu_store(cpu_fir[ra], addr, ctx->mem_idx);

        else

            tcg_gen_qemu_store(cpu_ir[ra], addr, ctx->mem_idx);

    } else {

        TCGv zero;

        if (local)

            zero = tcg_const_local_i64(0);

        else

            zero = tcg_const_i64(0);

        tcg_gen_qemu_store(zero, addr, ctx->mem_idx);

        tcg_temp_free(zero);

    }

    tcg_temp_free(addr);

}

static always_inline void gen_store_mem (DisasContext *ctx,

                                         void (*tcg_gen_qemu_store)(TCGv t0, TCGv t1, int flags),

                                         int ra, int rb, int32_t disp16,

                                         int fp, int clear, int local)

{

    TCGv addr;

    if (local)

        addr = tcg_temp_local_new(TCG_TYPE_I64);

    else

        addr = tcg_temp_new(TCG_TYPE_I64);

    if (rb != 31) {

        tcg_gen_addi_i64(addr, cpu_ir[rb], disp16);

        if (clear)

            tcg_gen_andi_i64(addr, addr, ~0x7);

    } else {

        if (clear)

            disp16 &= ~0x7;

        tcg_gen_movi_i64(addr, disp16);

    }

    if (ra != 31) {

        if (fp)

            tcg_gen_qemu_store(cpu_fir[ra], addr, ctx->mem_idx);

        else

            tcg_gen_qemu_store(cpu_ir[ra], addr, ctx->mem_idx);

    } else {

        TCGv zero;

        if (local)

            zero = tcg_const_local_i64(0);

        else

            zero = tcg_const_i64(0);

        tcg_gen_qemu_store(zero, addr, ctx->mem_idx);

        tcg_temp_free(zero);

    }

    tcg_temp_free(addr);

}

static always_inline void FUNC_0 (DisasContext *ctx,

                                         void (*tcg_gen_qemu_store)(TCGv t0, TCGv t1, int flags),

                                         int ra, int rb, int32_t disp16,

                                         int fp, int clear, int local)

{

    TCGv addr;

    if (local)

        addr = tcg_temp_local_new(TCG_TYPE_I64);

    else

        addr = tcg_temp_new(TCG_TYPE_I64);

    if (rb != 31) {

        tcg_gen_addi_i64(addr, cpu_ir[rb], disp16);

        if (clear)

            tcg_gen_andi_i64(addr, addr, ~0x7);

    } else {

        if (clear)

            disp16 &= ~0x7;

        tcg_gen_movi_i64(addr, disp16);

    }

    if (ra != 31) {

        if (fp)

            tcg_gen_qemu_store(cpu_fir[ra], addr, ctx->mem_idx);

        else

            tcg_gen_qemu_store(cpu_ir[ra], addr, ctx->mem_idx);

    } else {

        TCGv zero;

        if (local)

            zero = tcg_const_local_i64(0);

        else

            zero = tcg_const_i64(0);

        tcg_gen_qemu_store(zero, addr, ctx->mem_idx);

        tcg_temp_free(zero);

    }

    tcg_temp_free(addr);

}

static always_inline void FUNC_0 (DisasContext *ctx,
void (*tcg_gen_qemu_store)(TCGv t0, TCGv t1, int flags),
int ra, int rb, int32_t disp16,
int fp, int clear, int local)
{ TCGv addr; if (local)
addr = tcg_temp_local_new(TCG_TYPE_I64); else
addr = tcg_temp_new(TCG_TYPE_I64); if (rb != 31) { tcg_gen_addi_i64(addr, cpu_ir[rb], disp16); if (clear)
tcg_gen_andi_i64(addr, addr, ~0x7); } else { if (clear)
disp16 &= ~0x7; tcg_gen_movi_i64(addr, disp16); } if (ra != 31) { if (fp)
tcg_gen_qemu_store(cpu_fir[ra], addr, ctx->mem_idx); else
tcg_gen_qemu_store(cpu_ir[ra], addr, ctx->mem_idx); } else { TCGv zero; if (local)
zero = tcg_const_local_i64(0); else
zero = tcg_const_i64(0); tcg_gen_qemu_store(zero, addr, ctx->mem_idx); tcg_temp_free(zero); } tcg_temp_free(addr); }