-
- Downloads
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
PR ada/20548 * common.opt (-fstack-check): Do not declare the variable here. (-fstack-check=): New option variant. * doc/invoke.texi (Code Gen Options): Document it. * expr.h (STACK_OLD_CHECK_PROTECT): New macro. (STACK_CHECK_PROTECT): Bump to 3 pages if DWARF-2 EH is used. (STACK_CHECK_STATIC_BUILTIN): New macro. * doc/tm.texi (Stack Checking): Document STACK_CHECK_STATIC_BUILTIN. * opts.c: Include expr.h. (common_handle_option) <OPT_fold_stack_check_>: New case. <OPT_fstack_check>: Likewise. * calls.c (initialize_argument_information): Use TYPE_SIZE_UNIT consistently in the test for variable-sized types. Adjust for new behaviour of flag_stack_check. * explow.c: Include except.h. (allocate_dynamic_stack_space): Do not take into account STACK_CHECK_MAX_FRAME_SIZE for static builtin stack checking. * function.c (gimplify_parameters): Use DECL_SIZE_UNIT in the test for variable-sized parameters. Treat all parameters whose size is greater than STACK_CHECK_MAX_VAR_SIZE as variable-sized if generic stack checking is enabled. * gimplify.c (gimplify_decl_expr): Treat non-static objects whose size is greater than STACK_CHECK_MAX_VAR_SIZE as variable-sized if generic stack checking is enabled. (expand_function_end): Adjust for new behaviour of flag_stack_check. * reload1.c (reload): Likewise. * stmt.c (expand_decl): Assert that all automatic variables have fixed size at this point and remove dead code. * flags.h (stack_check_type): New enumeration type. (flag_stack_check): Declare. * toplev.c (flag_stack_check): New global variable. * Makefile.in (opts.o): Add dependency on EXPR_H. (explow.o): Add dependency on except.h. ada/ * gcc-interface/decl.c (gnat_to_gnu_entity): Use DECL_SIZE_UNIT in the setjmp test consistently. Adjust for new behaviour of flag_stack_check. * gcc-interface/utils2.c (build_call_alloc_dealloc): Remove redundant test of flag_stack_check. Adjust for new behaviour of flag_stack_check. From-SVN: r139159
Showing
- gcc/ChangeLog 36 additions, 0 deletionsgcc/ChangeLog
- gcc/Makefile.in 2 additions, 2 deletionsgcc/Makefile.in
- gcc/ada/ChangeLog 8 additions, 0 deletionsgcc/ada/ChangeLog
- gcc/ada/gcc-interface/decl.c 5 additions, 5 deletionsgcc/ada/gcc-interface/decl.c
- gcc/ada/gcc-interface/utils2.c 3 additions, 4 deletionsgcc/ada/gcc-interface/utils2.c
- gcc/calls.c 4 additions, 4 deletionsgcc/calls.c
- gcc/common.opt 6 additions, 4 deletionsgcc/common.opt
- gcc/doc/invoke.texi 28 additions, 2 deletionsgcc/doc/invoke.texi
- gcc/doc/tm.texi 32 additions, 17 deletionsgcc/doc/tm.texi
- gcc/explow.c 8 additions, 4 deletionsgcc/explow.c
- gcc/expr.h 23 additions, 2 deletionsgcc/expr.h
- gcc/flags.h 21 additions, 0 deletionsgcc/flags.h
- gcc/function.c 9 additions, 6 deletionsgcc/function.c
- gcc/gimplify.c 5 additions, 1 deletiongcc/gimplify.c
- gcc/opts.c 32 additions, 0 deletionsgcc/opts.c
- gcc/reload1.c 3 additions, 3 deletionsgcc/reload1.c
- gcc/stmt.c 5 additions, 41 deletionsgcc/stmt.c
- gcc/toplev.c 3 additions, 0 deletionsgcc/toplev.c
Loading
Please register or sign in to comment