]> git.eshelyaron.com Git - emacs.git/commitdiff
Align stack bottom properly.
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 29 Aug 2017 19:49:22 +0000 (12:49 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 29 Aug 2017 21:58:48 +0000 (14:58 -0700)
This is needed for gcc -Os -flto on x86-64 (Bug#28213).
* src/emacs.c (main): Align stack-bottom variable as a pointer,
since mark_memory requires this.

src/emacs.c

index 0fec71675883f290ba6814b30f881cc3b1a6b7da..44f6285795af326a2184e393a5ec3fbee0306b94 100644 (file)
@@ -672,7 +672,10 @@ close_output_streams (void)
 int
 main (int argc, char **argv)
 {
-  char stack_bottom_variable;
+  /* Variable near the bottom of the stack, and aligned appropriately
+     for pointers.  */
+  void *stack_bottom_variable;
+
   bool do_initial_setlocale;
   bool dumping;
   int skip_args = 0;
@@ -688,7 +691,7 @@ main (int argc, char **argv)
   char *original_pwd = 0;
 
   /* Record (approximately) where the stack begins.  */
-  stack_bottom = &stack_bottom_variable;
+  stack_bottom = (char *) &stack_bottom_variable;
 
 #ifndef CANNOT_DUMP
   dumping = !initialized && (strcmp (argv[argc - 1], "dump") == 0