|
From: | Richard Henderson |
Subject: | Re: [PATCH] target/rx: update PC correctly in wait instruction |
Date: | Thu, 21 Apr 2022 10:10:40 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 |
On 4/16/22 23:02, Tomoaki Kawada wrote:
`cpu_pc` at this point does not necessary point to the current instruction (i.e., the wait instruction being translated), so it's incorrect to calculate the new value of `cpu_pc` based on this. It must be updated with `ctx->base.pc_next`, which contains the correct address of the next instruction. This change fixes the wait instruction skipping the subsequent branch when used in an idle loop like this: 0: wait bra.b 0b brk // should be unreachable Signed-off-by: Tomoaki Kawada <i@yvt.jp>
Queued to target-rx-next. r~
[Prev in Thread] | Current Thread | [Next in Thread] |