[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 08/41] tcg: Adjust tcg_out_label for const
From: |
Richard Henderson |
Subject: |
[PATCH v3 08/41] tcg: Adjust tcg_out_label for const |
Date: |
Thu, 5 Nov 2020 19:28:48 -0800 |
Simplify the arguments to always use s->code_ptr instead of
take it as an argument. That makes it easy to ensure that
the value_ptr is always the rx version.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
tcg/tcg.c | 6 +++---
tcg/i386/tcg-target.c.inc | 10 +++++-----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/tcg/tcg.c b/tcg/tcg.c
index d3eeea355c..e5d2208e88 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -301,11 +301,11 @@ static void tcg_out_reloc(TCGContext *s, tcg_insn_unit
*code_ptr, int type,
QSIMPLEQ_INSERT_TAIL(&l->relocs, r, next);
}
-static void tcg_out_label(TCGContext *s, TCGLabel *l, tcg_insn_unit *ptr)
+static void tcg_out_label(TCGContext *s, TCGLabel *l)
{
tcg_debug_assert(!l->has_value);
l->has_value = 1;
- l->u.value_ptr = tcg_splitwx_to_rx(ptr);
+ l->u.value_ptr = tcg_splitwx_to_rx(s->code_ptr);
}
TCGLabel *gen_new_label(void)
@@ -4322,7 +4322,7 @@ int tcg_gen_code(TCGContext *s, TranslationBlock *tb)
break;
case INDEX_op_set_label:
tcg_reg_alloc_bb_end(s, s->reserved_regs);
- tcg_out_label(s, arg_label(op->args[0]), s->code_ptr);
+ tcg_out_label(s, arg_label(op->args[0]));
break;
case INDEX_op_call:
tcg_reg_alloc_call(s, op);
diff --git a/tcg/i386/tcg-target.c.inc b/tcg/i386/tcg-target.c.inc
index 095553ce28..0ac1ef3d82 100644
--- a/tcg/i386/tcg-target.c.inc
+++ b/tcg/i386/tcg-target.c.inc
@@ -1452,7 +1452,7 @@ static void tcg_out_brcond2(TCGContext *s, const TCGArg
*args,
default:
tcg_abort();
}
- tcg_out_label(s, label_next, s->code_ptr);
+ tcg_out_label(s, label_next);
}
#endif
@@ -1494,10 +1494,10 @@ static void tcg_out_setcond2(TCGContext *s, const
TCGArg *args,
tcg_out_movi(s, TCG_TYPE_I32, args[0], 0);
tcg_out_jxx(s, JCC_JMP, label_over, 1);
- tcg_out_label(s, label_true, s->code_ptr);
+ tcg_out_label(s, label_true);
tcg_out_movi(s, TCG_TYPE_I32, args[0], 1);
- tcg_out_label(s, label_over, s->code_ptr);
+ tcg_out_label(s, label_over);
} else {
/* When the destination does not overlap one of the arguments,
clear the destination first, jump if cond false, and emit an
@@ -1511,7 +1511,7 @@ static void tcg_out_setcond2(TCGContext *s, const TCGArg
*args,
tcg_out_brcond2(s, new_args, const_args+1, 1);
tgen_arithi(s, ARITH_ADD, args[0], 1, 0);
- tcg_out_label(s, label_over, s->code_ptr);
+ tcg_out_label(s, label_over);
}
}
#endif
@@ -1525,7 +1525,7 @@ static void tcg_out_cmov(TCGContext *s, TCGCond cond, int
rexw,
TCGLabel *over = gen_new_label();
tcg_out_jxx(s, tcg_cond_to_jcc[tcg_invert_cond(cond)], over, 1);
tcg_out_mov(s, TCG_TYPE_I32, dest, v1);
- tcg_out_label(s, over, s->code_ptr);
+ tcg_out_label(s, over);
}
}
--
2.25.1
- Re: [PATCH v3 01/41] tcg: Enhance flush_icache_range with separate data pointer, (continued)
[PATCH v3 03/41] tcg: Move tcg epilogue pointer out of TCGContext, Richard Henderson, 2020/11/05
[PATCH v3 04/41] tcg: Add in_code_gen_buffer, Richard Henderson, 2020/11/05
[PATCH v3 02/41] tcg: Move tcg prologue pointer out of TCGContext, Richard Henderson, 2020/11/05
[PATCH v3 05/41] tcg: Introduce tcg_splitwx_to_{rx,rw}, Richard Henderson, 2020/11/05
[PATCH v3 06/41] tcg: Adjust TCGLabel for const, Richard Henderson, 2020/11/05
[PATCH v3 07/41] tcg: Adjust tcg_out_call for const, Richard Henderson, 2020/11/05
[PATCH v3 08/41] tcg: Adjust tcg_out_label for const,
Richard Henderson <=
[PATCH v3 09/41] tcg: Adjust tcg_register_jit for const, Richard Henderson, 2020/11/05
[PATCH v3 10/41] tcg: Adjust tb_target_set_jmp_target for split-wx, Richard Henderson, 2020/11/05
[PATCH v3 11/41] tcg: Make DisasContextBase.tb const, Richard Henderson, 2020/11/05
[PATCH v3 12/41] tcg: Make tb arg to synchronize_from_tb const, Richard Henderson, 2020/11/05
[PATCH v3 13/41] tcg: Use Error with alloc_code_gen_buffer, Richard Henderson, 2020/11/05
[PATCH v3 14/41] tcg: Add --accel tcg,split-wx property, Richard Henderson, 2020/11/05
[PATCH v3 15/41] accel/tcg: Support split-wx for linux with memfd, Richard Henderson, 2020/11/05
[PATCH v3 18/41] tcg/i386: Support split-wx code generation, Richard Henderson, 2020/11/05