diff options
author | Bernd Schmidt <crux@pool.informatik.rwth-aachen.de> | 1998-03-28 00:12:41 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-03-27 17:12:41 -0700 |
commit | 4d1d804584e7b0795a7c355d3a9cafaa947f1071 (patch) | |
tree | 2736d7d7941b48fd63e1b71a3c5182d1b4de78d8 /gcc/function.c | |
parent | 56f28b73e7dbb93306da989b3984dd78f918b3e6 (diff) | |
download | gcc-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.c | 7 |
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; |