about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/arm/mmap.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-01-03 23:22:35 +0000
committerUlrich Drepper <drepper@redhat.com>2000-01-03 23:22:35 +0000
commite3aaaa2732fbde38c612442fe4f688f2f58801ff (patch)
treef16913c7c265e58265196e60e2bb8cb8546843fc /sysdeps/unix/sysv/linux/arm/mmap.S
parent1ecdfd325432b2d91d2bb3fdf289a88df8deee61 (diff)
downloadglibc-e3aaaa2732fbde38c612442fe4f688f2f58801ff.tar.gz
glibc-e3aaaa2732fbde38c612442fe4f688f2f58801ff.tar.xz
glibc-e3aaaa2732fbde38c612442fe4f688f2f58801ff.zip
Update.
2000-01-03  Philip Blundell  <philb@gnu.org>

	* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_MMAP2_SYSCALL,
	__ASSUME_TRUNCATE64_SYSCALL, __ASSUME_STAT64_SYSCALL): Define on
	ARM for kernels >= 2.3.35.

2000-01-03  Philip Blundell  <philb@gnu.org>

	* sysdeps/unix/sysv/linux/arm/mmap.S: Remove mmap64 alias.
	Optimise error handling a little.
	* sysdeps/unix/sysv/linux/arm/mmap64.S: New file.
Diffstat (limited to 'sysdeps/unix/sysv/linux/arm/mmap.S')
-rw-r--r--sysdeps/unix/sysv/linux/arm/mmap.S13
1 files changed, 6 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/arm/mmap.S b/sysdeps/unix/sysv/linux/arm/mmap.S
index fcff57c55d..31d57e4a4d 100644
--- a/sysdeps/unix/sysv/linux/arm/mmap.S
+++ b/sysdeps/unix/sysv/linux/arm/mmap.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,12 +23,12 @@
 ENTRY (__mmap)
 
 	/* Because we can only get five args through the syscall interface, and
-	   mmap() takes six, we need to build a parameter block and pass its	
+	   mmap() takes six, we need to build a parameter block and pass its
 	   address instead.  The 386 port does a similar trick.  */
 
 	/* This code previously moved sp into ip and stored the args using
-	   stmdb ip!, {a1-a4}.  It did not modify sp, so the stack never had 
-	   to be restored after the syscall completed.  It saved an 
+	   stmdb ip!, {a1-a4}.  It did not modify sp, so the stack never had
+	   to be restored after the syscall completed.  It saved an
 	   instruction and meant no stack cleanup work was required.
 
 	   This will not work in the case of a mmap call being interrupted
@@ -47,10 +47,9 @@ ENTRY (__mmap)
 	add	sp, sp, #16
 
 	cmn	r0, $4096
-	bhs	PLTJMP(syscall_error);
-	ret
+	RETINSTR(movcc, pc, lr)
+	b	PLTJMP(syscall_error);
 
 PSEUDO_END (__mmap)
 
 weak_alias (__mmap, mmap)
-weak_alias (__mmap, mmap64)