[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH v4 0/6] POWER9 TCG enablements - BCD functions - final
From: |
Jose Ricardo Ziviani |
Subject: |
[Qemu-ppc] [PATCH v4 0/6] POWER9 TCG enablements - BCD functions - final part |
Date: |
Mon, 19 Dec 2016 14:47:38 -0200 |
v4:
- improves functions to behave exactly like the target
v3:
- moves shift functions to host-utils.c and added config_int128 guard
- changes Makefile to always compile host-utils.c
- redesigns bcd[u]trunc to use bitwise operations
- removes "target-ppc: Implement bcd_is_valid function" (merged)
v2:
- bcd[s,sr,us] uses 1 byte for shifting instead of 4 bytes
- left/right functions in host-utils are out of CONFIG_INT128
- fixes overflowing issue in left shift and added a testcase
This serie contains 5 new instructions for POWER9 ISA3.0, left/right shifts for
unsigned quadwords and a small improvement to check whether a bcd value is
valid or not.
bcds.: Decimal signed shift
bcdus.: Decimal unsigned shift
bcdsr.: Decimal shift and round
bcdtrunc.: Decimal signed trucate
bcdutrunc.: Decimal unsigned truncate
Jose Ricardo Ziviani (6):
target-ppc: Implement unsigned quadword left/right shift and unit
tests
target-ppc: Implement bcds. instruction
target-ppc: Implement bcdus. instruction
target-ppc: Implement bcdsr. instruction
target-ppc: Implement bcdtrunc. instruction
target-ppc: Implement bcdutrunc. instruction
include/qemu/host-utils.h | 3 +
target-ppc/helper.h | 5 +
target-ppc/int_helper.c | 217 ++++++++++++++++++++++++++++++++++++
target-ppc/translate/vmx-impl.inc.c | 16 +++
target-ppc/translate/vmx-ops.inc.c | 13 ++-
tests/Makefile.include | 5 +-
tests/test-shift128.c | 98 ++++++++++++++++
util/Makefile.objs | 2 +-
util/host-utils.c | 44 ++++++++
9 files changed, 396 insertions(+), 7 deletions(-)
create mode 100644 tests/test-shift128.c
--
2.7.4
- [Qemu-ppc] [PATCH v4 0/6] POWER9 TCG enablements - BCD functions - final part,
Jose Ricardo Ziviani <=
- [Qemu-ppc] [PATCH v4 1/6] target-ppc: Implement unsigned quadword left/right shift and unit tests, Jose Ricardo Ziviani, 2016/12/19
- [Qemu-ppc] [PATCH v4 2/6] target-ppc: Implement bcds. instruction, Jose Ricardo Ziviani, 2016/12/19
- [Qemu-ppc] [PATCH v4 3/6] target-ppc: Implement bcdus. instruction, Jose Ricardo Ziviani, 2016/12/19
- [Qemu-ppc] [PATCH v4 4/6] target-ppc: Implement bcdsr. instruction, Jose Ricardo Ziviani, 2016/12/19
- [Qemu-ppc] [PATCH v4 5/6] target-ppc: Implement bcdtrunc. instruction, Jose Ricardo Ziviani, 2016/12/19
- [Qemu-ppc] [PATCH v4 6/6] target-ppc: Implement bcdutrunc. instruction, Jose Ricardo Ziviani, 2016/12/19