[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 48/88] target/hppa: Decode ADDB double-word
From: |
Richard Henderson |
Subject: |
[PATCH v3 48/88] target/hppa: Decode ADDB double-word |
Date: |
Wed, 1 Nov 2023 18:29:36 -0700 |
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/hppa/translate.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/target/hppa/translate.c b/target/hppa/translate.c
index 7f767fea64..1b4fa401ba 100644
--- a/target/hppa/translate.c
+++ b/target/hppa/translate.c
@@ -3143,6 +3143,17 @@ static bool do_addb(DisasContext *ctx, unsigned r,
TCGv_reg in1,
DisasCond cond;
bool d = false;
+ /*
+ * For hppa64, the ADDB conditions change with PSW.W,
+ * dropping ZNV, SV, OD in favor of double-word EQ, LT, LE.
+ */
+ if (ctx->tb_flags & PSW_W) {
+ d = c >= 5;
+ if (d) {
+ c &= 3;
+ }
+ }
+
in2 = load_gpr(ctx, r);
dest = tcg_temp_new();
sv = NULL;
--
2.34.1
- [PATCH v3 78/88] target/hppa: Avoid async_safe_run_on_cpu on uniprocessor system, (continued)
- [PATCH v3 78/88] target/hppa: Avoid async_safe_run_on_cpu on uniprocessor system, Richard Henderson, 2023/11/01
- [PATCH v3 74/88] hw/hppa: Translate phys addresses for the cpu, Richard Henderson, 2023/11/01
- [PATCH v3 70/88] target/hppa: Fix interruption based on default PSW, Richard Henderson, 2023/11/01
- [PATCH v3 56/88] hw/hppa: Use uint32_t instead of target_ureg, Richard Henderson, 2023/11/01
- [PATCH v3 58/88] target/hppa: Remove most of the TARGET_REGISTER_BITS redirections, Richard Henderson, 2023/11/01
- [PATCH v3 72/88] target/hppa: Return zero for r0 from load_gpr, Richard Henderson, 2023/11/01
- [PATCH v3 79/88] target/hppa: Clear upper bits in mtctl for pa1.x, Richard Henderson, 2023/11/01
- [PATCH v3 66/88] target/hppa: Implement HSHL, HSHR, Richard Henderson, 2023/11/01
- [PATCH v3 76/88] target/hppa: Implement pa2.0 data prefetch instructions, Richard Henderson, 2023/11/01
- [PATCH v3 63/88] target/hppa: Implement HADD, Richard Henderson, 2023/11/01
- [PATCH v3 48/88] target/hppa: Decode ADDB double-word,
Richard Henderson <=
- [PATCH v3 47/88] target/hppa: Decode CMPIB double-word, Richard Henderson, 2023/11/01
- [PATCH v3 68/88] target/hppa: Implement MIXH, MIXW, Richard Henderson, 2023/11/01
- [PATCH v3 80/88] target/hppa: Add unwind_breg to CPUHPPAState, Richard Henderson, 2023/11/01
- [PATCH v3 82/88] target/hppa: Update IIAOQ, IIASQ for pa2.0, Richard Henderson, 2023/11/01
- [PATCH v3 83/88] target/hppa: Improve interrupt logging, Richard Henderson, 2023/11/01
- [PATCH v3 81/88] target/hppa: Create raise_exception_with_ior, Richard Henderson, 2023/11/01
- [PATCH v3 85/88] hw/pci-host/astro: Trigger CPU irq on CPU HPA in high memory, Richard Henderson, 2023/11/01
- [PATCH v3 84/88] hw/pci-host/astro: Map Astro chip into 64-bit I/O memory region, Richard Henderson, 2023/11/01
- [PATCH v3 86/88] hw/hppa: Turn on 64-bit CPU for C3700 machine, Richard Henderson, 2023/11/01
- [PATCH v3 87/88] hw/hppa: Allow C3700 with 64-bit and B160L with 32-bit CPU only, Richard Henderson, 2023/11/01