diff options
author | Richard Henderson <rth@redhat.com> | 2003-03-21 15:57:00 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2003-03-21 15:57:00 -0800 |
commit | b8f7beaa0cdeab1ba675073813568376a7674686 (patch) | |
tree | 77f3bd7bbe5199a2dbca3654e66afac867081aac /gcc/function.h | |
parent | dbb358e090fae72287c37e89f20efef0612302fd (diff) | |
download | gcc-b8f7beaa0cdeab1ba675073813568376a7674686.tar.gz |
re PR rtl-optimization/2001 (Inordinately long compile times in reload CSE regs)
PR opt/2001
* bb-reorder.c (maybe_duplicate_computed_goto_succ): New.
(make_reorder_chain_1): Call it.
* function.h (struct function): Add computed_goto_common_label,
computed_goto_common_reg.
* function.c (free_after_compilation): Zap them.
* stmt.c (expand_computed_goto): Use them to produce one
indirect branch per function.
From-SVN: r64689
Diffstat (limited to 'gcc/function.h')
-rw-r--r-- | gcc/function.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/function.h b/gcc/function.h index 89319ebf2e3..d3fb077fba8 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -273,6 +273,10 @@ struct function GTY(()) on machines which require execution of the epilogue on all returns. */ rtx x_return_label; + /* Label and register for unswitching computed gotos. */ + rtx computed_goto_common_label; + rtx computed_goto_common_reg; + /* List (chain of EXPR_LISTs) of pseudo-regs of SAVE_EXPRs. So we can mark them all live at the end of the function, if nonopt. */ rtx x_save_expr_regs; |