diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 2000-02-15 22:34:33 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 2000-02-15 22:34:33 +0000 |
commit | 9f09b1f27285bb8b72ee3fa02619fc2fac845b3b (patch) | |
tree | e647915f74630ab20a46bfbbd0f14b62bd524134 /gcc/basic-block.h | |
parent | 78de74bea93ed92acb7c78ebb9293eb6f1d08b15 (diff) | |
download | gcc-9f09b1f27285bb8b72ee3fa02619fc2fac845b3b.zip gcc-9f09b1f27285bb8b72ee3fa02619fc2fac845b3b.tar.gz gcc-9f09b1f27285bb8b72ee3fa02619fc2fac845b3b.tar.bz2 |
Makefile.in (lcm.o): Depend on insn-attr.h.
* Makefile.in (lcm.o): Depend on insn-attr.h.
* basic-block.h (optimize_mode_switching): Declare.
* lcm.c (tm_p.h, insn-attr.h): #include.
(seginfo, bb_info): New structs.
(antic, transp, comp, delete, insert) : New file-scope static variables.
(new_seginfo, add_seginfo, make_preds_opaque, reg_dies): New functions.
(reg_becomes_live, optimize_mode_switching): Likewise.
* tm.texi: Add description of mode switching macros.
* toplev.c (rest_of_compilation): Call optimize_mode_switching.
* sh-protos.h (remove_dead_before_cse): Remove prototype.
(fldi_ok, fpscr_set_from_mem): New prototypes.
* sh.h (OPTIMIZATION_OPTION): Remove sh_flag_remove_dead_before_cse set.
(CONST_DOUBLE_OK_FOR_LETTER_P, SECONDARY_INPUT_RELOAD_CLASS):
Disable fldi for (TARGET_SH4 && ! TARGET_FMOVD).
(sh_flag_remove_dead_before_cse): Remove declaration.
(NUM_MODES_FOR_MODE_SWITCHING, OPTIMIZE_MODE_SWITCHING): New macros.
(MODE_USES_IN_EXIT_BLOCK, MODE_NEEDED, MODE_AT_ENTRY): Likewise.
(MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* sh.c (broken_move): Disable fldi for (TARGET_SH4 && ! TARGET_FMOVD).
(barrier_align): Allow for JUMP_INSNS containing a parallel.
(machine_dependent_reorg): Remove sh_flag_remove_dead_before_cse set.
(fldi_ok): New function.
(get_fpscr_rtx): Add fpscr_rtx as GC root.
(emit_sf_insn): Only generate fpu switches when optimize < 1.
(emit_df_insn): Likewise.
(expand_fp_branch, emit_fpscr_use, remove_dead_before_cse): Delete.
(sh_flag_remove_dead_before_cse): Delete.
(get_free_reg, fpscr_set_from_mem): New functions.
* sh.md (movdf, movsf): Remove no_new_pseudos code.
(return): Remove emit_fpscr_use / remove_dead_before_cse calls.
Co-Authored-By: Andrew MacLeod <amacleod@cygnus.com>
From-SVN: r31990
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r-- | gcc/basic-block.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h index 5ecdb77..b83e0f4 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -435,6 +435,7 @@ extern struct edge_list *pre_edge_rev_lcm PARAMS ((FILE *, int, sbitmap *, sbitmap **)); extern void compute_available PARAMS ((sbitmap *, sbitmap *, sbitmap *, sbitmap *)); +extern void optimize_mode_switching PARAMS ((FILE *)); /* In emit-rtl.c. */ extern rtx emit_block_insn_after PARAMS ((rtx, rtx, basic_block)); |