* [Qemu-devel] [PULL] target/sparc queued patch @ 2017-03-01 19:55 Richard Henderson 2017-03-01 19:55 ` [Qemu-devel] [PULL] target/sparc: Restore ldstub of odd asis Richard Henderson 2017-03-02 23:14 ` [Qemu-devel] [PULL] target/sparc queued patch Peter Maydell 0 siblings, 2 replies; 3+ messages in thread From: Richard Henderson @ 2017-03-01 19:55 UTC (permalink / raw) To: qemu-devel; +Cc: peter.maydell This one has been languishing for a few weeks. r~ The following changes since commit b28f9db1a7ce4d537ce2fae6fbce5e5e37dc265b: Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20170228-1' into staging (2017-03-01 17:58:54 +0000) are available in the git repository at: git://github.com/rth7680/qemu.git tags/pull-tgt-20170302 for you to fetch changes up to 3db010c3398d03646d74f2d36a68e62539342e6c: target/sparc: Restore ldstub of odd asis (2017-03-02 06:52:43 +1100) ---------------------------------------------------------------- Queued sparc patch ---------------------------------------------------------------- Richard Henderson (1): target/sparc: Restore ldstub of odd asis target/sparc/translate.c | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Qemu-devel] [PULL] target/sparc: Restore ldstub of odd asis 2017-03-01 19:55 [Qemu-devel] [PULL] target/sparc queued patch Richard Henderson @ 2017-03-01 19:55 ` Richard Henderson 2017-03-02 23:14 ` [Qemu-devel] [PULL] target/sparc queued patch Peter Maydell 1 sibling, 0 replies; 3+ messages in thread From: Richard Henderson @ 2017-03-01 19:55 UTC (permalink / raw) To: qemu-devel; +Cc: peter.maydell, qemu-stable Fixes the booting of ss20 roms. Cc: qemu-stable@nongnu.org Reported-by: Michael Russo <mike@papersolve.com> Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Signed-off-by: Richard Henderson <rth@twiddle.net> --- target/sparc/translate.c | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/target/sparc/translate.c b/target/sparc/translate.c index 655060c..aa6734d 100644 --- a/target/sparc/translate.c +++ b/target/sparc/translate.c @@ -2448,8 +2448,31 @@ static void gen_ldstub_asi(DisasContext *dc, TCGv dst, TCGv addr, int insn) gen_ldstub(dc, dst, addr, da.mem_idx); break; default: - /* ??? Should be DAE_invalid_asi. */ - gen_exception(dc, TT_DATA_ACCESS); + /* ??? In theory, this should be raise DAE_invalid_asi. + But the SS-20 roms do ldstuba [%l0] #ASI_M_CTL, %o1. */ + if (parallel_cpus) { + gen_helper_exit_atomic(cpu_env); + } else { + TCGv_i32 r_asi = tcg_const_i32(da.asi); + TCGv_i32 r_mop = tcg_const_i32(MO_UB); + TCGv_i64 s64, t64; + + save_state(dc); + t64 = tcg_temp_new_i64(); + gen_helper_ld_asi(t64, cpu_env, addr, r_asi, r_mop); + + s64 = tcg_const_i64(0xff); + gen_helper_st_asi(cpu_env, addr, s64, r_asi, r_mop); + tcg_temp_free_i64(s64); + tcg_temp_free_i32(r_mop); + tcg_temp_free_i32(r_asi); + + tcg_gen_trunc_i64_tl(dst, t64); + tcg_temp_free_i64(t64); + + /* End the TB. */ + dc->npc = DYNAMIC_PC; + } break; } } -- 2.9.3 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PULL] target/sparc queued patch 2017-03-01 19:55 [Qemu-devel] [PULL] target/sparc queued patch Richard Henderson 2017-03-01 19:55 ` [Qemu-devel] [PULL] target/sparc: Restore ldstub of odd asis Richard Henderson @ 2017-03-02 23:14 ` Peter Maydell 1 sibling, 0 replies; 3+ messages in thread From: Peter Maydell @ 2017-03-02 23:14 UTC (permalink / raw) To: Richard Henderson; +Cc: QEMU Developers On 1 March 2017 at 19:55, Richard Henderson <rth@twiddle.net> wrote: > This one has been languishing for a few weeks. > > > r~ > > > > The following changes since commit b28f9db1a7ce4d537ce2fae6fbce5e5e37dc265b: > > Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20170228-1' into staging (2017-03-01 17:58:54 +0000) > > are available in the git repository at: > > git://github.com/rth7680/qemu.git tags/pull-tgt-20170302 > > for you to fetch changes up to 3db010c3398d03646d74f2d36a68e62539342e6c: > > target/sparc: Restore ldstub of odd asis (2017-03-02 06:52:43 +1100) > > ---------------------------------------------------------------- > Queued sparc patch > > ---------------------------------------------------------------- > Richard Henderson (1): > target/sparc: Restore ldstub of odd asis > > target/sparc/translate.c | 27 +++++++++++++++++++++++++-- > 1 file changed, 25 insertions(+), 2 deletions(-) Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-03-02 23:15 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-03-01 19:55 [Qemu-devel] [PULL] target/sparc queued patch Richard Henderson 2017-03-01 19:55 ` [Qemu-devel] [PULL] target/sparc: Restore ldstub of odd asis Richard Henderson 2017-03-02 23:14 ` [Qemu-devel] [PULL] target/sparc queued patch Peter Maydell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).