[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 055/107] target-ppc: Use correct precision for FPRF s
From: |
David Gibson |
Subject: |
[Qemu-devel] [PULL 055/107] target-ppc: Use correct precision for FPRF setting |
Date: |
Thu, 2 Feb 2017 16:13:53 +1100 |
From: Bharata B Rao <address@hidden>
Use correct FP precision when setting FPRF in FP conversion helpers
instead of always assuming float64 precision.
Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: Nikunj A Dadhania <address@hidden>
Signed-off-by: David Gibson <address@hidden>
---
target/ppc/fpu_helper.c | 4 ++--
target/ppc/internal.h | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c
index f4103f5..01b335f 100644
--- a/target/ppc/fpu_helper.c
+++ b/target/ppc/fpu_helper.c
@@ -109,6 +109,7 @@ void helper_compute_fprf_##tp(CPUPPCState *env, tp arg)
\
}
COMPUTE_FPRF(float16)
+COMPUTE_FPRF(float32)
COMPUTE_FPRF(float64)
/* Floating-point invalid operations exception */
@@ -2652,8 +2653,7 @@ void helper_##op(CPUPPCState *env, uint32_t opcode)
\
xt.tfld = ttp##_snan_to_qnan(xt.tfld); \
} \
if (sfprf) { \
- helper_compute_fprf_float64(env, ttp##_to_float64(xt.tfld, \
- &env->fp_status)); \
+ helper_compute_fprf_##ttp(env, xt.tfld); \
} \
} \
\
diff --git a/target/ppc/internal.h b/target/ppc/internal.h
index 1e27209..187f024 100644
--- a/target/ppc/internal.h
+++ b/target/ppc/internal.h
@@ -244,4 +244,5 @@ static inline void putVSR(int n, ppc_vsr_t *vsr,
CPUPPCState *env)
}
void helper_compute_fprf_float16(CPUPPCState *env, float16 arg);
+void helper_compute_fprf_float32(CPUPPCState *env, float32 arg);
#endif /* PPC_INTERNAL_H */
--
2.9.3
- [Qemu-devel] [PULL 049/107] prep: add IBM RS/6000 7020 (40p) memory controller, (continued)
- [Qemu-devel] [PULL 049/107] prep: add IBM RS/6000 7020 (40p) memory controller, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 054/107] target-ppc: Add xscvdphp, xscvhpdp, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 061/107] pseries: Rewrite CAS PVR compatibility logic, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 067/107] ppc: Fix a warning in bcdcfz code and improve BCD_DIG_BYTE macro, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 031/107] hw/ppc/spapr: Fix boot path of usb-host storage devices, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 032/107] prep: do not use global variable to access nvram, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 039/107] libqos: fix spapr qpci_map(), David Gibson, 2017/02/02
- [Qemu-devel] [PULL 051/107] target-ppc: Use float64 arg in helper_compute_fprf(), David Gibson, 2017/02/02
- [Qemu-devel] [PULL 046/107] target-ppc: Add xxextractuw instruction, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 057/107] target-ppc: Add xsxexpqp instruction, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 055/107] target-ppc: Use correct precision for FPRF setting,
David Gibson <=
- [Qemu-devel] [PULL 040/107] qtest: convert ivshmem-test to use libqos, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 048/107] prep: add PReP System I/O, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 096/107] target/ppc: Remove unused POWERPC_FAMILY(POWER), David Gibson, 2017/02/02
- [Qemu-devel] [PULL 078/107] target-ppc: Add xviexpdp instruction, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 090/107] target-ppc: Add xsmulqp instruction, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 069/107] softfloat: Fix the default qNAN for target-ppc, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 087/107] target-ppc: Use ppc_vsr_t.f128 in xscmp[o, u, exp]qp, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 071/107] host-utils: Implement unsigned quadword left/right shift and unit tests, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 059/107] target-ppc: Add xsxsigqp instructions, David Gibson, 2017/02/02
- [Qemu-devel] [PULL 050/107] prep: add IBM RS/6000 7020 (40p) machine emulation, David Gibson, 2017/02/02