This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.22-7-g2aa6c8a


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  2aa6c8af26e65695e9daf382a6e508574a30cdf2 (commit)
      from  42eaa27fac748edc54b780539fbd9a18921454ba (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=2aa6c8af26e65695e9daf382a6e508574a30cdf2

commit 2aa6c8af26e65695e9daf382a6e508574a30cdf2
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Mon Jul 6 13:00:29 2015 +0000

    arm: Assembly implementation cleanup
    
    This patch removes arm assembly implementation of mmap and mmap64.
    The new implementation used is the wordsize-32 generic linux one.
    
    Tested on armhf.

diff --git a/ChangeLog b/ChangeLog
index a228926..fd0fd74 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-08-05  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+	* sysdeps/unix/sysv/linux/arm/mmap.c: Add file.
+	* sysdeps/unix/sysv/linux/arm/mmap.S: Remove file.
+	* sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
+
 2015-08-05  Marko Myllynen  <myllynen@redhat.com>
 
 	[BZ #18525]
diff --git a/sysdeps/unix/sysv/linux/arm/mmap.S b/sysdeps/unix/sysv/linux/arm/mmap.S
deleted file mode 100644
index 4fb5bf4..0000000
--- a/sysdeps/unix/sysv/linux/arm/mmap.S
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright (C) 1998-2015 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
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-
-#define	EINVAL		22
-
-	.text
-
-ENTRY (__mmap)
-	/* shuffle args */
-	push	{ r5 }
-	cfi_adjust_cfa_offset (4)
-	cfi_rel_offset (r5, 0)
-	ldr	r5, [sp, #8]
-	push	{ r4 }
-	cfi_adjust_cfa_offset (4)
-	cfi_rel_offset (r4, 0)
-	cfi_remember_state
-	ldr	r4, [sp, #8]
-
-	/* convert offset to pages */
-	movs	ip, r5, lsl #20
-	bne	.Linval
-	mov	r5, r5, lsr #12
-
-	/* do the syscall */
-	DO_CALL (mmap2, 0)
-
-	/* restore registers */
-2:
-	pop	{ r4 }
-	cfi_adjust_cfa_offset (-4)
-	cfi_restore (r4)
-	pop	{ r5 }
-	cfi_adjust_cfa_offset (-4)
-	cfi_restore (r5)
-
-	cmn	r0, $4096
-	it	cc
-	RETINSTR(cc, lr)
-	b	PLTJMP(syscall_error)
-
-	cfi_restore_state
-.Linval:
-	mov	r0, #-EINVAL
-	b	2b
-PSEUDO_END (__mmap)
-
-weak_alias (__mmap, mmap)
diff --git a/sysdeps/unix/sysv/linux/arm/mmap.c b/sysdeps/unix/sysv/linux/arm/mmap.c
new file mode 100644
index 0000000..2cb4907
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/mmap.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2015 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#include <sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c>
diff --git a/sysdeps/unix/sysv/linux/arm/mmap64.S b/sysdeps/unix/sysv/linux/arm/mmap64.S
deleted file mode 100644
index d574df0..0000000
--- a/sysdeps/unix/sysv/linux/arm/mmap64.S
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright (C) 2000-2015 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
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sysdep.h>
-
-	.syntax unified
-
-#define	EINVAL		22
-
-#ifdef __ARMEB__
-# define LOW_OFFSET      8 + 4
-/* The initial + 4 is for the stack postdecrement.  */
-# define HIGH_OFFSET 4 + 8 + 0
-#else
-# define LOW_OFFSET      8 + 0
-# define HIGH_OFFSET 4 + 8 + 4
-#endif
-
-	/* The mmap2 system call takes six arguments, all in registers.  */
-	.text
-ENTRY (__mmap64)
-	ldr	ip, [sp, $LOW_OFFSET]
-	push	{ r5 }
-	cfi_adjust_cfa_offset (4)
-	cfi_rel_offset (r5, 0)
-	ldr	r5, [sp, $HIGH_OFFSET]
-	push	{ r4 }
-	cfi_adjust_cfa_offset (4)
-	cfi_rel_offset (r4, 0)
-	cfi_remember_state
-	movs	r4, ip, lsl $20		@ check that offset is page-aligned
-	mov	ip, ip, lsr $12
-	it	eq
-	movseq	r4, r5, lsr $12		@ check for overflow
-	bne	.Linval
-	ldr	r4, [sp, $8]		@ load fd
-	orr	r5, ip, r5, lsl $20	@ compose page offset
-	DO_CALL (mmap2, 0)
-	cmn	r0, $4096
-	pop	{r4, r5}
-	cfi_adjust_cfa_offset (-8)
-	cfi_restore (r4)
-	cfi_restore (r5)
-	it	cc
-	RETINSTR(cc, lr)
-	b	PLTJMP(syscall_error)
-
-	cfi_restore_state
-.Linval:
-	mov	r0, $-EINVAL
-	pop	{r4, r5}
-	cfi_adjust_cfa_offset (-8)
-	cfi_restore (r4)
-	cfi_restore (r5)
-	b	PLTJMP(syscall_error)
-PSEUDO_END (__mmap64)
-
-weak_alias (__mmap64, mmap64)

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                          |    6 ++
 sysdeps/unix/sysv/linux/arm/mmap.S                 |   64 -----------------
 .../sysv/linux/arm/mmap.c}                         |    8 +--
 sysdeps/unix/sysv/linux/arm/mmap64.S               |   72 --------------------
 4 files changed, 8 insertions(+), 142 deletions(-)
 delete mode 100644 sysdeps/unix/sysv/linux/arm/mmap.S
 copy sysdeps/{mips/tst-abi-fp32mod.c => unix/sysv/linux/arm/mmap.c} (86%)
 delete mode 100644 sysdeps/unix/sysv/linux/arm/mmap64.S


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]