diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2016-10-12 17:19:46 +0200 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2016-10-12 17:19:46 +0200 |
commit | 20a6ece021473dc7f182b751bcbdaa6ad9762375 (patch) | |
tree | 2139db30e23ce186bfb8b73a5ad44c4cba876943 /gcc/emit-rtl.h | |
parent | 56b31d3e8235beccc7ccf9fb534888a9ab949a0c (diff) |
separate shrink-wrap: New command-line flag, status flag, hooks, and doc
This patch adds a new command-line flag "-fshrink-wrap-separate", a status
flag "shrink_wrapped_separate", hooks for abstracting the target components,
and documentation for all those.
* common.opt (-fshrink-wrap-separate): New flag.
* doc/invoke.texi: Document it.
* doc/tm.texi.in (Shrink-wrapping separate components): New subsection.
* doc/tm.texi: Regenerate.
* emit-rtl.h (struct rtl_data): New field shrink_wrapped_separate.
* target.def (shrink_wrap): New hook vector.
(get_separate_components, components_for_bb, disqualify_components,
emit_prologue_components, emit_epilogue_components,
set_handled_components): New hooks.
From-SVN: r241059
Diffstat (limited to 'gcc/emit-rtl.h')
-rw-r--r-- | gcc/emit-rtl.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/emit-rtl.h b/gcc/emit-rtl.h index 52c72b1eed2..0a242b1234d 100644 --- a/gcc/emit-rtl.h +++ b/gcc/emit-rtl.h @@ -254,6 +254,10 @@ struct GTY(()) rtl_data { /* True if we performed shrink-wrapping for the current function. */ bool shrink_wrapped; + /* True if we performed shrink-wrapping for separate components for + the current function. */ + bool shrink_wrapped_separate; + /* Nonzero if function being compiled doesn't modify the stack pointer (ignoring the prologue and epilogue). This is only valid after pass_stack_ptr_mod has run. */ |