qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] [PATCH v2 4/5] target/arm: use DISAS_JUMP for ISB handlin


From: Richard Henderson
Subject: Re: [Qemu-arm] [PATCH v2 4/5] target/arm: use DISAS_JUMP for ISB handling
Date: Tue, 11 Jul 2017 07:08:41 -1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1

On 07/10/2017 10:27 PM, Alex Bennée wrote:

Richard Henderson <address@hidden> writes:

On 07/10/2017 09:21 AM, Alex Bennée wrote:
-        s->is_jmp = DISAS_UPDATE;
+        gen_a64_set_pc_im(s->pc);
+        s->is_jmp = DISAS_JUMP;

Better would be gen_goto_tb.  The destination is known, so there's no
need to go through lookup_and_goto_ptr.  You still get the icount_decr
check at the start of the linked TB, which is what you're looking for.

Interesting that a64's gen_goto_tb sets is_jmp, but a32 does not...

Hmm the only caller that is not already in the exit path sets it. Maybe
I should push the s->is_jmp to the a32 gen_goto_tb? I can then do the
same in both.

Sounds reasonable.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]