https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63890

--- Comment #27 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> Certainly adding TARGET_MACHO is Ok by me.

I don't think this is the problem. I have reapplied the patch in comment 12 for
config/i386/darwin.h and

--- ../_clean/gcc/config/i386/i386.c    2016-01-13 19:03:17.000000000 +0100
+++ gcc/config/i386/i386.c      2016-01-14 20:04:06.000000000 +0100
@@ -10168,6 +10168,14 @@ ix86_va_start (tree valist, rtx nextarg)
          pop_topmost_sequence ();
        }
     }
+  /* Be sure we get stack aligned for mcount call.  */
+  /* else if (TARGET_MACHO && crtl->profile && flag_fentry) */
+  else if (TARGET_MACHO && crtl->profile)
+    {
+      crtl->preferred_stack_boundary = PREFERRED_STACK_BOUNDARY;
+      if (crtl->stack_alignment_needed < PREFERRED_STACK_BOUNDARY)
+       crtl->stack_alignment_needed = PREFERRED_STACK_BOUNDARY;
+    }

   /* Only 64bit target needs something special.  */
   if (is_va_list_char_pointer (TREE_TYPE (valist)))

and confirm the results reported in comment 20: three tests fixed and seven new
failures.

Reply via email to