]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
configure.ac (HAVE_GAS_LITERAL16): Add autoconf check for .literal16.
authorMike Stump <mrs@apple.com>
Mon, 1 Jan 2007 20:58:38 +0000 (20:58 +0000)
committerMike Stump <mrs@gcc.gnu.org>
Mon, 1 Jan 2007 20:58:38 +0000 (20:58 +0000)
* configure.ac (HAVE_GAS_LITERAL16): Add autoconf check for
.literal16.
* config/darwin.c (machopic_select_rtx_section): Use
HAVE_GAS_LITERAL16.
(darwin_mergeable_constant_section): Likewise.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r120315

gcc/ChangeLog
gcc/config.in
gcc/config/darwin.c
gcc/configure
gcc/configure.ac

index e4bf33d29782fad1154a0d86217bdc4e75c30744..fa68d1c0c24263826b84360b89c85cc4b47e9b50 100644 (file)
@@ -1,5 +1,16 @@
+2007-01-01  Mike Stump  <mrs@apple.com>
+
+       * configure.ac (HAVE_GAS_LITERAL16): Add autoconf check for
+       .literal16.
+       * config/darwin.c (machopic_select_rtx_section): Use
+       HAVE_GAS_LITERAL16.
+       (darwin_mergeable_constant_section): Likewise.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
 2007-01-01  Jan Hubicka  <jh@suse.cz>
            Andrew Pinski  <pinskia@gmail.com>
 
        * cgraphunit.c (cgraph_optimize): Call cgraph_add_new_functions
        before starting IPA passes.
+
index a8e18bc3bb762ea59c6abd1d56ff3a3a0e0d8e8e..e1a530a12e4d4505ee293aa2eb6a5314b94f3898 100644 (file)
 /* Define if your assembler and linker support .hidden. */
 #undef HAVE_GAS_HIDDEN
 
+/* Define if your assembler supports .literal16. */
+#ifndef USED_FOR_TARGET
+#undef HAVE_GAS_LITERAL16
+#endif
+
+
 /* Define if your assembler supports specifying the maximum number of bytes to
    skip when using the GAS .p2align command. */
 #ifndef USED_FOR_TARGET
index 385b89269c0e6ae6383acaee76d8024fe9e08723..1c7747cc04ce5be983cd5720b55ae1b501b57084 100644 (file)
@@ -1131,6 +1131,10 @@ darwin_mergeable_string_section (tree exp,
   return readonly_data_section;
 }
 
+#ifndef HAVE_GAS_LITERAL16
+#define HAVE_GAS_LITERAL16 0
+#endif
+
 static section *
 darwin_mergeable_constant_section (tree exp,
                                   unsigned HOST_WIDE_INT align)
@@ -1156,7 +1160,8 @@ darwin_mergeable_constant_section (tree exp,
               && TREE_INT_CST_LOW (size) == 8
               && TREE_INT_CST_HIGH (size) == 0)
         return darwin_sections[literal8_section];
-      else if (TARGET_64BIT
+      else if (HAVE_GAS_LITERAL16
+              && TARGET_64BIT
                && TREE_CODE (size) == INTEGER_CST
                && TREE_INT_CST_LOW (size) == 16
                && TREE_INT_CST_HIGH (size) == 0)
@@ -1321,7 +1326,8 @@ machopic_select_rtx_section (enum machine_mode mode, rtx x,
           && (GET_CODE (x) == CONST_INT
               || GET_CODE (x) == CONST_DOUBLE))
     return darwin_sections[literal4_section];
-  else if (TARGET_64BIT
+  else if (HAVE_GAS_LITERAL16
+          && TARGET_64BIT
           && GET_MODE_SIZE (mode) == 16
           && (GET_CODE (x) == CONST_INT
               || GET_CODE (x) == CONST_DOUBLE
index 09fc0aa6108eee38ad04bae833b7ea0457b60c73..3aaf361cf40ea19576c83245fe738c48dcbf6462 100755 (executable)
@@ -13737,6 +13737,43 @@ _ACEOF
 
 fi
 
+echo "$as_me:$LINENO: checking assembler for .literal16" >&5
+echo $ECHO_N "checking assembler for .literal16... $ECHO_C" >&6
+if test "${gcc_cv_as_literal16+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  gcc_cv_as_literal16=no
+    if test $in_tree_gas = yes; then
+    if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 8 \) \* 1000 + 0`
+  then gcc_cv_as_literal16=yes
+fi
+  elif test x$gcc_cv_as != x; then
+    echo '.literal16' > conftest.s
+    if { ac_try='$gcc_cv_as  -o conftest.o conftest.s >&5'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }
+    then
+       gcc_cv_as_literal16=yes
+    else
+      echo "configure: failed program was" >&5
+      cat conftest.s >&5
+    fi
+    rm -f conftest.o conftest.s
+  fi
+fi
+echo "$as_me:$LINENO: result: $gcc_cv_as_literal16" >&5
+echo "${ECHO_T}$gcc_cv_as_literal16" >&6
+if test $gcc_cv_as_literal16 = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GAS_LITERAL16 1
+_ACEOF
+
+fi
+
 echo "$as_me:$LINENO: checking assembler for working .subsection -1" >&5
 echo $ECHO_N "checking assembler for working .subsection -1... $ECHO_C" >&6
 if test "${gcc_cv_as_subsection_m1+set}" = set; then
index 706735ee95d9773463eac45a88e6742c36e61184..a0832bf5125d9fe4e51aec5d25330b3528eca992 100644 (file)
@@ -2051,6 +2051,12 @@ gcc_GAS_CHECK_FEATURE([.p2align with maximum skip], gcc_cv_as_max_skip_p2align,
   [Define if your assembler supports specifying the maximum number
    of bytes to skip when using the GAS .p2align command.])])
 
+gcc_GAS_CHECK_FEATURE([.literal16], gcc_cv_as_literal16,
+ [2,8,0],,
+ [.literal16],,
+[AC_DEFINE(HAVE_GAS_LITERAL16, 1,
+  [Define if your assembler supports .literal16.])])
+
 gcc_GAS_CHECK_FEATURE([working .subsection -1], gcc_cv_as_subsection_m1,
  [elf,2,9,0],,
  [conftest_label1: .word 0