Age | Commit message (Collapse) | Author | Files | Lines |
|
NEXT->insn.
* loop.c (strength_reduce): When doing biv->giv conversion, update
reg note of NEXT->insn.
From-SVN: r28423
|
|
* loop.c (strength_reduce): When doing biv->giv conversion, fix up
reg_biv_class.
From-SVN: r28413
|
|
* loop.c (check_dbra_loop): When reversing a loop, delete all
REG_EQUAL notes referencing the reversed biv except those which are
for a giv based on it.
From-SVN: r28043
|
|
that appear inside loops.
h
* loop.c (verify_dominator): Properly handle ADDR_VEC and
ADDR_DIFF_VEC insns that appear inside loops.
From-SVN: r27760
|
|
Thu Jun 17 21:34:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
* loop.c (strength_reduce): When doing biv->giv conversion, update
reg note of NEXT->insn.
Thu Jun 17 17:22:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
* loop.c (strength_reduce): When doing biv->giv conversion, fix up
reg_biv_class.
(recombine_givs): Set ix field after sorting.
From-SVN: r27727
|
|
NEXT->insn.
* loop.c (strength_reduce): When doing biv->giv conversion, update
reg note of NEXT->insn.
From-SVN: r27574
|
|
�
* loop.c (move_movables): Note issues with replacing REGs with
SUBREGs.
* mips.h (GO_IF_LEGITIMATE_ADDRESS): Handle SUBREGs properly.
From-SVN: r27573
|
|
* loop.c (strength_reduce): When doing biv->giv conversion, fix up
reg_biv_class.
(recombine_givs): Set ix field after sorting.
From-SVN: r27565
|
|
increment, even if it's the only one.
* loop.c (strength_reduce): Insert sets of derived givs at every
biv increment, even if it's the only one.
From-SVN: r27549
|
|
* loop.c (loop_insn_first_p): Don't compare LUIDs when P
is a note; use <= for the compare; advance P while it is
a NOTE.
From-SVN: r27454
|
|
1999-06-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* loop.c (check_dbra_loop): Fix change of Jan 19.
From-SVN: r27345
|
|
From-SVN: r27194
|
|
CODE_LABEL in a loop if...
* loop.c (strength_reduce): Do not clear NOT_EVERY_ITERATION at the
last CODE_LABEL in a loop if we have previously passed a jump
to the top of the loop.
From-SVN: r27125
|
|
Sun May 23 20:31:16 1999 Jeffrey A Law (law@cygnus.com)
* loop.c (strength_reduce): Grow reg_single_usage as needed.
Sun May 23 10:13:20 1999 David O'Brien <obrien@FreeBSD.org>
* i386/freebsd-elf.h (LINK_SPEC): Change -static to -Bstatic.
Also remove a useless comment.
Sun May 23 10:05:23 1999 Jerry Quinn <jquinn@nortelnetworks.com>
* pa.md (negdf2,negsf2): Use fneg instead of fsub on pa 2.0.
From-SVN: r27111
|
|
* loop.c (maybe_eliminate_biv): Check regno against
max_reg_before_loop.
From-SVN: r26918
|
|
From-SVN: r26299
|
|
libcall.
* loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to
end of libcall.
From-SVN: r26056
|
|
adjustment for remaining givs when...
* loop.c (combine_givs): Fix index into can_combine when doing
benefit adjustment for remaining givs when having combined a giv.
From-SVN: r25998
|
|
From-SVN: r25983
|
|
From-SVN: r25868
|
|
* cccp.c (create_definition): Cast to U_CHAR* when assigning to one.
* cppfiles.c (read_and_prescan): Likewise.
Start a #define in column 0.
* cpplib.c (cpp_define): Cast to U_CHAR* when assigning to one.
(cpp_push_buffer): Likewise for cpp_buffer*.
(do_include): Change the type of `fbeg' and `fend' to unsigned char*.
(do_endif): Cast to char* when assigning to one.
(do_assert): Likewise.
(do_unassert): Likewise.
(cpp_read_check_assertion): Change the type of `name' to U_CHAR*.
Don't do unnecessary cast to char* anymore.
* genrecog.c (make_insn_sequence): Cast to char** when assigning
to one. Cast the first argument of bzero to PTR.
* loop.c (strength_reduce): Remove unused variable `note'.
* reload1.c (new_insn_chain): Cast to struct insn_chain* when
assigning to one.
* rtl.c (copy_rtx): Use memcpy instead of bcopy.
From-SVN: r25860
|
|
references.
From-SVN: r25841
|
|
if we don't know the lifetime.
* loop.c (strength_reduce): Don't do biv increment -> DEST_REG giv
conversion if we don't know the lifetime.
From-SVN: r25702
|
|
* rtl.h (insn_first_p): Don't declare.
* rtlanal.c (insn_first_p): Delete.
* loop.c (loop_insn_first_p): Faster implementation.
From-SVN: r25436
|
|
* loop.h (loop_insn_first_p): Declare.
* loop.c (loop_insn_first_p): No longer static.
* unroll.c (iteration_info) Fix comparison to
reg_iv_type->num_elements.
Before accessing reg_biv_class, check index against
max_reg_before_loop.
Fix and enable code for giv iterators.
(loop_iterations): Compare with reg_iv_type->num_elements instead
of with max_reg_before_loop.
From-SVN: r25401
|
|
* loop.c (libcall_other_regs): Make extern.
* rtl.h (find_last_value): Add parameter to prototype.
(libcall_other_reg): Add extern declaration.
* rtlanal.c (find_last_value): Add another parameter to allow
a definition using a hardware register to be found as well.
From-SVN: r25378
|
|
* rtlanal.c (insn_first_p): Fix return value for insn == reference.
* loop.c (strength_reduce, check_final_value, check_dbra_loop):
Use loop_insn_first_p.
From-SVN: r25321
|
|
increment to giv.
* loop.c (strength_reduce): Check for intervening jumps when
converting biv increment to giv.
From-SVN: r25310
|
|
from with its new_reg.
* loop.c (strength_reduce): For derived givs, replace the
giv this was derived from with its new_reg.
(recombine_givs): Don't set new_reg for derived giv.
And don't print it, print SUM instead.
From-SVN: r25289
|
|
scan_start.
* loop.c (strength_reduce): Don't move giv insn for biv turned giv
below scan_start.
From-SVN: r25264
|
|
* loop.c (strength_reduce): Calculate maybe_dead before
calling recombine_givs.
From-SVN: r25251
|
|
From-SVN: r25250
|
|
�
* loop.c (mark_loop_jump): Handle LO_SUM. If we encounter something
we do not understand, mark the loop and containing loops as invalid.
From-SVN: r25215
|
|
* loop.c: Disable recent loop changes. Temporary as Joern
continues to fix problems.
From-SVN: r25184
|
|
* loop.c (combine_givs_used_by_other): Delete.
(combine_givs_benefit_from): Delete.
(combine_givs): Deny combination of givs only used once. Simplify
code with the death of combine_givs_benefit_from.
From-SVN: r25183
|
|
* loop.c (scan_loop): Call reg_in_basic_block_p before
loop_reg_used_before_p.
From-SVN: r25182
|
|
* loop.c (loop_insn_first_p, biv_elimination_giv_has_0_offset):
New functions.
(maybe_eliminate_biv_1): Use biv_elimination_giv_has_0_offset.
From-SVN: r25167
|
|
* loop.c (load_mems): Don't guess how to do a load / store, use
emit_move_insn.
From-SVN: r25165
|
|
* loop.c (reg_single_usage): New file-scope variable ...
(scan_loop): ... moved out of here. Always initialize.
Test loop_has_call instead of reg_single_usage not zero.
Free reg_single_usage after strength reduction.
(count_loop_regs_set): Assume single_usage non-zero.
(combine_givs_used_by_other): Test reg_single_usage.
(load_mems_and_recount_loop_regs_set): Remove reg_single_usage
as a parameter. Assume non-zero.
From-SVN: r25098
|
|
life information is not...
* loop.c (check_dbra_loop): A store using an address giv for which
we have no life information is not reversible.
From-SVN: r25051
|
|
NOTE_INSN_LOOP_CONT note.
* loop.c (strength_reduce): Clear not_every_iteration when
passing the NOTE_INSN_LOOP_CONT note.
From-SVN: r25050
|
|
* loop.c (first_loop_store_insn): New file-scope variable.
(prescan_loop): Set it.
(check_dbra_loop): Check if a store depends on a register
that is set after the store.
From-SVN: r25034
|
|
* loop.c (scan_loop): New argument loop_cont. Changed caller.
(strength_reduce): New argument loop_cont. Changed caller.
Before clearing not_every_iteration after a label, check if
we are not already past LOOP_CONT.
From-SVN: r25026
|
|
* loop.h (express_from): Declare.
(struct induction): Replace derived flag with derived_from pointer.
* loop.c (strength_reduce, record_giv, recombine_givs): Likewise.
(express_from): No longer static.
* unroll.c (find_splittable_givs): Replace derived with derived_from.
When processing an address giv with which another giv has been
combined that has also been derived from a third giv, handle like
having combined with the third giv.
Set splittable_regs_updates appropriately for derived givs.
From-SVN: r25007
|
|
find_and_verify_loops call.
* loop.c (loop_optimize): Fix value max_uid_for_loop is reset
to after find_and_verify_loops call.
From-SVN: r24973
|
|
* (recombine_givs): Don't use a giv that's likely to be dead to
derive others.
* loop.c (recombine_givs): Fix test for lifetime overlaps / loop
wrap around when deriving givs.
From-SVN: r24967
|
|
From-SVN: r24948
|
|
* loop.c: Disable recent loop changes. Temporary as Joern
continues to fix problems.
From-SVN: r24916
|
|
From-SVN: r24910
|
|
From-SVN: r24906
|