[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stable-8.2.3 091/116] target/sh4: Merge mach and macl into a union
From: |
Michael Tokarev |
Subject: |
[Stable-8.2.3 091/116] target/sh4: Merge mach and macl into a union |
Date: |
Thu, 18 Apr 2024 20:49:21 +0300 |
From: Richard Henderson <richard.henderson@linaro.org>
Allow host access to the entire 64-bit accumulator.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
(cherry picked from commit 7d95db5e78a24d3315e3112d26909a7262355cb7)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
diff --git a/target/sh4/cpu.h b/target/sh4/cpu.h
index 031dc0b457..adce3666a9 100644
--- a/target/sh4/cpu.h
+++ b/target/sh4/cpu.h
@@ -155,12 +155,22 @@ typedef struct CPUArchState {
uint32_t pc; /* program counter */
uint32_t delayed_pc; /* target of delayed branch */
uint32_t delayed_cond; /* condition of delayed branch */
- uint32_t mach; /* multiply and accumulate high */
- uint32_t macl; /* multiply and accumulate low */
uint32_t pr; /* procedure register */
uint32_t fpscr; /* floating point status/control register */
uint32_t fpul; /* floating point communication register */
+ /* multiply and accumulate: high, low and combined. */
+ union {
+ uint64_t mac;
+ struct {
+#if HOST_BIG_ENDIAN
+ uint32_t mach, macl;
+#else
+ uint32_t macl, mach;
+#endif
+ };
+ };
+
/* float point status register */
float_status fp_status;
--
2.39.2
- [Stable-8.2.3 v2 000/116] Patch Round-up for stable 8.2.3, freeze on 2024-04-20, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 088/116] tcg/optimize: Do not attempt to constant fold neg_vec, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 089/116] linux-user: Fix waitid return of siginfo_t and rusage, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 090/116] target/sh4: mac.w: memory accesses are 16-bit words, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 091/116] target/sh4: Merge mach and macl into a union,
Michael Tokarev <=
- [Stable-8.2.3 092/116] target/sh4: Fix mac.l with saturation enabled, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 093/116] target/sh4: Fix mac.w with saturation enabled, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 094/116] target/sh4: add missing CHECK_NOT_DELAY_SLOT, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 095/116] target/m68k: Map FPU exceptions to FPSR register, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 096/116] hw/virtio: Introduce virtio_bh_new_guarded() helper, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 097/116] hw/display/virtio-gpu: Protect from DMA re-entrancy bugs, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 098/116] hw/char/virtio-serial-bus: Protect from DMA re-entrancy bugs, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 100/116] qemu-options: Fix CXL Fixed Memory Window interleave-granularity typo, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 099/116] hw/virtio/virtio-crypto: Protect from DMA re-entrancy bugs, Michael Tokarev, 2024/04/18
- [Stable-8.2.3 101/116] hw/block/nand: Factor nand_load_iolen() method out, Michael Tokarev, 2024/04/18