> * go-lang.c (go_langhook_init_options_struct): Don't set > x_flag_split_stack. > (go_langhook_post_options): Set it here instead. > --- > gcc/go/go-lang.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/gcc/go/go-lang.c b/gcc/go/go-lang.c > index ce4dd9b..d952e0f 100644 > --- a/gcc/go/go-lang.c > +++ b/gcc/go/go-lang.c > @@ -158,10 +158,6 @@ go_langhook_init_options_struct (struct gcc_options > *opts) > opts->x_flag_errno_math = 0; > opts->frontend_set_flag_errno_math = true; > > - /* We turn on stack splitting if we can. */ > - if (targetm_common.supports_split_stack (false, opts)) > - opts->x_flag_split_stack = 1; > - > /* Exceptions are used to handle recovering from panics. */ > opts->x_flag_exceptions = 1; > opts->x_flag_non_call_exceptions = 1; > @@ -295,6 +291,11 @@ go_langhook_post_options (const char **pfilename > ATTRIBUTE_UNUSED) > && global_options.x_write_symbols == NO_DEBUG) > global_options.x_write_symbols = PREFERRED_DEBUGGING_TYPE; > > + /* We turn on stack splitting if we can. */ > + if (!global_options_set.x_flag_split_stack > + && targetm_common.supports_split_stack (false, &global_options)) > + global_options.x_flag_split_stack = 1; > + > /* Returning false means that the backend should be used. */ > return false; > }
This fixes the bootstrap error, and probably makes it possible to use DEFAULT_ABI in rs6000_supports_split_stack. Andreas. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."