[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH 05/10] tcg: add jr opcode
From: |
Emilio G. Cota |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH 05/10] tcg: add jr opcode |
Date: |
Sun, 16 Apr 2017 14:28:43 -0400 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Sat, Apr 15, 2017 at 04:40:35 -0700, Richard Henderson wrote:
> On 04/11/2017 06:17 PM, Emilio G. Cota wrote:
> >This will be used by TCG targets to implement a fast path
> >for indirect branches.
> >
> >I only have implemented and tested this on an i386 host, so
> >make this opcode optional and mark it as not implemented by
> >other TCG backends.
>
> I don't think this is quite the right abstraction. In particular, if we can
> always return a valid address from the helper, we can eliminate a
> conditional branch.
>
> I think this should work as follows:
(snip)
Yes that's much better. In fact in the cover letter I forgot to
mention that the code by the paper authors does something similar
to avoid the branch.
I went with the design with a branch because (1) I wasn't sure that
exporting tb_ret_addr would get your approval and (2) my knowledge
of TCG backend code is shamefully poor.
Will work on a v2. Thanks for the feedback!
Emilio
- [Qemu-arm] [PATCH 04/10] target/i386: optimize cross-page block chaining in softmmu, (continued)
- [Qemu-arm] [PATCH 04/10] target/i386: optimize cross-page block chaining in softmmu, Emilio G. Cota, 2017/04/11
- [Qemu-arm] [PATCH 06/10] tcg: add brcondi_ptr, Emilio G. Cota, 2017/04/11
- [Qemu-arm] [PATCH 10/10] tb-hash: improve tb_jmp_cache hash function in user mode, Emilio G. Cota, 2017/04/11
- [Qemu-arm] [PATCH 03/10] target/arm: optimize cross-page block chaining in softmmu, Emilio G. Cota, 2017/04/11
- [Qemu-arm] [PATCH 05/10] tcg: add jr opcode, Emilio G. Cota, 2017/04/11
- [Qemu-arm] [PATCH 09/10] target/i386: optimize indirect branches with TCG's jr op, Emilio G. Cota, 2017/04/11
- Re: [Qemu-arm] [PATCH 00/10] TCG optimizations for 2.10, Alex Bennée, 2017/04/12