aboutsummaryrefslogtreecommitdiff
path: root/gcc/unroll.c
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2000-02-01 23:51:38 +0000
committerZack Weinberg <zack@gcc.gnu.org>2000-02-01 23:51:38 +0000
commit78a0d70cdf5502320158d1a3ff41f5bdcadabdb0 (patch)
tree5baaef8b878781ee490f5410e86c28c9499bd88f /gcc/unroll.c
parentf232183759f43faadb2a392c6e03aaacd2172371 (diff)
downloadgcc-78a0d70cdf5502320158d1a3ff41f5bdcadabdb0.zip
gcc-78a0d70cdf5502320158d1a3ff41f5bdcadabdb0.tar.gz
gcc-78a0d70cdf5502320158d1a3ff41f5bdcadabdb0.tar.bz2
frame.c (find_fde): Convert for loop to do-while so compiler sees it's always executed at least once.
* frame.c (find_fde): Convert for loop to do-while so compiler sees it's always executed at least once. * libgcc2.c (BBINBUFSIZE): Kill. (__bb_init_prg): Use fgets. (__bb_exit_trace_func): Don't paste strings. * unroll.c (unroll_loop): Initialize unroll_type, not unroll_number, and tweak logic to match. * i386.c (ix86_expand_int_movcc): Add explicit 'return 0' in all failure paths. (ix86_flags_dependant): Likewise. Disentangle control flow. (ix86_sched_reorder): Break guts out to ix86_sched_reorder_pentium and ix86_sched_reorder_ppro. (ix86_sched_reorder_ppro): Initialize pair2 and insnp before any possible use. * i386.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Don't use string concatenation. Don't save and restore esi. * fixinc/Makefile.in (fixincl.sh): Don't depend on inclhack.def. (machname.h): Remove script to separate file. Use two-step sequence so target is not created if script fails. * fixinc/gen-machname.h: New file. Handle case where no non-reserved identifiers are defined. * fixinc/fixlib.c (mn_get_regexps): Return a flag: if MN_NAME_PAT is an empty string, machine_name doesn't need to do anything at all. (is_cxx_header): Add more cases to regexp. * fixinc/fixlib.h: Update prototype. * fixinc/fixtests.c, fixinc/fixfixes.c: Update callers of mn_get_regexps. * fixinc/fixincl.c: Define NO_BOGOSITY. * fixinc/inclhack.def (no_double_slash, else_endif_label): Ifdef out. (hp_sysfile): Add missing comma. (math_exception): Put the wrapper ifdefs at the beginning and the end of the file. * fixinc/fixincl.x, fixinc/inclhack.sh: Regenerate. From-SVN: r31744
Diffstat (limited to 'gcc/unroll.c')
-rw-r--r--gcc/unroll.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/unroll.c b/gcc/unroll.c
index 7f3658e..780a7bd 100644
--- a/gcc/unroll.c
+++ b/gcc/unroll.c
@@ -234,7 +234,7 @@ unroll_loop (loop, insn_count, end_insert_before, strength_reduce_p)
{
int i, j;
unsigned HOST_WIDE_INT temp;
- int unroll_number = 1;
+ int unroll_number;
rtx copy_start, copy_end;
rtx insn, sequence, pattern, tem;
int max_labelno, max_insnno;
@@ -248,7 +248,7 @@ unroll_loop (loop, insn_count, end_insert_before, strength_reduce_p)
rtx start_label;
struct iv_class *bl;
int splitting_not_safe = 0;
- enum unroll_types unroll_type;
+ enum unroll_types unroll_type = UNROLL_NAIVE;
int loop_preconditioned = 0;
rtx safety_label;
/* This points to the last real insn in the loop, which should be either
@@ -437,7 +437,7 @@ unroll_loop (loop, insn_count, end_insert_before, strength_reduce_p)
/* Default case, calculate number of times to unroll loop based on its
size. */
- if (unroll_number == 1)
+ if (unroll_type == UNROLL_NAIVE)
{
if (8 * insn_count < MAX_UNROLLED_INSNS)
unroll_number = 8;
@@ -445,8 +445,6 @@ unroll_loop (loop, insn_count, end_insert_before, strength_reduce_p)
unroll_number = 4;
else
unroll_number = 2;
-
- unroll_type = UNROLL_NAIVE;
}
/* Now we know how many times to unroll the loop. */