From ae55cba281bb37390335f5ad1e5f0f02820a75f8 Mon Sep 17 00:00:00 2001 From: Tony Gutierrez Date: Sat, 19 Nov 2016 12:35:14 -0500 Subject: [PATCH] x86: fix loading/storing of Float80 types --- src/arch/x86/utility.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/arch/x86/utility.cc b/src/arch/x86/utility.cc index cf3072348..eb0247d7f 100644 --- a/src/arch/x86/utility.cc +++ b/src/arch/x86/utility.cc @@ -354,17 +354,17 @@ genX87Tags(uint16_t ftw, uint8_t top, int8_t spm) double loadFloat80(const void *_mem) { - const fp80_t *fp80((const fp80_t *)_mem); + fp80_t fp80; + memcpy(fp80.bits, _mem, 10); - return fp80_cvtd(*fp80); + return fp80_cvtd(fp80); } void storeFloat80(void *_mem, double value) { - fp80_t *fp80((fp80_t *)_mem); - - *fp80 = fp80_cvfd(value); + fp80_t fp80 = fp80_cvfd(value); + memcpy(_mem, fp80.bits, 10); } } // namespace X86_ISA