diff options
author | Richard Henderson <rth@twiddle.net> | 2014-05-22 13:25:34 -0700 |
---|---|---|
committer | Richard Henderson <rth@twiddle.net> | 2014-05-22 13:25:34 -0700 |
commit | a3abb29292dccd5681beb16f610b2b838eec2174 (patch) | |
tree | 2c7db66b748c97928642ffa0a3697e378d65cf34 /tcg | |
parent | 5118dc5975e6aa2e823961e15b162919f94721cc (diff) | |
download | hqemu-a3abb29292dccd5681beb16f610b2b838eec2174.zip hqemu-a3abb29292dccd5681beb16f610b2b838eec2174.tar.gz |
tci: Fix tcg_out_call
Broken since dddbb2e1e3f8137d7e3f1faf9758c66cca0c94ea.
Do all the rest of the things that tcg_out_op did before
and after the big switch statement.
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'tcg')
-rw-r--r-- | tcg/tci/tcg-target.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/tcg/tci/tcg-target.c b/tcg/tci/tcg-target.c index 9b39231..375e590 100644 --- a/tcg/tci/tcg-target.c +++ b/tcg/tci/tcg-target.c @@ -544,7 +544,10 @@ static void tcg_out_movi(TCGContext *s, TCGType type, static inline void tcg_out_call(TCGContext *s, tcg_insn_unit *arg) { + uint8_t *old_code_ptr = s->code_ptr; + tcg_out_op_t(s, INDEX_op_call); tcg_out_ri(s, 1, (uintptr_t)arg); + old_code_ptr[1] = s->code_ptr - old_code_ptr; } static void tcg_out_op(TCGContext *s, TCGOpcode opc, const TCGArg *args, |