------- Comment #23 from howarth at nitro dot med dot uc dot edu  2009-10-02 
05:00 -------
Oddly...

Index: config/darwin.c
===================================================================
--- config/darwin.c     (revision 152389)
+++ config/darwin.c     (working copy)
@@ -1697,6 +1697,9 @@
   if (dwarf_strict < 0) 
     dwarf_strict = 1;

+  if (flag_unwind_tables)
+    flag_reorder_blocks_and_partition = 0;
+
   if (flag_mkernel || flag_apple_kext)
     {
       /* -mkernel implies -fapple-kext for C++ */

doesn't solve the problem. However if I manually revert...

--- /Users/howarth/gcc/gcc/opts.c       2009-09-28 19:33:18.000000000 -0400
+++ opts.c      2009-10-02 00:51:55.000000000 -0400
@@ -1054,12 +1054,7 @@
      optimization.  */

   if (flag_unwind_tables && ! targetm.unwind_tables_default
-      && flag_reorder_blocks_and_partition
-      && (USING_SJLJ_EXCEPTIONS
-#ifdef TARGET_UNWIND_INFO
-         || 1
-#endif
-        ))
+      && flag_reorder_blocks_and_partition)
     {
       inform (input_location,
              "-freorder-blocks-and-partition does not support unwind info on
this architecture");

The failures are reduced down to just...

FAIL: g++.dg/tree-prof/partition1.C compilation,  -fprofile-use

with the same error as before...

/var/tmp//ccMjlW9T.s:620:FATAL:Symbol __Z3bari.eh already defined.compiler
exited with status 1output is:/var/tmp//ccMjlW9T.s:620:FATAL:Symbol __Z3bari.eh
already defined.

Perhaps there is another instance of flag_reorder_blocks_and_partition being
reset to 1 in the -fprofile-use case?


-- 


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

Reply via email to