diff options
author | Richard Henderson <rth@cygnus.com> | 2000-01-19 01:42:11 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-01-19 01:42:11 -0800 |
commit | d29c259b715bb5873c1b9ecf5af5ce06132a3377 (patch) | |
tree | 1279f2c86a2d7f56c162a81d8ff2ce20872bda4f /gcc/stmt.c | |
parent | 301e21af2c964ac3f7505d5bf9a45d2fe812ff29 (diff) | |
download | gcc-d29c259b715bb5873c1b9ecf5af5ce06132a3377.zip gcc-d29c259b715bb5873c1b9ecf5af5ce06132a3377.tar.gz gcc-d29c259b715bb5873c1b9ecf5af5ce06132a3377.tar.bz2 |
stupid.c: Die die die.
* stupid.c: Die die die.
* Makefile.in (OBJS): Remove stupid.o.
(stupid.o): Likewise.
* except.c (emit_eh_context): Don't emit USEs for stupid.
* explow.c (probe_stack_range): Likewise.
* flags.h (obey_regdecls): Remove.
* flow.c (find_basic_blocks): Don't run try_merge_blocks
when not optimizing.
(life_analysis): Limit data collection when not optimizing.
(mark_regs_live_at_end): Always mark the return value registers.
(mark_used_regs): Remove dummy RETURN case.
(print_rtl_with_bb): Don't consult obey_regdecls.
* function.c (use_variable, use_variable_after): Remove.
(assign_parms): Consult optimize not obey_regdecls.
(expand_function_start): Don't emit USEs for stupid.
(expand_function_end): Likewise.
* global.c (build_insn_chain): Export.
* integrate.c (expand_inline_function): Kill return-value USE
handling code.
* jump.c (jump_optimize_1): Do simple jump optimizations and
dead code elimination.
(calculate_can_reach_end): Remove check_deleted argument.
(delete_insn): Patch out insns even when not optimizing.
* local-alloc.c (block_alloc): Don't do tying when not optimizing.
* rtl.h (use_variable, use_variable_after): Remove declarations.
(build_insn_chain): Declare.
* stmt.c (expand_value_return): Don't emit USEs for stupid.
(expand_end_bindings): Likewise.
(expand_decl): Likewise. Consult optimize not obey_regdecls.
* toplev.c (obey_regdecls): Remove.
(rest_of_compilation): Don't set it. Kill stupid in favour of
flow1, local-alloc, and reload.
(main): Don't set obey_regdecls.
* config/nextstep.c (handle_pragma): Likewise.
* alpha/alpha.md (allocate_stack): Don't emit USEs for stupid.
* arm/arm.h (CONDITIONAL_REGISTER_USAGE): Don't fix reg 0 for stupid.
From-SVN: r31499
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r-- | gcc/stmt.c | 20 |
1 files changed, 1 insertions, 19 deletions
@@ -2722,8 +2722,6 @@ expand_value_return (val) emit_move_insn (return_reg, val); } - diddle_return_value (USE); - /* Does any pending block have cleanups? */ while (block && block->data.block.cleanups == 0) @@ -3689,14 +3687,6 @@ expand_end_bindings (vars, mark_ends, dont_jump_in) /* Get rid of the beginning-mark if we don't make an end-mark. */ NOTE_LINE_NUMBER (thisblock->data.block.first_insn) = NOTE_INSN_DELETED; - /* If doing stupid register allocation, make sure lives of all - register variables declared here extend thru end of scope. */ - - if (obey_regdecls) - for (decl = vars; decl; decl = TREE_CHAIN (decl)) - if (TREE_CODE (decl) == VAR_DECL && DECL_RTL (decl)) - use_variable (DECL_RTL (decl)); - /* Restore the temporary level of TARGET_EXPRs. */ target_temp_slot_level = thisblock->data.block.block_target_temp_slot_level; @@ -3757,7 +3747,7 @@ expand_decl (decl) && TREE_CODE (type) == REAL_TYPE) && ! TREE_THIS_VOLATILE (decl) && ! TREE_ADDRESSABLE (decl) - && (DECL_REGISTER (decl) || ! obey_regdecls) + && (DECL_REGISTER (decl) || optimize) /* if -fcheck-memory-usage, check all variables. */ && ! current_function_check_memory_usage) { @@ -3889,15 +3879,7 @@ expand_decl (decl) if (TREE_READONLY (decl)) RTX_UNCHANGING_P (DECL_RTL (decl)) = 1; #endif - - /* If doing stupid register allocation, make sure life of any - register variable starts here, at the start of its scope. */ - - if (obey_regdecls) - use_variable (DECL_RTL (decl)); } - - /* Emit code to perform the initialization of a declaration DECL. */ |