]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
darwin.c (darwin_binds_local_p): New.
authorDale Johannesen <dalej@apple.com>
Thu, 9 Jun 2005 03:53:24 +0000 (03:53 +0000)
committerDale Johannesen <dalej@gcc.gnu.org>
Thu, 9 Jun 2005 03:53:24 +0000 (03:53 +0000)
2005-06-08  Dale Johannesen  <dalej@apple.com>

        * config/darwin.c (darwin_binds_local_p):  New.
        * config/darwin-protos.h (darwin_binds_local_p):  Declare it.
        * config/i386/i386.c (TARGET_BINDS_LOCAL_P):  Use it for TARGET_MACHO.
        * config/rs6000/rs6000.c (rs6000_binds_local_p):  Remove.
        (TARGET_BINDS_LOCAL_P):  Change it to darwin_binds_local_p.

From-SVN: r100792

gcc/ChangeLog
gcc/config/darwin-protos.h
gcc/config/darwin.c
gcc/config/i386/i386.c
gcc/config/rs6000/rs6000.c

index 65dede066821fcfbd159738254d751b5855a883d..2ae99ce39b17032b6ef266b26f1f6d3fc8920ed3 100644 (file)
@@ -1,3 +1,11 @@
+2005-06-08  Dale Johannesen  <dalej@apple.com>
+
+        * config/darwin.c (darwin_binds_local_p):  New.
+        * config/darwin-protos.h (darwin_binds_local_p):  Declare it.
+        * config/i386/i386.c (TARGET_BINDS_LOCAL_P):  Use it for TARGET_MACHO.
+        * config/rs6000/rs6000.c (rs6000_binds_local_p):  Remove.
+        (TARGET_BINDS_LOCAL_P):  Change it to darwin_binds_local_p.
+
 2005-06-08  Aldy Hernandez  <aldyh@redhat.com>
 
         * config/rs6000/rs6000.h: Remove rs6000_long_double_size_string,
index 43ea4cd3363196420e7a5241bbb915f2de2a2df8..9154e5608d2f52f961dcf528fc2665189415714d 100644 (file)
@@ -134,3 +134,4 @@ extern void darwin_globalize_label (FILE *, const char *);
 extern void darwin_assemble_visibility (tree, int);
 extern void darwin_asm_output_dwarf_delta (FILE *, int, const char *,
                                           const char *);
+extern bool darwin_binds_local_p (tree);
index c82c77b00473705e4a79427d8827c2f02b897c3b..f71c612677e38f494780cb7f0b10cbe24f9b69b5 100644 (file)
@@ -1381,4 +1381,13 @@ darwin_file_end (void)
   fprintf (asm_out_file, "\t.subsections_via_symbols\n");
 }
 
+/* Cross-module name binding.  Darwin does not support overriding
+   functions at dynamic-link time.  */
+
+bool
+darwin_binds_local_p (tree decl)
+{
+  return default_binds_local_p_1 (decl, 0);
+}
+
 #include "gt-darwin.h"
index 80170f90de87f6e315dd23ea0a9615aa3fedb2ec..0ff50ec9f4b12376951dfc83c011ff220539a9b5 100644 (file)
@@ -1009,6 +1009,11 @@ static void init_ext_80387_constants (void);
 #undef TARGET_MS_BITFIELD_LAYOUT_P
 #define TARGET_MS_BITFIELD_LAYOUT_P ix86_ms_bitfield_layout_p
 
+#if TARGET_MACHO
+#undef TARGET_BINDS_LOCAL_P
+#define TARGET_BINDS_LOCAL_P darwin_binds_local_p
+#endif
+
 #undef TARGET_ASM_OUTPUT_MI_THUNK
 #define TARGET_ASM_OUTPUT_MI_THUNK x86_output_mi_thunk
 #undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
index 7bee8c0eb3c5c28d9e8a82f84d7de3c49502e78c..8d80e7c386318e76f321a77d16e473765126d752 100644 (file)
@@ -616,9 +616,6 @@ static unsigned int rs6000_xcoff_section_type_flags (tree, const char *, int);
 static void rs6000_xcoff_file_start (void);
 static void rs6000_xcoff_file_end (void);
 #endif
-#if TARGET_MACHO
-static bool rs6000_binds_local_p (tree);
-#endif
 static int rs6000_variable_issue (FILE *, int, rtx, int);
 static bool rs6000_rtx_costs (rtx, int, int, int *);
 static int rs6000_adjust_cost (rtx, rtx, rtx, int);
@@ -897,7 +894,7 @@ static const char alt_reg_names[][8] =
 
 #if TARGET_MACHO
 #undef TARGET_BINDS_LOCAL_P
-#define TARGET_BINDS_LOCAL_P rs6000_binds_local_p
+#define TARGET_BINDS_LOCAL_P darwin_binds_local_p
 #endif
 
 #undef TARGET_ASM_OUTPUT_MI_THUNK
@@ -17522,17 +17519,6 @@ rs6000_xcoff_file_end (void)
 }
 #endif /* TARGET_XCOFF */
 
-#if TARGET_MACHO
-/* Cross-module name binding.  Darwin does not support overriding
-   functions at dynamic-link time.  */
-
-static bool
-rs6000_binds_local_p (tree decl)
-{
-  return default_binds_local_p_1 (decl, 0);
-}
-#endif
-
 /* Compute a (partial) cost for rtx X.  Return true if the complete
    cost has been computed, and false if subexpressions should be
    scanned.  In either case, *TOTAL contains the cost result.  */