summaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authorBernd Schmidt <crux@pool.informatik.rwth-aachen.de>1998-03-28 00:12:41 +0000
committerJeff Law <law@gcc.gnu.org>1998-03-27 17:12:41 -0700
commit4d1d804584e7b0795a7c355d3a9cafaa947f1071 (patch)
tree2736d7d7941b48fd63e1b71a3c5182d1b4de78d8 /gcc/function.c
parent56f28b73e7dbb93306da989b3984dd78f918b3e6 (diff)
downloadgcc-4d1d804584e7b0795a7c355d3a9cafaa947f1071.tar.gz
basic-block.h (basic_block_computed_jump_target): Declare.
* basic-block.h (basic_block_computed_jump_target): Declare. * flags.h: (current_function_has_computed_jump): Declare. * flow.c: (basic_block_computed_jump_target): Define. (flow_analysis): Allocate it. Set current_function_has_computed_jump to 0. (find_basic_blocks): Set current_function_has_computed_jump and elements of basic_block_computed_jump_target to 1 as appropriate. * function.c: (current_function_has_computed_jump): Define. * global.c (global_conflicts): Don't allocate pseudos into stack regs at the start of a block that is reachable by a computed jump. * reg-stack.c (stack_reg_life_analysis): If must restart, do so immediately. (subst_stack_regs): Undo change from Sep 4 1997. (uses_reg_or_mem): Now unused, deleted. * stupid.c (stupid_life_analysis): Compute current_function_has_computed_jump. (stupid_find_reg): Don't allocate stack regs if the function has a computed goto. * haifa-sched.c (is_cfg_nonregular): Delete code to determine if the current function has a computed jump. Use the global value instead. Co-Authored-By: Jeffrey A Law <law@cygnus.com> From-SVN: r18860
Diffstat (limited to 'gcc/function.c')
-rw-r--r--gcc/function.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/function.c b/gcc/function.c
index 062e631ed92..f69076f2b71 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -126,6 +126,13 @@ int current_function_has_nonlocal_label;
int current_function_has_nonlocal_goto;
+/* Nonzero if this function has a computed goto.
+
+ It is computed during find_basic_blocks or during stupid life
+ analysis. */
+
+int current_function_has_computed_jump;
+
/* Nonzero if function being compiled contains nested functions. */
int current_function_contains_functions;