aboutsummaryrefslogtreecommitdiff
path: root/gcc/sched.c
AgeCommit message (Collapse)AuthorFilesLines
1997-07-14(schedule_block): Free space associated with reg_pending_sets and old_live_regs.Richard Kenner1-8/+20
(schedule_block): Free space associated with reg_pending_sets and old_live_regs. (schedule_insns): Free bb_{dead,live}_regs on first pass. (sched_analyze_insn): Use EXECUTE_IF_SET_IN_REG_SET and then clear. From-SVN: r14426
1997-06-16Use REG_SET macrosMichael Meissner1-3/+2
From-SVN: r14250
1997-06-09(attach_deaths): Fix typo in Jun 4 change.Jim Wilson1-1/+1
From-SVN: r14187
1997-06-06(update_flow_info): When add extra REG_DEAD note for original dest...Jim Wilson1-9/+25
(update_flow_info): When add extra REG_DEAD note for original dest, handle case where last insn both uses and sets dest. From-SVN: r14163
1997-06-05Fix urgent bugMichael Meissner1-7/+8
From-SVN: r14150
1997-06-05abstract regset stuff into macrosMichael Meissner1-153/+72
From-SVN: r14147
1997-06-02Widen some short fields to int; Use allocate_reg_info to allocate the ↵Michael Meissner1-7/+4
reg_renumber array From-SVN: r14142
1997-05-30Use accessor macros to access arrays based on regno; move many of the arrays ↵Michael Meissner1-20/+21
into a single structure. From-SVN: r14140
1997-05-06reformat a little to match GNU coding standards.Mike Stump1-2/+2
From-SVN: r14024
1997-03-28sched.c (update_flow_info): Handle REG_EXEC_COUNT and REG_BR_PROB notes.Doug Evans1-1/+8
* sched.c (update_flow_info): Handle REG_EXEC_COUNT and REG_BR_PROB notes. From-SVN: r13822
1997-02-19(schedule_insns): If there was no first scheduling pass,Jim Wilson1-2/+41
split instructions after reload. (update_flow_info): Tolerate some idiosyncrasies after reload. From-SVN: r13666
1996-12-17(update_flow_info): When add REG_DEAD notes for dest ofJim Wilson1-0/+4
last insn, add check for global_regs. From-SVN: r13318
1996-10-07(schedule_block): Before scheduling...Jim Wilson1-5/+45
(schedule_block): Before scheduling, add code to make all call used regs that are not fixed or global live when we see a CALL_INSN. During scheduling, change existing code to use same test. From-SVN: r12913
1996-07-23install EH codeMike Stump1-17/+43
From-SVN: r12549
1996-07-08(true_dependence, anti_dependence, output_dependence):Jim Wilson1-2/+11
Likewise. From-SVN: r12416
1996-07-03formatting tweaksMike Stump1-2/+2
From-SVN: r12390
1996-03-31(schedule_block): CALL_INSNs don't affect fixed regs.Richard Kenner1-1/+2
From-SVN: r11648
1996-02-23(sched_analyze): Record NOTE_INSN_SETJMP if no CALL_INSN as prev;Richard Kenner1-4/+10
preserve CONST_CALL_P bit. (reemit_notes): Restore CONST_CALL_P. From-SVN: r11342
1996-02-10(flush_pending_lists): Add new arg, ONLY_WRITE.Richard Kenner1-16/+14
(sched_analyze_{1,2,insn}): Add new arg to flush_pending_lists. (sched_analyze): Always flush pending write list for call, even const. From-SVN: r11200
1996-02-10(add_dependence): Add test for next != CODE_LABEL.Doug Evans1-1/+2
From-SVN: r11192
1996-01-15sched.c (reemit_notes): Add prototype.Doug Evans1-40/+40
* sched.c (reemit_notes): Add prototype. (sched_analyze_2): Reorganize comments. Call prev_nonnote_insn. (sched_analyze): Add abort call. (schedule_block): Undo last patch. Call prev_nonnote_insn. Move call of reemit_notes to after SCHED_GROUP_P scheduling. Set `head' to `last'. From-SVN: r10998
1996-01-14(schedule_block): Copy RTX_INTEGRATE_P bit when create a new note.Jim Wilson1-0/+1
From-SVN: r10975
1996-01-12sched.c (schedule_block): Maintain a valid chain so emit_note_before works.Doug Evans1-1/+17
* sched.c (schedule_block): Maintain a valid chain so emit_note_before works. From-SVN: r10970
1995-12-31sched.c (adjust_priority): Use ADJUST_PRIORITY if its defined.Jeff Law1-0/+3
* sched.c (adjust_priority): Use ADJUST_PRIORITY if its defined. * pa.h (ADJUST_PRIORITY): Define to keep lifetimes of registers that will be allocated to %r1 shorter. From-SVN: r10918
1995-12-17sched.c (canon_rtx): Recursively look for equivalences; look for expressions ↵Jeff Law1-1/+19
equivalent to MEMs. * sched.c (canon_rtx): Recursively look for equivalences; look for expressions equivalent to MEMs. (true_dependence): Canonicalize inputs before operating on their values. (anti_dependence, output_dependence): Likewise. * jump.c (follow_jumps): Don't follow an unconditional jump that is not a simple_jump. From-SVN: r10793
1995-06-15Update FSF address.Richard Kenner1-1/+2
From-SVN: r9966
1995-06-05(attach_deaths): In last change, use find_reg_note instead ofRichard Kenner1-1/+1
find_regno_note. From-SVN: r9883
1995-06-03(attach_deaths): Don't add a REG_DEAD note if a REG_UNUSED note isRichard Kenner1-1/+6
already present. From-SVN: r9871
1995-05-24(reemit_notes): New function.Jim Wilson1-20/+38
(schedule_block): Call reemit_notes twice. Reorganize code for handling SCHED_GROUP_P insns, so that reemit_notes works. From-SVN: r9814
1995-05-16Fix typos in comments.Richard Kenner1-2/+2
From-SVN: r9712
1995-01-25Update comments.Richard Kenner1-3/+3
From-SVN: r8811
1994-09-20(sched_analyze_insn): Parameter loop_note type changed to rtx, and name ↵Jim Wilson1-13/+18
changed to loop_notes. (sched_analyze_insn): Parameter loop_note type changed to rtx, and name changed to loop_notes. Code adding it to REG_NOTES modified to account for type change. (sched_analyze): Variable loop_note type changed to rtx, and name changed to loop_notes. Store LOOP_* REG_DEAD notes in it instead of LOOP_* NOTE_LINE_NUMBER. (schedule_block): Pass last not insn to emit_note_before call. From-SVN: r8099
1994-09-15(sched_analyze_insn): Don't set SCHED_GROUP_P for previous INSN a USERichard Kenner1-1/+2
unless it's a USE of a REG. From-SVN: r8083
1994-09-08(attach_deaths): Correct typo, use GET_MODE not GET_CODE.Jim Wilson1-1/+1
From-SVN: r8043
1994-08-20sched.c (sched_analyze_insn): Add new parameter loop_note.Jim Wilson1-17/+61
* sched.c (sched_analyze_insn): Add new parameter loop_note. If loop_note set, then serialize on this insn. (sched_analyze): New variable loop_note. Pass to sched_analyze_insn. Set it if we pass a NOTE_INSN_LOOP_BEG or NOTE_INSN_LOOP_END. (unlink_notes): Don't save away NOTE_INSN_LOOP_BEG or NOTE_INSN_LOOP_END notes. (schedule_block): Generalize code that looks for magic REG_DEAD notes and converts them to notes. From-SVN: r7956
1994-08-14(attach_deaths): When adding REG_DEAD notes...Jim Wilson1-0/+10
(attach_deaths): When adding REG_DEAD notes, check for the case where a multiple register hard reg overlaps a register set by the insn. From-SVN: r7919
1994-06-14Cast pointer operands to bzero, bcopy, and bcmp to (char *).Richard Kenner1-25/+27
From-SVN: r7472
1994-05-11(sched_analyze_insn): Fix typo in last change.Richard Kenner1-2/+2
From-SVN: r7272
1994-05-07(sched_analyze_insn, attach_deaths_insn): Look atRichard Kenner1-0/+17
CALL_INSN_FUNCTION_USAGE. From-SVN: r7263
1994-04-20(attach_deaths): Create partial register dead notes usingDoug Evans1-1/+2
register's intrinsic mode. From-SVN: r7090
1994-03-25(clear_units): Remove decl of unused variable UNIT.Richard Kenner1-15/+4
(actual_hazard_this_instance): Remove decl of unused variable I. (actual_hazard): Remove two block-scope decls of unused variable BEST. (sched_analyze_1): Remove decls of unused variables OFFSET and BIT. (sched_analyze): Remove decl of unused variable DEST. (sched_note_set): Remove decl of unused variable J. (create_reg_dead_note): Remove decl of unused variable BACKLINK. (new_sometimes_live): Remove decl of unused variable I. (schedule_block): Remove decls of unused variables LAST_NOTE and REGNO. (schedule_insns): Remove decls of unused variables I and INSNS. From-SVN: r6893
1994-03-09(rtx_equal_for_tmemref_p): Commutative operations are identical if theRichard Kenner1-1/+14
operands match in the opposite order. From-SVN: r6732
1994-02-06(reg_pending_sets, reg_pending_sets_all): New variables.Jim Wilson1-5/+34
(sched_analyze_1): Set reg_pending_sets instead of reg_last_sets. (sched_analyze_2): Set reg_pending_sets or reg_pending_sets_all instead of reg_last_sets. (sched_analyze_insn): Use reg_pending_sets and reg_pending_sets_all to set reg_last_sets. Set reg_pending_sets_all instead of reg_last_sets. (schedule_block): Allocate and clear reg_pending_sets. From-SVN: r6492
1994-01-31(sched_analyze_insn): Add use dependencies for registersJim Wilson1-0/+21
mentioned in REG_DEAD notes. From-SVN: r6453
1994-01-31(priority): Call insn_cost() for anti- and output-Jim Wilson1-7/+1
dependencies as well as for true dependencies. From-SVN: r6450
1994-01-26(attach_deaths_insn): Add REG_DEAD notes to CLOBBER ifJim Wilson1-2/+5
it is for a MEM. From-SVN: r6432
1994-01-10(new_insn_dead_notes): Compare registers with rtx_equal_p.Jim Wilson1-1/+1
From-SVN: r6366
1993-12-22(priority): Handle INSN_DELETED_P insns, in addition toJim Wilson1-5/+6
insns which were deleted by being turned into notes. From-SVN: r6272
1993-12-21(sched_analyze): For CALL_INSN followed by NOTE_INSN_SETJMP note...Jim Wilson1-13/+56
(sched_analyze): For CALL_INSN followed by NOTE_INSN_SETJMP note, make it depend on all registers not just hard registers, and add a REG_DEAD -1 note. (unlink_notes): Don't save away NOTE_INSN_SETJMP notes. (schedule_block): After scheduling CALL_INSN, check for REG_DEAD -1 note. If find it, delete it, and output a NOTE_INSN_SETJMP note. From-SVN: r6254
1993-10-05(sched_analyze_2): Make volatile asms depend on allJim Wilson1-3/+8
pseudo registers. From-SVN: r5621