public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* support PSEUDO_ERRVAL on arm
@ 2003-08-25 15:09 Philip Blundell
  2003-08-25 15:12 ` Jakub Jelinek
  2003-08-25 18:31 ` Ulrich Drepper
  0 siblings, 2 replies; 5+ messages in thread
From: Philip Blundell @ 2003-08-25 15:09 UTC (permalink / raw)
  To: libc-hacker

[-- Attachment #1: Type: text/plain, Size: 30 bytes --]

Here's a patch for this.

p.


[-- Attachment #2: pseudo_errval.diff --]
[-- Type: text/plain, Size: 1075 bytes --]

2003-08-25  Philip Blundell  <philb@gnu.org>

	* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
	(PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.

Index: sysdeps/unix/sysv/linux/arm/sysdep.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/arm/sysdep.h,v
retrieving revision 1.24
diff -u -p -r1.24 sysdep.h
--- sysdeps/unix/sysv/linux/arm/sysdep.h	27 Mar 2003 02:45:49 -0000	1.24
+++ sysdeps/unix/sysv/linux/arm/sysdep.h	25 Aug 2003 15:07:51 -0000
@@ -80,6 +80,20 @@
 #define	PSEUDO_END_NOERRNO(name)					      \
   END (name)
 
+/* The function has to return the error code.  */
+#undef	PSEUDO_ERRVAL
+#define	PSEUDO_ERRVAL(name, syscall_name, args) \
+  .text;								      \
+  ENTRY (name)								      \
+    DO_CALL (syscall_name, args);					      \
+    rsb r0, r0, #0
+
+#undef	PSEUDO_END_ERRVAL
+#define	PSEUDO_END_ERRVAL(name) \
+  END (name)
+
+#define ret_ERRVAL PSEUDO_RET_NOERRNO
+
 #if NOT_IN_libc
 # define SYSCALL_ERROR __local_syscall_error
 # define SYSCALL_ERROR_HANDLER					\

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-08-31 18:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-08-25 15:09 support PSEUDO_ERRVAL on arm Philip Blundell
2003-08-25 15:12 ` Jakub Jelinek
2003-08-31 14:37   ` Philip Blundell
2003-08-31 18:14     ` Ulrich Drepper
2003-08-25 18:31 ` Ulrich Drepper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).