summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2017-08-29 12:49:22 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2017-08-29 14:58:48 -0700
commitf1fdb5bc575728bd6c9f13a18939d9c271a74e83 (patch)
tree75b63a474def4a9701b0d1eda984575e003ffabd /src
parent02255c5fbc7e6dc0206db978994617cc72de4bb8 (diff)
downloademacs-f1fdb5bc575728bd6c9f13a18939d9c271a74e83.tar.gz
Align stack bottom properly.
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.
Diffstat (limited to 'src')
-rw-r--r--src/emacs.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/emacs.c b/src/emacs.c
index 0fec7167588..44f6285795a 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -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