summaryrefslogtreecommitdiff
path: root/development/gcc-d/gcc.69140.diff
blob: ace60ebdd0273d7ec2e158b54b31948209cfbf95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
--- ./gcc/config/i386/i386.c.orig	2015-11-18 09:45:26.000000000 -0600
+++ ./gcc/config/i386/i386.c	2016-02-05 13:50:07.202981920 -0600
@@ -9677,6 +9677,10 @@
   if (TARGET_64BIT_MS_ABI && get_frame_size () > SEH_MAX_FRAME_SIZE)
     return true;
 
+  /* SSE saves require frame-pointer when stack is misaligned.  */
+  if (TARGET_64BIT_MS_ABI && ix86_incoming_stack_boundary < 128)
+    return true;
+
   /* In ix86_option_override_internal, TARGET_OMIT_LEAF_FRAME_POINTER
      turns off the frame pointer by default.  Turn it back on now if
      we've not got a leaf function.  */