qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org
Subject: [Qemu-devel] [PULL 39/43] target/hppa: Implement STWA
Date: Sun, 21 Jan 2018 19:42:13 -0800	[thread overview]
Message-ID: <20180122034217.19593-40-richard.henderson@linaro.org> (raw)
In-Reply-To: <20180122034217.19593-1-richard.henderson@linaro.org>

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/hppa/translate.c | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/target/hppa/translate.c b/target/hppa/translate.c
index 8884754f05..74f78ab4e0 100644
--- a/target/hppa/translate.c
+++ b/target/hppa/translate.c
@@ -3097,6 +3097,22 @@ static DisasJumpType trans_ldwa_idx_x(DisasContext *ctx, uint32_t insn,
     ctx->mmu_idx = hold_mmu_idx;
     return ret;
 }
+
+static DisasJumpType trans_stwa_idx_i(DisasContext *ctx, uint32_t insn,
+                                      const DisasInsn *di)
+{
+    int hold_mmu_idx = ctx->mmu_idx;
+    DisasJumpType ret;
+
+    CHECK_MOST_PRIVILEGED(EXCP_PRIV_OPR);
+
+    /* ??? needs fixing for hppa64 -- ldda does not follow the same
+       format wrt the sub-opcode in bits 6:9.  */
+    ctx->mmu_idx = MMU_PHYS_IDX;
+    ret = trans_st_idx_i(ctx, insn, di);
+    ctx->mmu_idx = hold_mmu_idx;
+    return ret;
+}
 #endif
 
 static const DisasInsn table_index_mem[] = {
@@ -3106,8 +3122,9 @@ static const DisasInsn table_index_mem[] = {
     { 0x0c0001c0u, 0xfc0003c0, trans_ldcw },
     { 0x0c001300u, 0xfc0013c0, trans_stby },
 #ifndef CONFIG_USER_ONLY
-    { 0x0c001180u, 0xfc00d3c0, trans_ldwa_idx_i }, /* LDWA, im */
     { 0x0c000180u, 0xfc00d3c0, trans_ldwa_idx_x }, /* LDWA, rx */
+    { 0x0c001180u, 0xfc00d3c0, trans_ldwa_idx_i }, /* LDWA, im */
+    { 0x0c001380u, 0xfc00d3c0, trans_stwa_idx_i }, /* STWA, im */
 #endif
 };
 
-- 
2.14.3

  parent reply	other threads:[~2018-01-22  3:43 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-22  3:41 [Qemu-devel] [PULL 00/43] Add hppa-softmmu Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 01/43] target/hppa: Skeleton support for hppa-softmmu Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 02/43] target/hppa: Define the rest of the PSW Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 03/43] target/hppa: Disable gateway page emulation for system mode Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 04/43] target/hppa: Define hardware exception types Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 05/43] target/hppa: Split address size from register size Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 06/43] target/hppa: Implement mmu_idx from IA privilege level Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 07/43] target/hppa: Implement the system mask instructions Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 08/43] target/hppa: Add space registers Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 09/43] target/hppa: Add control registers Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 10/43] target/hppa: Adjust insn mask for mfctl, w Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 11/43] target/hppa: Implement rfi Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 12/43] target/hppa: Fill in hppa_cpu_do_interrupt/hppa_cpu_exec_interrupt Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 13/43] target/hppa: Implement unaligned access trap Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 14/43] target/hppa: Use space registers in data operations Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 15/43] target/hppa: Avoid privilege level decrease during branches Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 16/43] target/hppa: Implement IASQ Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 17/43] target/hppa: Implement tlb_fill Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 18/43] target/hppa: Implement external interrupts Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 19/43] target/hppa: Implement the interval timer Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 20/43] target/hppa: Log unimplemented instructions Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 21/43] target/hppa: Implement I*TLBA and I*TLBP insns Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 22/43] target/hppa: Implement P*TLB and P*TLBE insns Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 23/43] target/hppa: Implement LDWA Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 24/43] target/hppa: Implement LPA Richard Henderson
2018-01-22  3:41 ` [Qemu-devel] [PULL 25/43] target/hppa: Implement LCI Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 26/43] target/hppa: Implement SYNCDMA insn Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 27/43] target/hppa: Implement halt and reset instructions Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 28/43] target/hppa: Optimize for flat addressing space Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 29/43] target/hppa: Add system registers to gdbstub Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 30/43] target/hppa: Add migration for the cpu Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 31/43] target/hppa: Implement B,GATE insn Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 32/43] target/hppa: Only use EXCP_DTLB_MISS Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 33/43] qom: Add MMU_DEBUG_LOAD Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 34/43] target/hppa: Use MMU_DEBUG_LOAD when reloading for CR[IIR] Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 35/43] target/hppa: Increase number of temp regs Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 36/43] target/hppa: Fix comment Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 37/43] target/hppa: Implement LDSID for system mode Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 38/43] target/hppa: Implement a pause instruction Richard Henderson
2018-01-22  3:42 ` Richard Henderson [this message]
2018-01-22  3:42 ` [Qemu-devel] [PULL 40/43] target/hppa: Enable MTTCG Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 41/43] hw/hppa: Implement DINO system board Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 42/43] pc-bios: Add hppa-firmware.img and git submodule Richard Henderson
2018-01-22  3:42 ` [Qemu-devel] [PULL 43/43] hw/hppa: Add MAINTAINERS entry Richard Henderson
2018-01-22  4:27 ` [Qemu-devel] [PULL 00/43] Add hppa-softmmu no-reply
2018-01-22  4:38 ` no-reply
2018-01-22  4:57 ` no-reply
2018-01-23 10:14 ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180122034217.19593-40-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).