target-i386/FPU: a misprint in helper_fistll_ST0
authorDmitry Poletaev <poletaev-qemu@yandex.ru>
Wed, 8 Jul 2015 09:48:40 +0000 (12:48 +0300)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 24 Jul 2015 11:57:45 +0000 (13:57 +0200)
There is a cut-and-paste mistake in the patch
https://lists.gnu.org/archive/html/qemu-devel/2014-11/msg01657.html .
It cause errors in guest work.  Here is the bugfix.

Signed-off-by: Dmitry Poletaev <poletaev-qemu@yandex.ru>
Reported-by: Kirill Batuzov <batuzovk@ispras.ru>
Message-Id: <2692911436348920@web2m.yandex.ru>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target-i386/fpu_helper.c

index 280adba..1f954e0 100644 (file)
@@ -272,7 +272,7 @@ int64_t helper_fistll_ST0(CPUX86State *env)
     old_exp_flags = get_float_exception_flags(&env->fp_status);
     set_float_exception_flags(0, &env->fp_status);
 
-    val = floatx80_to_int32(ST0, &env->fp_status);
+    val = floatx80_to_int64(ST0, &env->fp_status);
     if (get_float_exception_flags(&env->fp_status) & float_flag_invalid) {
         val = 0x8000000000000000ULL;
     }