[U-Boot] [PATCH] powerpc: Fix FPU post related link warnings
Kumar Gala
galak at kernel.crashing.org
Tue Jan 25 10:00:08 CET 2011
If we built POST on PPC's that didn't enable CONFIG_SYS_POST_FPU we'd
get the following warning with newer toolchains:
powerpc-linux-gnu-ld: Warning: lib_powerpc/fpu/libpostpowerpcfpu.o
uses hard float, libpost.o uses soft float
We actually worked around this sometime ago with the following commit:
commit ce82ff05388b5ddafdf6082ef0776cce72c40b1c
Author: Yuri Tikhonov <yur at emcraft.com>
Date: Sat Dec 20 14:54:21 2008 +0300
FPU POST: fix warnings when building with 2.18 binutils
However, this only took into effect if CONFIG_SYS_POST_FPU was enabled.
We can simply move the GNU_FPOST_ATTR out of the CONFIG_SYS_POST_FPU
ifdef block to address the issue.
Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
---
Wolfgang, I request we think about include this patch in v2011.03 tree so we
can all stop getting these build warnings :)
- k
post/lib_powerpc/fpu/20001122-1.c | 4 ++--
post/lib_powerpc/fpu/20010114-2.c | 4 ++--
post/lib_powerpc/fpu/20010226-1.c | 4 ++--
post/lib_powerpc/fpu/980619-1.c | 4 ++--
post/lib_powerpc/fpu/acc1.c | 4 ++--
post/lib_powerpc/fpu/compare-fp-1.c | 4 ++--
post/lib_powerpc/fpu/fpu.c | 4 ++--
post/lib_powerpc/fpu/mul-subnormal-single-1.c | 4 ++--
8 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/post/lib_powerpc/fpu/20001122-1.c b/post/lib_powerpc/fpu/20001122-1.c
index bef80c5..4af300d 100644
--- a/post/lib_powerpc/fpu/20001122-1.c
+++ b/post/lib_powerpc/fpu/20001122-1.c
@@ -28,10 +28,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
int fpu_post_test_math1 (void)
{
volatile double a, *p;
diff --git a/post/lib_powerpc/fpu/20010114-2.c b/post/lib_powerpc/fpu/20010114-2.c
index ee564e8..dab4d7e 100644
--- a/post/lib_powerpc/fpu/20010114-2.c
+++ b/post/lib_powerpc/fpu/20010114-2.c
@@ -28,10 +28,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
static float rintf (float x)
{
volatile float TWO23 = 8388608.0;
diff --git a/post/lib_powerpc/fpu/20010226-1.c b/post/lib_powerpc/fpu/20010226-1.c
index 099ca4a..c644bc9 100644
--- a/post/lib_powerpc/fpu/20010226-1.c
+++ b/post/lib_powerpc/fpu/20010226-1.c
@@ -28,10 +28,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
int fpu_post_test_math3 (void)
{
volatile long double dfrom = 1.1;
diff --git a/post/lib_powerpc/fpu/980619-1.c b/post/lib_powerpc/fpu/980619-1.c
index 46a31ae..0c195c1 100644
--- a/post/lib_powerpc/fpu/980619-1.c
+++ b/post/lib_powerpc/fpu/980619-1.c
@@ -28,10 +28,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
int fpu_post_test_math4 (void)
{
volatile float reale = 1.0f;
diff --git a/post/lib_powerpc/fpu/acc1.c b/post/lib_powerpc/fpu/acc1.c
index 9fca9b3..4dc1362 100644
--- a/post/lib_powerpc/fpu/acc1.c
+++ b/post/lib_powerpc/fpu/acc1.c
@@ -28,10 +28,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
static double func (const double *array)
{
double d = *array;
diff --git a/post/lib_powerpc/fpu/compare-fp-1.c b/post/lib_powerpc/fpu/compare-fp-1.c
index f836b29..a0859f8 100644
--- a/post/lib_powerpc/fpu/compare-fp-1.c
+++ b/post/lib_powerpc/fpu/compare-fp-1.c
@@ -30,10 +30,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
static int failed;
#define TEST(c) if ((c) != ok) failed++
diff --git a/post/lib_powerpc/fpu/fpu.c b/post/lib_powerpc/fpu/fpu.c
index 3f3adea..a4369f1 100644
--- a/post/lib_powerpc/fpu/fpu.c
+++ b/post/lib_powerpc/fpu/fpu.c
@@ -36,12 +36,12 @@
#include <post.h>
+GNU_FPOST_ATTR
+
#if CONFIG_POST & CONFIG_SYS_POST_FPU
#include <watchdog.h>
-GNU_FPOST_ATTR
-
extern int fpu_status (void);
extern void fpu_enable (void);
extern void fpu_disable (void);
diff --git a/post/lib_powerpc/fpu/mul-subnormal-single-1.c b/post/lib_powerpc/fpu/mul-subnormal-single-1.c
index 1f3732d..23a3f30 100644
--- a/post/lib_powerpc/fpu/mul-subnormal-single-1.c
+++ b/post/lib_powerpc/fpu/mul-subnormal-single-1.c
@@ -30,10 +30,10 @@
#include <post.h>
-#if CONFIG_POST & CONFIG_SYS_POST_FPU
-
GNU_FPOST_ATTR
+#if CONFIG_POST & CONFIG_SYS_POST_FPU
+
union uf
{
unsigned int u;
--
1.7.2.3
More information about the U-Boot
mailing list