[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] QEMU x86_64: bug with floats (with test program)

From: Ludovic Drolez
Subject: [Qemu-devel] QEMU x86_64: bug with floats (with test program)
Date: Thu, 21 Dec 2006 17:52:22 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20060628 Debian/1.7.8-1sarge7.1

Hi !

I've found a bug in Qemu: conversion of floats to strings fails
in some cases. For example, Ganglia (cluster monitoring software), shows
random values and as well as PHP5 programs.

Compile this and link with libapr-1:

#include <stdio.h>
#include <math.h>
#include <apr.h>
#include <apr_strings.h>

void main(void)
    char buf[60];
    double d = M_PI;

    snprintf(buf, 60, "%f\n", d);
    apr_snprintf(buf, 60, "%f\n", d);


Under a SLES 10/64 bits, you'll see something like:

I tested with Qemu 0.8.2 and the CVS, and of course, it works on a real
system (a Dell PE1950).

So it's a QEMU bug. Is it triggered by weird code produced by gcc 4.1.0 ? Or a FPU emulation bug ? Any ideas ?

Ludovic DROLEZ                              Linbox / Free&ALter Soft

reply via email to

[Prev in Thread] Current Thread [Next in Thread]