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:
======================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, 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
http://lrs.linbox.org
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel