[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH Risu 2/7] risu_ppc64le: fix 32-bit mov immediate
From: |
Jose Ricardo Ziviani |
Subject: |
[Qemu-devel] [PATCH Risu 2/7] risu_ppc64le: fix 32-bit mov immediate |
Date: |
Sat, 4 Feb 2017 00:17:17 -0200 |
Two instructions are necessary but the high value should be written
first, shifted 16 bit left, and then or'ed the lower value. This commit
fixes the problem.
Signed-off-by: Jose Ricardo Ziviani <address@hidden>
---
risugen_ppc64.pm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/risugen_ppc64.pm b/risugen_ppc64.pm
index ca052de..40f3d4f 100644
--- a/risugen_ppc64.pm
+++ b/risugen_ppc64.pm
@@ -61,8 +61,8 @@ sub write_mov_ri32($$)
{
my ($rd, $imm) = @_;
- # li rd,address@hidden
- write_mov_ri16($rd, ($imm >> 16) & 0xffff);
+ # lis rd,address@hidden
+ insn32(0xf << 26 | $rd << 21 | ($imm >> 16));
# ori rd,rd,address@hidden
insn32((0x18 << 26) | ($rd << 21) | ($rd << 16) | ($imm & 0xffff));
}
--
2.7.4
- [Qemu-devel] [PATCH Risu 0/7] Risu PPC improvements, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 3/7] risu_ppc64le: implement sign extend for small neg constants, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 2/7] risu_ppc64le: fix 32-bit mov immediate,
Jose Ricardo Ziviani <=
- [Qemu-devel] [PATCH Risu 1/7] risu_ppc64le: improve xsrqpi[x] and xsrqpxp instructions, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 4/7] risu_ppc64le: implement FP random data for test improvement, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 5/7] risu_ppc64le: stop loading data to register 1 and 13, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 6/7] risu_ppc64le: remove fancy shell character cont from messages, Jose Ricardo Ziviani, 2017/02/03
- [Qemu-devel] [PATCH Risu 7/7] risu_ppc64le: fix minor code style in assembly test code, Jose Ricardo Ziviani, 2017/02/03
- Re: [Qemu-devel] [PATCH Risu 0/7] Risu PPC improvements, Peter Maydell, 2017/02/07