Hi,
Le 9 mai 10 à 15:42, Martin Guy a écrit :
A quick grep in the source turns up
play/unix/fpuset.c:332
#elif defined(FPU_GCC_ARM)
void
u_fpu_setup(int when)
{
if (when <= 0) {
unsigned int fpucw = 0x70200;
__asm__ ("wfs %0" : : "r" (fpucw));
/* includes bit to trap on signalling NaN (may affect libm
behavior) */
}
}
[...]
where "wfs" is an old FPA instruction. Unfortunately, the
play/unix/config.sh chooses a GCC_FPU_* macro by testing whether this
file compiles, not whether it runs.
From the build log, FPU_GCC_FENV is selected, not FPU_GCC_ARM. I
believe it is really fpeenableexcept() from fenv.h that fails, I guess
that means a bug in either GCC or the kernel, right?
The "easy" way out is to build with "FPU_IGNORE" so yorick won't try
catching FPE's at all (I'll try that by tomorrow). This way it will
run on all machines, but with the drawback that it will die upon FPE's
instead of entering debug mode. I'm not sure whether this is better
than the current situation, where yorick runs well on most machines
and not at all on other machines.
Regards, Thibaut.
--
To UNSUBSCRIBE, email to debian-arm-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/38e3b115-4513-42e8-b909-53d0cac7d...@free.fr