diff options
author | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-07-16 17:50:26 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-07-16 18:13:56 +0200 |
commit | f569026aa3088aa895ea39618d2998333b08600b (patch) | |
tree | d8d1893f1871eae2ba5da2ae21162b79a053c97a /gcc/fortran/trans-openmp.c | |
parent | a54d71cb664199c98fbb2694e9314566d6ca0ed2 (diff) | |
download | gcc-f569026aa3088aa895ea39618d2998333b08600b.zip gcc-f569026aa3088aa895ea39618d2998333b08600b.tar.gz gcc-f569026aa3088aa895ea39618d2998333b08600b.tar.bz2 |
Reunify x86 stack checking implementation
The stack clash protection mechanism in the x86 back-end was implemented
by largely duplicating the existing stack checking implementation. Now
the only significant difference between them is the probing window, which
is shifted by 1 probing interval (not 2 as documented in explow.c), but we
can certainly do 1 more probe for stack checking even if it is redundant
in almost all cases.
gcc/ChangeLog:
* config/i386/i386.c (ix86_compute_frame_layout): Minor tweak.
(ix86_adjust_stack_and_probe): Delete.
(ix86_adjust_stack_and_probe_stack_clash): Rename to above and add
PROTECTION_AREA parameter. If it is true, probe PROBE_INTERVAL plus
a small dope beyond SIZE bytes.
(ix86_emit_probe_stack_range): Use local variable.
(ix86_expand_prologue): Adjust calls to ix86_adjust_stack_and_probe
and tidy up the stack checking code.
* explow.c (get_stack_check_protect): Fix head comment.
(anti_adjust_stack_and_probe_stack_clash): Likewise.
(allocate_dynamic_stack_space): Add comment.
* tree-nested.c (lookup_field_for_decl): Set the DECL_IGNORED_P and
TREE_NO_WARNING but not TREE_ADDRESSABLE flags on the field.
Diffstat (limited to 'gcc/fortran/trans-openmp.c')
0 files changed, 0 insertions, 0 deletions