summaryrefslogtreecommitdiff
path: root/gcc/lcm.c
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-19 01:27:00 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-19 01:27:00 +0000
commit2976822627f44f301cb3a74e71b9a0127aecec71 (patch)
tree4e76f0295c3501797dbd329a63105f6a7c70f1e9 /gcc/lcm.c
parente238c961c77fe8778c12739cb3d73512a06944f0 (diff)
downloadgcc-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.c12
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. */