On Fri, 26 Jul 2019 at 18:50, Richard Henderson
wrote:
>
> Signed-off-by: Richard Henderson
> ---
> target/arm/translate.c | 6 +-
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/target/arm/translate.c b/target/arm/translate.c
> index e316eeb312..53c46fcdc4 100644
> --- a/target/arm/translate.c
> +++ b/target/arm/translate.c
> @@ -9161,11 +9161,7 @@ static void disas_arm_insn(DisasContext *s, unsigned
> int insn)
> }
> } else {
> /* store */
> -if (i == 15) {
> -/* special case: r15 = PC + 8 */
> -tmp = tcg_temp_new_i32();
> -tcg_gen_movi_i32(tmp, s->pc_read);
> -} else if (user) {
> +if (user && i != 15) {
> tmp = tcg_temp_new_i32();
> tmp2 = tcg_const_i32(i);
> gen_helper_get_user_reg(tmp, cpu_env, tmp2);
> --
> 2.17.1
Reviewed-by: Peter Maydell
thanks
-- PMM