static void tgen_compare_branch(TCGContext *s, S390Opcode opc, int cc,
TCGReg r1, TCGReg r2, TCGLabel *l)
{
- intptr_t off;
+ intptr_t off = 0;
if (l->has_value) {
off = l->u.value_ptr - s->code_ptr;
} else {
- /* We need to keep the offset unchanged for retranslation. */
- off = s->code_ptr[1];
tcg_out_reloc(s, s->code_ptr + 1, R_390_PC16DBL, l, 2);
}
static void tgen_compare_imm_branch(TCGContext *s, S390Opcode opc, int cc,
TCGReg r1, int i2, TCGLabel *l)
{
- tcg_target_long off;
+ tcg_target_long off = 0;
if (l->has_value) {
off = l->u.value_ptr - s->code_ptr;
} else {
- /* We need to keep the offset unchanged for retranslation. */
- off = s->code_ptr[1];
tcg_out_reloc(s, s->code_ptr + 1, R_390_PC16DBL, l, 2);
}
base_reg = tcg_out_tlb_read(s, addr_reg, opc, mem_index, 1);
- /* We need to keep the offset unchanged for retranslation. */
tcg_out16(s, RI_BRC | (S390_CC_NE << 4));
label_ptr = s->code_ptr;
s->code_ptr += 1;
base_reg = tcg_out_tlb_read(s, addr_reg, opc, mem_index, 0);
- /* We need to keep the offset unchanged for retranslation. */
tcg_out16(s, RI_BRC | (S390_CC_NE << 4));
label_ptr = s->code_ptr;
s->code_ptr += 1;