From 088fd851a3ece21768035b92a897e046cff63717 Mon Sep 17 00:00:00 2001
From: rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed, 4 Apr 2001 02:06:24 +0000
Subject: [PATCH]         * configure.in (gcc_cv_as_leb128): Reject gas before
 2.11.         * configure: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41073 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog    |  5 +++++
 gcc/configure    | 37 +++++++++++++++++++++++--------------
 gcc/configure.in | 23 +++++++++++++++++------
 3 files changed, 45 insertions(+), 20 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a5a4673a78ae..61eafd1693a2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2001-04-03  Richard Henderson  <rth@redhat.com>
+
+	* configure.in (gcc_cv_as_leb128): Reject gas before 2.11.
+	* configure: Rebuild.
+
 2001-04-03  Richard Henderson  <rth@redhat.com>
 
 	* rtl.h (LCT_THROW): New.
diff --git a/gcc/configure b/gcc/configure
index e254a0fa086b..d89c0e3c529c 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -2018,7 +2018,7 @@ EOF
 fi
 
 # Find some useful tools
-for ac_prog in mawk gawk nawk awk
+for ac_prog in gawk mawk nawk awk
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
@@ -6543,12 +6543,21 @@ L1:
 L2:
 EOF
 	if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
-		# GAS versions numbered 2.10.90 do not support uleb128, despite
-		# appearing to.
-		if $gcc_cv_as --version | fgrep 2.10.90 > /dev/null; then
-			:
-		else
-			gcc_cv_as_leb128="yes"
+		gcc_cv_as_leb128="yes"
+
+		# GAS versions before 2.11 do not support uleb128,
+		# despite appearing to.
+		# ??? There exists an elf-specific test that will crash
+		# the assembler.  Perhaps it's better to figure out whether
+		# arbitrary sections are supported and try the test.
+		as_ver=`$gcc_cv_as --version 2>/dev/null | head -1`
+		if echo "$as_ver" | grep GNU > /dev/null; then
+			as_ver=`echo $as_ver | sed -e 's/.* //'`
+			as_major=`echo $as_ver | sed 's/\..*//'`
+			as_minor=`echo $as_ver | sed 's/[^.]*.\([^.]*\).*/\1/'`
+			if test $as_major -eq 2 -a $as_minor -lt 11; then
+				gcc_cv_as_leb128="no"
+			fi
 		fi
 	fi
 	rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
@@ -6564,7 +6573,7 @@ echo "$ac_t""$gcc_cv_as_leb128" 1>&6
 case "$target" in 
   sparc*-*-*)
     echo $ac_n "checking assembler .register pseudo-op support""... $ac_c" 1>&6
-echo "configure:6568: checking assembler .register pseudo-op support" >&5
+echo "configure:6577: checking assembler .register pseudo-op support" >&5
 if eval "test \"`echo '$''{'gcc_cv_as_register_pseudo_op'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6592,7 +6601,7 @@ EOF
     fi
 
     echo $ac_n "checking assembler supports -relax""... $ac_c" 1>&6
-echo "configure:6596: checking assembler supports -relax" >&5
+echo "configure:6605: checking assembler supports -relax" >&5
 if eval "test \"`echo '$''{'gcc_cv_as_relax_opt'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6622,7 +6631,7 @@ EOF
     case "$tm_file" in
     *64*)
 	echo $ac_n "checking for 64 bit support in assembler ($gcc_cv_as)""... $ac_c" 1>&6
-echo "configure:6626: checking for 64 bit support in assembler ($gcc_cv_as)" >&5
+echo "configure:6635: checking for 64 bit support in assembler ($gcc_cv_as)" >&5
 if eval "test \"`echo '$''{'gcc_cv_as_flags64'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6667,7 +6676,7 @@ EOF
 
     if test "x$gcc_cv_as_flags64" != xno; then
 	echo $ac_n "checking for assembler offsetable %lo() support""... $ac_c" 1>&6
-echo "configure:6671: checking for assembler offsetable %lo() support" >&5
+echo "configure:6680: checking for assembler offsetable %lo() support" >&5
 if eval "test \"`echo '$''{'gcc_cv_as_offsetable_lo10'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6706,7 +6715,7 @@ EOF
 
   i[34567]86-*-*)
     echo $ac_n "checking assembler instructions""... $ac_c" 1>&6
-echo "configure:6710: checking assembler instructions" >&5
+echo "configure:6719: checking assembler instructions" >&5
     gcc_cv_as_instructions=
     if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
       if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2; then
@@ -6735,7 +6744,7 @@ EOF
 esac
 
 echo $ac_n "checking assembler dwarf2 debug_line support""... $ac_c" 1>&6
-echo "configure:6739: checking assembler dwarf2 debug_line support" >&5
+echo "configure:6748: checking assembler dwarf2 debug_line support" >&5
 gcc_cv_as_dwarf2_debug_line=no
 # ??? Not all targets support dwarf2 debug_line, even within a version
 # of gas.  Moreover, we need to emit a valid instruction to trigger any
@@ -6925,7 +6934,7 @@ EOF
 
 
 echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:6929: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:6938: checking whether to enable maintainer-specific portions of Makefiles" >&5
     # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
 if test "${enable_maintainer_mode+set}" = set; then
   enableval="$enable_maintainer_mode"
diff --git a/gcc/configure.in b/gcc/configure.in
index 57e478d820d9..fbde2e6e556d 100644
--- a/gcc/configure.in
+++ b/gcc/configure.in
@@ -1325,12 +1325,23 @@ L1:
 L2:
 EOF
 	if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
-		# GAS versions numbered 2.10.90 do not support uleb128, despite
-		# appearing to.
-		if $gcc_cv_as --version | fgrep 2.10.90 > /dev/null; then
-			:
-		else
-			gcc_cv_as_leb128="yes"
+		gcc_cv_as_leb128="yes"
+
+		# GAS versions before 2.11 do not support uleb128,
+		# despite appearing to.
+		# ??? There exists an elf-specific test that will crash
+		# the assembler.  Perhaps it's better to figure out whether
+		# arbitrary sections are supported and try the test.
+		as_ver=`$gcc_cv_as --version 2>/dev/null | head -1`
+		if echo "$as_ver" | grep GNU > /dev/null; then
+			as_ver=`echo $as_ver | sed -e 's/.* //'`
+			as_major=`echo $as_ver | sed 's/\..*//'`
+changequote(,)dnl
+			as_minor=`echo $as_ver | sed 's/[^.]*.\([^.]*\).*/\1/'`
+changequote([,])dnl
+			if test $as_major -eq 2 -a $as_minor -lt 11; then
+				gcc_cv_as_leb128="no"
+			fi
 		fi
 	fi
 	rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
-- 
GitLab