Index: gcc/config/i386/i386.cc
--- gcc/config/i386/i386.cc.orig
+++ gcc/config/i386/i386.cc
@@ -6934,6 +6934,7 @@ ix86_compute_frame_layout (void)
 	}
     }
 
+  frame->local_size = size;
   frame->nregs = ix86_nsaved_regs ();
   frame->nsseregs = ix86_nsaved_sseregs ();
 
@@ -8994,6 +8995,9 @@ ix86_expand_prologue (void)
 	  RTX_FRAME_RELATED_P (insn) = 1;
 	}
     }
+
+  if (warn_stack_larger_than && frame.local_size > stack_larger_than_size)
+    warning (OPT_Wstack_larger_than_, "stack usage is %lld bytes", frame.local_size);
 
   int_registers_saved = (frame.nregs == 0);
   sse_registers_saved = (frame.nsseregs == 0);
