diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 21:25:28 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 21:25:28 +0000 |
commit | f164c08a5ab59fc045ab26b4bbae6d8ecb0f5fff (patch) | |
tree | 07029562f5d29447aaea45407baa8ff6842f7694 /gcc/expr.h | |
parent | 85f98cf615062134f884e8d112254aab8437392f (diff) | |
download | gcc-f164c08a5ab59fc045ab26b4bbae6d8ecb0f5fff.tar.gz |
* expr.h (emit_stack_probe): Declare.
* explow.c (emit_stack_probe): Make global.
(anti_adjust_stack_and_probe): Fix comments.
* config/sparc/linux.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
* config/sparc/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
* config/sparc/sol2.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
* config/sparc/sparc.c: Include except.h.
(sparc_emit_probe_stack_range): New function.
(output_probe_stack_range): Likewise.
(sparc_expand_prologue): Invoke sparc_emit_probe_stack_range if static
built-in stack checking is enabled.
* config/sparc/sparc-protos.h (output_probe_stack_range): Declare.
* config/sparc/sparc.md (UNSPECV_PROBE_STACK_RANGE): New constant.
(probe_stack_range): New insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161749 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/expr.h b/gcc/expr.h index 6ee964a39f4..c71b8edcbb7 100644 --- a/gcc/expr.h +++ b/gcc/expr.h @@ -645,6 +645,9 @@ extern void update_nonlocal_goto_save_area (void); says how many bytes. */ extern rtx allocate_dynamic_stack_space (rtx, rtx, int); +/* Emit one stack probe at ADDRESS, an address within the stack. */ +extern void emit_stack_probe (rtx); + /* Probe a range of stack addresses from FIRST to FIRST+SIZE, inclusive. FIRST is a constant and size is a Pmode RTX. These are offsets from the current stack pointer. STACK_GROWS_DOWNWARD says whether to add |