diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-19 01:27:00 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-19 01:27:00 +0000 |
commit | 2976822627f44f301cb3a74e71b9a0127aecec71 (patch) | |
tree | 4e76f0295c3501797dbd329a63105f6a7c70f1e9 /gcc/lcm.c | |
parent | e238c961c77fe8778c12739cb3d73512a06944f0 (diff) | |
download | gcc-2976822627f44f301cb3a74e71b9a0127aecec71.tar.gz |
* bitmap.c (bitmap_operation): Avoid using -1 for index since unsigned.
* cppinit.c (new_pending_define): Add cast to avoid warning.
* expmed.c (extract_bit_field): Likewise.
* flow.c (enum reorder_skip_type): New type.
(skip_insns_between_blcok): New it.
Rework to avoid warning about possibly undefined variable.
* function.c (assign_parms): Make thisparm_boundary unsigned.
* genrecog.c (write_switch): Cast XWINT result to int.
* lcm.c: Many static fcns and vars now #ifdef OPTIMIZE_MODE_SWITCHING.
* mips-tfile.c (init_file): Make two versions of FDR intializer:
one for MIPS and one for Alpha.
(get_tag, copy_object): Add casts to avoid warnings.
* optabs.c (init_one_libfunc): Cast NAME to (char *).
* reload.c (find_reloads): Make TYPE enum reload_type.
* sbitmap.c (dump_sbitmap): J is unsigned; don't use "1L".
* unroll.c (unroll_loop): Initialize UNROLL_NUMBER.
* varasm.c (compare_constant_1): Add cast to avoid warning.
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Cast FUNC
to (char *).
(alpha_expand_unaligned_load, alpha_expand_unaligned_store):
Cast switch operand of size to int.
(alpha_expand_epilogue): Always initialize fp_offset and sa_reg.
* config/alpha/alpha.h (INITIAL_ELIMINATION_OFFSET): Add abort
in unhandled case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32060 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lcm.c')
-rw-r--r-- | gcc/lcm.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/lcm.c b/gcc/lcm.c index 7598b34d126..b850984b2f0 100644 --- a/gcc/lcm.c +++ b/gcc/lcm.c @@ -842,6 +842,7 @@ struct bb_info /* These bitmaps are used for the LCM algorithm. */ +#ifdef OPTIMIZE_MODE_SWITCHING static sbitmap *antic; static sbitmap *transp; static sbitmap *comp; @@ -850,12 +851,16 @@ static sbitmap *insert; static struct seginfo * new_seginfo PARAMS ((int, rtx, int, HARD_REG_SET));; static void add_seginfo PARAMS ((struct bb_info *, struct seginfo *)); -static void make_preds_opaque PARAMS ((basic_block, int)); static void reg_dies PARAMS ((rtx, HARD_REG_SET)); static void reg_becomes_live PARAMS ((rtx, rtx, void *)); +static void make_preds_opaque PARAMS ((basic_block, int)); +#endif + +#ifdef OPTIMIZE_MODE_SWITCHING /* This function will allocate a new BBINFO structure, initialized with the FP_MODE, INSN, and basic block BB parameters. */ + static struct seginfo * new_seginfo (mode, insn, bb, regs_live) int mode; @@ -876,6 +881,7 @@ new_seginfo (mode, insn, bb, regs_live) /* Add a seginfo element to the end of a list. HEAD is a pointer to the list beginning. INFO is the structure to be linked in. */ + static void add_seginfo (head, info) struct bb_info *head; @@ -899,6 +905,7 @@ add_seginfo (head, info) denotes that a mode set is to be done on that edge. J is the bit number in the bitmaps that corresponds to the entity that we are currently handling mode-switching for. */ + static void make_preds_opaque (b, j) basic_block b; @@ -917,6 +924,7 @@ make_preds_opaque (b, j) } /* Record in LIVE that register REG died. */ + static void reg_dies (reg, live) rtx reg; @@ -938,6 +946,7 @@ reg_dies (reg, live) /* Record in LIVE that register REG became live. This is called via note_stores. */ + static void reg_becomes_live (reg, setter, live) rtx reg; @@ -961,6 +970,7 @@ reg_becomes_live (reg, setter, live) SET_HARD_REG_BIT (* (HARD_REG_SET *) live, regno); } } +#endif /* Find all insns that need a particular mode setting, and insert the necessary mode switches. */ |