aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2010-03-26 05:40:32 +0000
committerDavid S. Miller <davem@gcc.gnu.org>2010-03-25 22:40:32 -0700
commit46bc665fe48da734facffa5729ae487a5a5f3933 (patch)
treee2dc68e9ce4747c4a8b5542ce15f1aa8bf9878af
parent259d831f7ee350afa41d59fc98bb03e9b28465b9 (diff)
downloadgcc-46bc665fe48da734facffa5729ae487a5a5f3933.zip
gcc-46bc665fe48da734facffa5729ae487a5a5f3933.tar.gz
gcc-46bc665fe48da734facffa5729ae487a5a5f3933.tar.bz2
configure.ac: Fix sparc GOTDATA_OP bug check.
* configure.ac: Fix sparc GOTDATA_OP bug check. * configure: Rebuild. From-SVN: r157741
-rw-r--r--gcc/ChangeLog5
-rwxr-xr-xgcc/configure19
-rw-r--r--gcc/configure.ac19
3 files changed, 31 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0dc5a9f..0b2de21 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-03-26 David S. Miller <davem@davemloft.net>
+
+ * configure.ac: Fix sparc GOTDATA_OP bug check.
+ * configure: Rebuild.
+
2010-03-26 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
diff --git a/gcc/configure b/gcc/configure
index f5cb4fe..2e022ed 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -22557,12 +22557,19 @@ bar:
test $ac_status = 0; }; }
then
if test x$gcc_cv_ld != x \
- && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1 \
- && (test x$gnu_ld_flag = xno \
- || (test x$gcc_cv_objdump != x \
- && $gcc_cv_objdump -s -j .text conftest.o 2> /dev/null \
- | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1)); then
- gcc_cv_as_sparc_gotdata_op=yes
+ && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ if $gcc_cv_ld -v | grep GNU >/dev/null 2>&1; then
+ if test x$gcc_cv_objdump != x; then
+ if $gcc_cv_objdump -s -j .text conftest 2> /dev/null \
+ | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1; then
+ gcc_cv_as_sparc_gotdata_op=no
+ else
+ gcc_cv_as_sparc_gotdata_op=yes
+ fi
+ fi
+ else
+ gcc_cv_as_sparc_gotdata_op=yes
+ fi
fi
rm -f conftest
else
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 6eee49b..ac4ca70 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -3000,12 +3000,19 @@ bar:
xor %g1, %gdop_lox10(foo), %g1
ld [[%l7 + %g1]], %g2, %gdop(foo)],
[if test x$gcc_cv_ld != x \
- && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1 \
- && (test x$gnu_ld_flag = xno \
- || (test x$gcc_cv_objdump != x \
- && $gcc_cv_objdump -s -j .text conftest.o 2> /dev/null \
- | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1)); then
- gcc_cv_as_sparc_gotdata_op=yes
+ && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ if $gcc_cv_ld -v | grep GNU >/dev/null 2>&1; then
+ if test x$gcc_cv_objdump != x; then
+ if $gcc_cv_objdump -s -j .text conftest 2> /dev/null \
+ | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1; then
+ gcc_cv_as_sparc_gotdata_op=no
+ else
+ gcc_cv_as_sparc_gotdata_op=yes
+ fi
+ fi
+ else
+ gcc_cv_as_sparc_gotdata_op=yes
+ fi
fi
rm -f conftest],
[AC_DEFINE(HAVE_AS_SPARC_GOTDATA_OP, 1,