about summary refs log tree commit diff
path: root/sysdeps/vax/strncpy.s
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2004-11-02 12:26:42 +0000
committerJakub Jelinek <jakub@redhat.com>2004-11-02 12:26:42 +0000
commit80c96e8e6f452d6d9803f5a2e17030658f30afc4 (patch)
treeef584f35ed7167c7a680783415a66799c3789233 /sysdeps/vax/strncpy.s
parent0b5cfa4e0b7c9dc2cd81635307613c86c0f5e200 (diff)
downloadglibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.tar.gz
glibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.tar.xz
glibc-80c96e8e6f452d6d9803f5a2e17030658f30afc4.zip
Updated to fedora-glibc-20041102T1153
Diffstat (limited to 'sysdeps/vax/strncpy.s')
-rw-r--r--sysdeps/vax/strncpy.s80
1 files changed, 0 insertions, 80 deletions
diff --git a/sysdeps/vax/strncpy.s b/sysdeps/vax/strncpy.s
deleted file mode 100644
index ade70e9dca..0000000000
--- a/sysdeps/vax/strncpy.s
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-	.asciz "@(#)strncpy.s	5.6 (Berkeley) 6/1/90"
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * Copy string s2 over top of string s1.
- * Truncate or null-pad to n bytes.
- *
- * char *
- * strncpy(s1, s2, n)
- *	char *s1, *s2;
- */
-#include "DEFS.h"
-
-ENTRY(strncpy, R6)
-	movl	12(ap),r6	# r6 = n
-	bleq	done		# n <= 0
-	movl	4(ap),r3	# r3 = s1
-	movl	8(ap),r1	# r1 = s2
-1:
-	movzwl	$65535,r2	# r2 = bytes in first chunk
-	cmpl	r6,r2		# r2 = min(bytes in chunk, n);
-	jgeq	2f
-	movl	r6,r2
-2:
-	subl2	r2,r6		# update n
-	locc	$0,r2,(r1)	# '\0' found?
-	jneq	3f
-	subl2	r2,r1		# back up pointer updated by locc
-	movc3	r2,(r1),(r3)	# copy in next piece
-	tstl	r6		# run out of space?
-	jneq	1b
-	jbr	done
-3:				# copy up to '\0' logic
-	addl2	r0,r6		# r6 = number of null-pad bytes
-	subl2	r0,r2		# r2 = number of bytes to move
-	subl2	r2,r1		# back up pointer updated by locc
-	movc3	r2,(r1),(r3)	# copy in last piece
-4:				# null-pad logic
-	movzwl	$65535,r2	# r2 = bytes in first chunk
-	cmpl	r6,r2		# r2 = min(bytes in chunk, n);
-	jgeq	5f
-	movl	r6,r2
-5:
-	subl2	r2,r6		# update n
-	movc5	$0,(r3),$0,r2,(r3)# pad with '\0's
-	tstl	r6		# finished padding?
-	jneq	4b
-done:
-	movl	4(ap),r0	# return s1
-	ret