Hi !

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

Here is a simple test program to confirm that you have the same bug as me
(maybe also under another distribution). Compile this and link with libapr-1:

======================test.c===============
#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);
    printf(buf);
    apr_snprintf(buf, 60, "%f\n", d);
    printf(buf);

}
============================================

Under a SLES 10/64 bits, you'll see something like:
3.141593
3.OjuƧ_

I tested with Qemu 0.8.2 and the CVS, but 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
http://lrs.linbox.org 



_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel

Reply via email to