static inline void gen_movcf_ps(DisasContext *ctx, int fs, int fd,

                                int cc, int tf)

{

    int cond;

    TCGv_i32 t0 = tcg_temp_new_i32();

    int l1 = gen_new_label();

    int l2 = gen_new_label();



    if (tf)

        cond = TCG_COND_EQ;

    else

        cond = TCG_COND_NE;



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(cc));

    tcg_gen_brcondi_i32(cond, t0, 0, l1);

    gen_load_fpr32(t0, fs);

    gen_store_fpr32(t0, fd);

    gen_set_label(l1);



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(cc+1));

    tcg_gen_brcondi_i32(cond, t0, 0, l2);

    gen_load_fpr32h(ctx, t0, fs);

    gen_store_fpr32h(ctx, t0, fd);

    tcg_temp_free_i32(t0);

    gen_set_label(l2);

}

static inline void gen_movcf_ps(DisasContext *ctx, int fs, int fd,

                                int cc, int tf)

{

    int cond;

    TCGv_i32 t0 = tcg_temp_new_i32();

    int l1 = gen_new_label();

    int l2 = gen_new_label();



    if (tf)

        cond = TCG_COND_EQ;

    else

        cond = TCG_COND_NE;



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(cc));

    tcg_gen_brcondi_i32(cond, t0, 0, l1);

    gen_load_fpr32(t0, fs);

    gen_store_fpr32(t0, fd);

    gen_set_label(l1);



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(cc+1));

    tcg_gen_brcondi_i32(cond, t0, 0, l2);

    gen_load_fpr32h(ctx, t0, fs);

    gen_store_fpr32h(ctx, t0, fd);

    tcg_temp_free_i32(t0);

    gen_set_label(l2);

}

static inline void FUNC_0(DisasContext *VAR_0, int VAR_1, int VAR_2,

                                int VAR_3, int VAR_4)

{

    int VAR_5;

    TCGv_i32 t0 = tcg_temp_new_i32();

    int VAR_6 = gen_new_label();

    int VAR_7 = gen_new_label();



    if (VAR_4)

        VAR_5 = TCG_COND_EQ;

    else

        VAR_5 = TCG_COND_NE;



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(VAR_3));

    tcg_gen_brcondi_i32(VAR_5, t0, 0, VAR_6);

    gen_load_fpr32(t0, VAR_1);

    gen_store_fpr32(t0, VAR_2);

    gen_set_label(VAR_6);



    tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(VAR_3+1));

    tcg_gen_brcondi_i32(VAR_5, t0, 0, VAR_7);

    gen_load_fpr32h(VAR_0, t0, VAR_1);

    gen_store_fpr32h(VAR_0, t0, VAR_2);

    tcg_temp_free_i32(t0);

    gen_set_label(VAR_7);

}

static inline void FUNC_0(DisasContext *VAR_0, int VAR_1, int VAR_2,
int VAR_3, int VAR_4)
{ int VAR_5; TCGv_i32 t0 = tcg_temp_new_i32(); int VAR_6 = gen_new_label(); int VAR_7 = gen_new_label(); if (VAR_4)
VAR_5 = TCG_COND_EQ; else
VAR_5 = TCG_COND_NE; tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(VAR_3)); tcg_gen_brcondi_i32(VAR_5, t0, 0, VAR_6); gen_load_fpr32(t0, VAR_1); gen_store_fpr32(t0, VAR_2); gen_set_label(VAR_6); tcg_gen_andi_i32(t0, fpu_fcr31, 1 << get_fp_bit(VAR_3+1)); tcg_gen_brcondi_i32(VAR_5, t0, 0, VAR_7); gen_load_fpr32h(VAR_0, t0, VAR_1); gen_store_fpr32h(VAR_0, t0, VAR_2); tcg_temp_free_i32(t0); gen_set_label(VAR_7); }