aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/unroll.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4d8f88a..8597b35 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
+ * unroll.c (copy_loop_body): Fix one instance of using host
+ arithmetic on the target; fixes loop-4 on a 32-bit -> 64-bit
+ cross-compile.
+
* tlink.c (scan_linker_output): Tweak for output of AIX ld.
2000-07-17 Richard Henderson <rth@cygnus.com>
diff --git a/gcc/unroll.c b/gcc/unroll.c
index f8dfc03..3197053 100644
--- a/gcc/unroll.c
+++ b/gcc/unroll.c
@@ -1940,8 +1940,9 @@ copy_loop_body (copy_start, copy_end, map, exit_label, last_iteration,
#endif
splittable_regs[regno]
- = GEN_INT (INTVAL (giv_inc)
- + INTVAL (splittable_regs[src_regno]));
+ = simplify_gen_binary (PLUS, GET_MODE (giv_src_reg),
+ giv_inc,
+ splittable_regs[src_regno]);
giv_inc = splittable_regs[regno];
/* Now split the induction variable by changing the dest