diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2021-01-29 21:18:45 -1000 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2021-03-17 07:24:44 -0600 |
commit | f28ca03ed5c452a5f81b1f4c84360a8bbdee617f (patch) | |
tree | be3477e9caedf2f5a5d2ec561f48f5273701d459 | |
parent | 963e9fa2bdde449ef9fe6b6f345d764d0d5901c2 (diff) | |
download | qemu-f28ca03ed5c452a5f81b1f4c84360a8bbdee617f.zip qemu-f28ca03ed5c452a5f81b1f4c84360a8bbdee617f.tar.gz qemu-f28ca03ed5c452a5f81b1f4c84360a8bbdee617f.tar.bz2 |
tcg/tci: Split out tci_args_l
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r-- | tcg/tci.c | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -181,10 +181,16 @@ static tcg_target_ulong tci_read_label(const uint8_t **tb_ptr) * where arguments is a sequence of * * c = condition (TCGCond) + * l = label or pointer * r = register * s = signed ldst offset */ +static void tci_args_l(const uint8_t **tb_ptr, void **l0) +{ + *l0 = (void *)tci_read_label(tb_ptr); +} + static void tci_args_rr(const uint8_t **tb_ptr, TCGReg *r0, TCGReg *r1) { @@ -418,9 +424,9 @@ uintptr_t QEMU_DISABLE_CFI tcg_qemu_tb_exec(CPUArchState *env, #endif break; case INDEX_op_br: - label = tci_read_label(&tb_ptr); + tci_args_l(&tb_ptr, &ptr); tci_assert(tb_ptr == old_code_ptr + op_size); - tb_ptr = (uint8_t *)label; + tb_ptr = ptr; continue; case INDEX_op_setcond_i32: tci_args_rrrc(&tb_ptr, &r0, &r1, &r2, &condition); |