Commit c46a37c4 by Richard Henderson Committed by Richard Henderson

haifa-sched.c (sched_reg_n_calls_crossed): Delete.

        * haifa-sched.c (sched_reg_n_calls_crossed): Delete.
        (sched_reg_live_length, sched_reg_basic_block): Delete.
        (current_block_num, bb_live_regs, old_live_regs): Delete.
        (dead_notes, struct sometimes): Delete.
        (sched_note_set, birthing_insn_p): Delete.
        (adjust_priority): Gut useless reg lifetime code.
        (create_reg_dead_note, attach_deaths): Delete.
        (attach_deaths_insn, new_sometimes_live): Delete.
        (finish_sometimes_live): Delete.
        (find_pre_sched_live, find_post_sched_live): Delete.
        (update_reg_usage): Delete.
        (find_insn_reg_weight): New, from corpse of find_pre_sched_live.
        (schedule_insns): Delete reg lifetime code.
        (sched_analyze): Use REG_SAVE_NOTE to stuff NOTE_INSN notes away.
        (unlink_other_notes): Adjust REG_NOTE commentary.
        (reemit_notes): Use REG_SAVE_NOTE.
        (schedule_block): Likewise.
        (schedule_region): Allocate bitmap of blocks in region.  Use
        count_or_remove_death_notes.  Use update_life_info.

        * rtl.h (REG_SAVE_NOTE): New.
        * rtl.c (reg_note_name): Update.

From-SVN: r29894
parent 715e7fbc
Sun Oct 10 16:37:01 1999 Richard Henderson <rth@cygnus.com>
* haifa-sched.c (sched_reg_n_calls_crossed): Delete.
(sched_reg_live_length, sched_reg_basic_block): Delete.
(current_block_num, bb_live_regs, old_live_regs): Delete.
(dead_notes, struct sometimes): Delete.
(sched_note_set, birthing_insn_p): Delete.
(adjust_priority): Gut useless reg lifetime code.
(create_reg_dead_note, attach_deaths): Delete.
(attach_deaths_insn, new_sometimes_live): Delete.
(finish_sometimes_live): Delete.
(find_pre_sched_live, find_post_sched_live): Delete.
(update_reg_usage): Delete.
(find_insn_reg_weight): New, from corpse of find_pre_sched_live.
(schedule_insns): Delete reg lifetime code.
(sched_analyze): Use REG_SAVE_NOTE to stuff NOTE_INSN notes away.
(unlink_other_notes): Adjust REG_NOTE commentary.
(reemit_notes): Use REG_SAVE_NOTE.
(schedule_block): Likewise.
(schedule_region): Allocate bitmap of blocks in region. Use
count_or_remove_death_notes. Use update_life_info.
* rtl.h (REG_SAVE_NOTE): New.
* rtl.c (reg_note_name): Update.
Sun Oct 10 16:14:16 1999 Richard Henderson <rth@cygnus.com> Sun Oct 10 16:14:16 1999 Richard Henderson <rth@cygnus.com>
* combine.c (refresh_blocks, need_refresh): New. * combine.c (refresh_blocks, need_refresh): New.
......
...@@ -257,7 +257,7 @@ const char * const reg_note_name[] = { "", "REG_DEAD", "REG_INC", "REG_EQUIV", " ...@@ -257,7 +257,7 @@ const char * const reg_note_name[] = { "", "REG_DEAD", "REG_INC", "REG_EQUIV", "
"REG_EXEC_COUNT", "REG_NOALIAS", "REG_SAVE_AREA", "REG_EXEC_COUNT", "REG_NOALIAS", "REG_SAVE_AREA",
"REG_BR_PRED", "REG_EH_CONTEXT", "REG_BR_PRED", "REG_EH_CONTEXT",
"REG_FRAME_RELATED_EXPR", "REG_EH_REGION", "REG_FRAME_RELATED_EXPR", "REG_EH_REGION",
"REG_EH_RETHROW" }; "REG_EH_RETHROW", "REG_SAVE_NOTE" };
static void dump_and_abort PROTO((int, int, FILE *)) ATTRIBUTE_NORETURN; static void dump_and_abort PROTO((int, int, FILE *)) ATTRIBUTE_NORETURN;
static void read_name PROTO((char *, FILE *)); static void read_name PROTO((char *, FILE *));
......
...@@ -456,8 +456,8 @@ extern void rtvec_check_failed_bounds PROTO((rtvec, int, ...@@ -456,8 +456,8 @@ extern void rtvec_check_failed_bounds PROTO((rtvec, int,
flags computed by get_jump_flags() after dbr scheduling is complete. flags computed by get_jump_flags() after dbr scheduling is complete.
REG_FRAME_RELATED_EXPR is attached to insns that are RTX_FRAME_RELATED_P, REG_FRAME_RELATED_EXPR is attached to insns that are RTX_FRAME_RELATED_P,
but are too complex for DWARF to interpret what they imply. The attached but are too complex for DWARF to interpret what they imply. The attached
rtx is used instead of intuition. */ rtx is used instead of intuition.
/* REG_EH_REGION is used to indicate what exception region an INSN REG_EH_REGION is used to indicate what exception region an INSN
belongs in. This can be used to indicate what region a call may throw belongs in. This can be used to indicate what region a call may throw
to. a REGION of 0 indicates that a call cannot throw at all. to. a REGION of 0 indicates that a call cannot throw at all.
a REGION of -1 indicates that it cannot throw, nor will it execute a REGION of -1 indicates that it cannot throw, nor will it execute
...@@ -465,8 +465,9 @@ extern void rtvec_check_failed_bounds PROTO((rtvec, int, ...@@ -465,8 +465,9 @@ extern void rtvec_check_failed_bounds PROTO((rtvec, int,
REG_EH_RETHROW is used to indicate that a call is actually a REG_EH_RETHROW is used to indicate that a call is actually a
call to rethrow, and specifies the rethrow symbol for the region call to rethrow, and specifies the rethrow symbol for the region
the rethrow is targetting. This provides a way to generate the the rethrow is targetting. This provides a way to generate the
non standard flow edges required for a rethrow. */ non standard flow edges required for a rethrow.
REG_SAVE_NOTE is used by haifa-sched to save NOTE_INSN notes
across scheduling. */
#define REG_NOTES(INSN) XEXP(INSN, 6) #define REG_NOTES(INSN) XEXP(INSN, 6)
...@@ -481,7 +482,7 @@ enum reg_note { REG_DEAD = 1, REG_INC = 2, REG_EQUIV = 3, REG_WAS_0 = 4, ...@@ -481,7 +482,7 @@ enum reg_note { REG_DEAD = 1, REG_INC = 2, REG_EQUIV = 3, REG_WAS_0 = 4,
REG_EXEC_COUNT = 17, REG_NOALIAS = 18, REG_SAVE_AREA = 19, REG_EXEC_COUNT = 17, REG_NOALIAS = 18, REG_SAVE_AREA = 19,
REG_BR_PRED = 20, REG_EH_CONTEXT = 21, REG_BR_PRED = 20, REG_EH_CONTEXT = 21,
REG_FRAME_RELATED_EXPR = 22, REG_EH_REGION = 23, REG_FRAME_RELATED_EXPR = 22, REG_EH_REGION = 23,
REG_EH_RETHROW = 24 }; REG_EH_RETHROW = 24, REG_SAVE_NOTE = 25 };
/* The base value for branch probability notes. */ /* The base value for branch probability notes. */
#define REG_BR_PROB_BASE 10000 #define REG_BR_PROB_BASE 10000
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment