summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/powerpc/setjmp.S
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-07-03 10:40:18 +0000
committerEric Andersen <andersen@codepoet.org>2003-07-03 10:40:18 +0000
commit8fee4bc681fcf020756abeed973e68ee01a316b3 (patch)
tree70343a7d97746cffc0aa7c7fb5dc9a30132ab61e /libc/sysdeps/linux/powerpc/setjmp.S
parent08601aa5499c91be82693046a26d3a64ebce7350 (diff)
As noted by Felix Radensky back on 16 Mar:
I've tried several times to compile uClibc with soft-float (both gcc-3.2.2 toolchain and wrapper), but applications compiled with uClibc always failed with "Invalid instruction". So I ended up disabling floating point at all and this works well. I also has no problem with glibc from Monta Vista, which is compiled with soft-float. My processor is PowerPC 405GP. Maybe the problem is in FP() macro definition in libc/sysdeps/linux/powerpc/setjmp.S and libc/sysdeps/linux/powerpc/__longjmp.S #ifdef __UCLIBC_HAS_FLOATS__ #define FP(x...) x #else #define FP(x...) #endif which should be defined as if defined __UCLIBC_HAS_FLOATS__ && ! defined __UCLIBC_HAS_SOFT_FLOAT__ #define FP(x...) x #else #define FP(x...) #endif
Diffstat (limited to 'libc/sysdeps/linux/powerpc/setjmp.S')
-rw-r--r--libc/sysdeps/linux/powerpc/setjmp.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/libc/sysdeps/linux/powerpc/setjmp.S b/libc/sysdeps/linux/powerpc/setjmp.S
index 84c287f95..e47f3666a 100644
--- a/libc/sysdeps/linux/powerpc/setjmp.S
+++ b/libc/sysdeps/linux/powerpc/setjmp.S
@@ -23,7 +23,7 @@
#define _SETJMP_H
#include <bits/setjmp.h>
-#ifdef __UCLIBC_HAS_FLOATS__
+#ifdef __UCLIBC_HAS_FLOATS__ && ! defined __UCLIBC_HAS_SOFT_FLOAT__
#define FP(x...) x
#else
#define FP(x...)