From 43ecf6e8284153ad5b88077268ae33d631c70611 Mon Sep 17 00:00:00 2001 From: Joern Rennecke Date: Tue, 26 Mar 2002 17:22:16 +0000 Subject: [PATCH] * libc/machine/sh/memcpy.S (Large): Fix alignment rounding. Store high part of leading bytes too. --- newlib/ChangeLog | 5 +++++ newlib/libc/machine/sh/memcpy.S | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 0c0f412d7..16093e724 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +Tue Mar 26 17:17:10 2002 J"orn Rennecke + + * libc/machine/sh/memcpy.S (Large): Fix alignment rounding. + Store high part of leading bytes too. + 2002-03-22 Richard Sandiford * libm/math/ef_hypot.c: Increase scale factor to 68. diff --git a/newlib/libc/machine/sh/memcpy.S b/newlib/libc/machine/sh/memcpy.S index 791bc8b10..56e6c6f43 100644 --- a/newlib/libc/machine/sh/memcpy.S +++ b/newlib/libc/machine/sh/memcpy.S @@ -134,7 +134,7 @@ L8_15: /* 8..15 byte memcpy cntd. */ Large: ld.b r2, 0, r63 pta/l Loop_ua, tr1 - andi r3, 7, r7 + ori r3, -8, r7 sub r2, r7, r22 sub r3, r2, r6 add r2, r4, r5 @@ -142,6 +142,7 @@ Large: addi r5, -16, r5 movi 64+8, r27 // could subtract r7 from that. stlo.q r2, 0, r0 + sthi.q r2, 7, r0 ldx.q r22, r6, r0 bgtu/l r27, r4, tr1