about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/alpha/alphaev67/strncat.S4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a5eeabb425..e271aec347 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2001-02-07  Ulrich Drepper  <drepper@redhat.com>
 
+	* sysdeps/alpha/alphaev67/strncat.S: Align last write address.
+	Patch by Richard Henderson <rth@redhat.com>.
+	Reported by Claus-Justus Heine <heine@instmath.rwth-aachen.de>.
+
 	* stdlib/strfmon.c [USE_IN_LIBIO]: Define lock variable and store
 	point in FILE structure before calling _IO_init.
 	* stdlib/Makefile: Add -D_IO_MTSAFE_IO to CFLAGS for strfmon and
diff --git a/sysdeps/alpha/alphaev67/strncat.S b/sysdeps/alpha/alphaev67/strncat.S
index 31ca19d299..4e16f83824 100644
--- a/sysdeps/alpha/alphaev67/strncat.S
+++ b/sysdeps/alpha/alphaev67/strncat.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
    Contributed by Richard Henderson <rth@tamu.edu>, 1996.
    EV67 optimized by Rick Gorton <rick.gorton@alpha-processor.com>.
 
@@ -66,7 +66,7 @@ $found:	cttz	t1, t2		# U0 :
 	/* Worry about the null termination.  */
 
 	cttz	t10, t2		# U0: byte offset of end-of-count.
-	nop			# E :
+	bic	a0, 7, a0	# E : word align the last write address.
 	zapnot	t0, t8, t1	# U : was last byte a null?
 	nop			# E :