------- Comment #36 from howarth at nitro dot med dot uc dot edu  2009-10-06 
02:02 -------
This can be factored down to...

Index: gcc/config/darwin.c
===================================================================
--- gcc/config/darwin.c (revision 152481)
+++ gcc/config/darwin.c (working copy)
@@ -1454,7 +1454,7 @@
 {
   char *lab;

-  if (! for_eh)
+  if ((! for_eh) || (darwin_macosx_version_min &&
strverscmp(darwin_macosx_version_min, "10.6") >= 0))
     return;

   lab = concat (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)), ".eh", NULL);
@@ -1697,6 +1697,19 @@
   if (dwarf_strict < 0) 
     dwarf_strict = 1;

+  if ((darwin_macosx_version_min && strverscmp(darwin_macosx_version_min,
"10.6") >= 0) || flag_reorder_blocks_and_partition)
+    {
+      if (flag_exceptions ||
+         flag_unwind_tables ||
+         !targetm.have_named_sections)
+           {
+             inform (input_location,
+                      "-freorder-blocks-and-partition does not work with
exceptions on this architecture");
+             flag_reorder_blocks_and_partition = 0;
+             flag_reorder_blocks = 1;
+           }
+    }
+
   if (flag_mkernel || flag_apple_kext)
     {
       /* -mkernel implies -fapple-kext for C++ */


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41313

Reply via email to