static inline void tcg_out_brcond(TCGContext *s, TCGCond cond, TCGReg arg1,

                                  TCGReg arg2, int label_index, int cmp4)

{

    TCGLabel *l = &s->labels[label_index];

    uint64_t imm;



    /* We pay attention here to not modify the branch target by reading

       the existing value and using it again. This ensure that caches and

       memory are kept coherent during retranslation. */

    if (l->has_value) {

        imm = l->u.value_ptr - s->code_ptr;

    } else {

        imm = get_reloc_pcrel21b_slot2(s->code_ptr);

        tcg_out_reloc(s, s->code_ptr, R_IA64_PCREL21B, label_index, 0);

    }



    tcg_out_bundle(s, miB,

                   INSN_NOP_M,

                   tcg_opc_cmp_a(TCG_REG_P0, cond, arg1, arg2, cmp4),

                   tcg_opc_b1(TCG_REG_P6, OPC_BR_DPTK_FEW_B1, imm));

}

static inline void tcg_out_brcond(TCGContext *s, TCGCond cond, TCGReg arg1,

                                  TCGReg arg2, int label_index, int cmp4)

{

    TCGLabel *l = &s->labels[label_index];

    uint64_t imm;



    





    if (l->has_value) {

        imm = l->u.value_ptr - s->code_ptr;

    } else {

        imm = get_reloc_pcrel21b_slot2(s->code_ptr);

        tcg_out_reloc(s, s->code_ptr, R_IA64_PCREL21B, label_index, 0);

    }



    tcg_out_bundle(s, miB,

                   INSN_NOP_M,

                   tcg_opc_cmp_a(TCG_REG_P0, cond, arg1, arg2, cmp4),

                   tcg_opc_b1(TCG_REG_P6, OPC_BR_DPTK_FEW_B1, imm));

}

static inline void FUNC_0(TCGContext *VAR_0, TCGCond VAR_1, TCGReg VAR_2,

                                  TCGReg VAR_3, int VAR_4, int VAR_5)

{

    TCGLabel *l = &VAR_0->labels[VAR_4];

    uint64_t imm;



    





    if (l->has_value) {

        imm = l->u.value_ptr - VAR_0->code_ptr;

    } else {

        imm = get_reloc_pcrel21b_slot2(VAR_0->code_ptr);

        tcg_out_reloc(VAR_0, VAR_0->code_ptr, R_IA64_PCREL21B, VAR_4, 0);

    }



    tcg_out_bundle(VAR_0, miB,

                   INSN_NOP_M,

                   tcg_opc_cmp_a(TCG_REG_P0, VAR_1, VAR_2, VAR_3, VAR_5),

                   tcg_opc_b1(TCG_REG_P6, OPC_BR_DPTK_FEW_B1, imm));

}

static inline void FUNC_0(TCGContext *VAR_0, TCGCond VAR_1, TCGReg VAR_2,
TCGReg VAR_3, int VAR_4, int VAR_5)
{ TCGLabel *l = &VAR_0->labels[VAR_4]; uint64_t imm; if (l->has_value) { imm = l->u.value_ptr - VAR_0->code_ptr; } else { imm = get_reloc_pcrel21b_slot2(VAR_0->code_ptr); tcg_out_reloc(VAR_0, VAR_0->code_ptr, R_IA64_PCREL21B, VAR_4, 0); } tcg_out_bundle(VAR_0, miB,
INSN_NOP_M,
tcg_opc_cmp_a(TCG_REG_P0, VAR_1, VAR_2, VAR_3, VAR_5),
tcg_opc_b1(TCG_REG_P6, OPC_BR_DPTK_FEW_B1, imm)); }