about summary refs log tree commit diff
path: root/sysdeps/unix/sysv
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2000-12-05 09:29:23 +0000
committerAndreas Jaeger <aj@suse.de>2000-12-05 09:29:23 +0000
commite22669a31293a1ed284a291e8248a405daefe27b (patch)
treef0e0be013ea58770e95868039cf60bac00c4b3f6 /sysdeps/unix/sysv
parentcf3141a59dc73a8082a701c8f16842adab4ab09a (diff)
downloadglibc-e22669a31293a1ed284a291e8248a405daefe27b.tar.gz
glibc-e22669a31293a1ed284a291e8248a405daefe27b.tar.xz
glibc-e22669a31293a1ed284a291e8248a405daefe27b.zip
Update.
2000-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>

        * sysdeps/unix/sysv/linux/s390/mmap64.S: Use mmap if mmap2 isn't
	available.
Diffstat (limited to 'sysdeps/unix/sysv')
-rw-r--r--sysdeps/unix/sysv/linux/s390/mmap64.S96
1 files changed, 48 insertions, 48 deletions
diff --git a/sysdeps/unix/sysv/linux/s390/mmap64.S b/sysdeps/unix/sysv/linux/s390/mmap64.S
index 96b2af5741..b42ff6f22c 100644
--- a/sysdeps/unix/sysv/linux/s390/mmap64.S
+++ b/sysdeps/unix/sysv/linux/s390/mmap64.S
@@ -9,93 +9,93 @@
 
    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
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
    Library General Public License for more details.
 
    You should have received a copy of the GNU Library General Public
    License along with the GNU C Library; see the file COPYING.LIB.  If not,
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   Boston, MA 02111-1307, USA.	*/
 
 #include <sysdep.h>
 
-#define EINVAL  22
-#define ENOSYS  38
+#define EINVAL	22
+#define ENOSYS	38
 
 	.text
 ENTRY(__mmap64)
 	/* Save registers and setup stack frame.  */
-	stm     %r6,%r15,24(%r15)
-	lr      %r1,%r15
-	ahi     %r15,-120               /* Buy stack space.   */
-	st      %r1,0(%r15)             /* Store back chain.  */
+	stm	%r6,%r15,24(%r15)
+	lr	%r1,%r15
+	ahi	%r15,-120		/* Buy stack space.   */
+	st	%r1,0(%r15)		/* Store back chain.  */
 
 	/* Store parameters on stack, because mmap2 and old_mmap
 	 * take only one parameter: a pointer to the parameter area.  */
-	st      %r6,0x70(%r15)          /* Store 'fd'.      */
-	st      %r5,0x6C(%r15)          /* Store 'flags'.   */
-	st      %r4,0x68(%r15)          /* Store 'prot'.    */
-	st      %r3,0x64(%r15)          /* Store 'length'.  */
-	st      %r2,0x60(%r15)          /* Store 'start'.   */
+	st	%r6,0x70(%r15)		/* Store 'fd'.	    */
+	st	%r5,0x6C(%r15)		/* Store 'flags'.   */
+	st	%r4,0x68(%r15)		/* Store 'prot'.    */
+	st	%r3,0x64(%r15)		/* Store 'length'.  */
+	st	%r2,0x60(%r15)		/* Store 'start'.   */
 
 #ifdef __NR_mmap2
-	lm      %r0,%r1,216(%r15)       /* Load 64 bit offset.  */
-	tml     %r1,0x0fff              /* Offset page aligned ?  */
-	jnz     2f                      /* No -> EINVAL.  */
-	srdl    %r0,12                  /* mmap2 takes the offset in pages.  */
-	ltr     %r0,%r0                 /* Offset > 2^44 ?  */
-	jnz     2f
-	st      %r1,0x74(%r15)          /* Store page offset.  */
+	lm	%r0,%r1,216(%r15)	/* Load 64 bit offset.	*/
+	tml	%r1,0x0fff		/* Offset page aligned ?  */
+	jnz	2f			/* No -> EINVAL.  */
+	srdl	%r0,12			/* mmap2 takes the offset in pages.  */
+	ltr	%r0,%r0			/* Offset > 2^44 ?  */
+	jnz	2f
+	st	%r1,0x74(%r15)		/* Store page offset.  */
 
-	la      %r2,0x60(%r15)          /* Load address of parameter list.  */
-	svc     SYS_ify(mmap2)          /* Do the system call trap.  */
+	la	%r2,0x60(%r15)		/* Load address of parameter list.  */
+	svc	SYS_ify(mmap2)		/* Do the system call trap.  */
 
 #ifndef __ASSUME_MMAP2_SYSCALL
-	chi     %r0,-ENOSYS
+	chi	%r0,-ENOSYS
 	je	1f
 #endif
 
-	l       %r15,0(%r15)            /* Load back chain.  */
-	lm      %r6,%r15,24(%r15)       /* Load registers.  */
+	l	%r15,0(%r15)		/* Load back chain.  */
+	lm	%r6,%r15,24(%r15)	/* Load registers.  */
 
 	/* Check gpr 2 for error.  */
-	lhi     %r0,-4096
-	clr     %r2,%r0
-	jnl     SYSCALL_ERROR_LABEL
+	lhi	%r0,-4096
+	clr	%r2,%r0
+	jnl	SYSCALL_ERROR_LABEL
 
 	/* Successful; return the syscall's value.  */
-	br      %r14
+	br	%r14
 
 #endif
 
 #if !defined __ASSUME_MMAP2_SYSCALL || !defined __NR_mmap2
-1:	lm      %r0,%r1,216(%r15)       /* Load 64 bit offset.  */
-	st      %r1,0x74(%r15)          /* Store lower word of offset.  */
-	ltr     %r0,%r0                 /* Offset > 2^32 ?  */
-	jnz     2f
-	alr     %r1,%r3                 /* Add length to offset.  */
-	brc     3,2f                    /* Carry -> EINVAL.  */
+1:	lm	%r0,%r1,216(%r15)	/* Load 64 bit offset.	*/
+	st	%r1,0x74(%r15)		/* Store lower word of offset.	*/
+	ltr	%r0,%r0			/* Offset > 2^32 ?  */
+	jnz	2f
+	alr	%r1,%r3			/* Add length to offset.  */
+	brc	3,2f			/* Carry -> EINVAL.  */
 
-	la      %r2,0x60(%r15)          /* Load address of parameter list.  */
-	svc     SYS_ify(mmap2)          /* Do the system call trap.  */
+	la	%r2,0x60(%r15)		/* Load address of parameter list.  */
+	svc	SYS_ify(mmap)	/* Do the system call trap.  */
 
-	l       %r15,0(%r15)            /* Load back chain.  */
-	lm      %r6,%r15,24(%r15)       /* Load registers.  */
+	l	%r15,0(%r15)		/* Load back chain.  */
+	lm	%r6,%r15,24(%r15)	/* Load registers.  */
 
 	/* Check gpr 2 for error.  */
-	lhi     %r0,-4096
-	clr     %r2,%r0
-	jnl     SYSCALL_ERROR_LABEL
+	lhi	%r0,-4096
+	clr	%r2,%r0
+	jnl	SYSCALL_ERROR_LABEL
 
 	/* Successful; return the syscall's value.  */
-	br      %r14
+	br	%r14
 #endif
 
-2:	lhi     %r2,-EINVAL
-	l       %r15,0(%r15)            /* Load back chain.  */
-	lm      %r6,%r15,24(%r15)       /* Load registers.  */
-	j       SYSCALL_ERROR_LABEL
-	
+2:	lhi	%r2,-EINVAL
+	l	%r15,0(%r15)		/* Load back chain.  */
+	lm	%r6,%r15,24(%r15)	/* Load registers.  */
+	j	SYSCALL_ERROR_LABEL
+
 PSEUDO_END (__mmap64)
 
 weak_alias (__mmap64, mmap64)