Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 May 2003 12:30:18 -0700 (PDT)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 32197 for review
Message-ID:  <200305311930.h4VJUIEG018326@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=32197

Change 32197 by marcel@marcel_nfs on 2003/05/31 12:29:23

	Don't openly demonstrate my natural tendency towards fickleness.
	Coerce on using uint64_t in all applicable cases instead of an
	almost randomly (but not quite) use of long, intptr_t and uint64_t.
	
	While here, create a typedef for the threads start function as
	used by the wrapper (ie internal implementation specific view).

Affected files ...

.. //depot/projects/ia64/lib/libc/ia64/gen/makecontext.c#2 edit

Differences ...

==== //depot/projects/ia64/lib/libc/ia64/gen/makecontext.c#2 (text+ko) ====

@@ -38,8 +38,11 @@
 	uint64_t gp;
 };
 
-static __inline uint64_t*
-spill(uint64_t *bsp, intptr_t arg)
+typedef void (*func_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t,
+    uint64_t, uint64_t, uint64_t);
+
+static __inline uint64_t *
+spill(uint64_t *bsp, uint64_t arg)
 {
 	*bsp++ = arg;
 	if (((intptr_t)bsp & 0x1ff) == 0x1f8)
@@ -48,9 +51,7 @@
 }
 
 static void
-ctx_wrapper(ucontext_t *ucp,
-    void (*func)(long, long, long, long, long, long, long, long),
-    uint64_t *args)
+ctx_wrapper(ucontext_t *ucp, func_t func, uint64_t *args)
 {
 
 	(*func)(args[0], args[1], args[2], args[3], args[4], args[5], args[6],
@@ -92,7 +93,7 @@
 	args = (uint64_t*)(ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size) - 8;
 	i = 0;
 	while (i < argc)
-		args[i++] = va_arg(ap, intptr_t);
+		args[i++] = va_arg(ap, uint64_t);
 	while (i < 8)
 		args[i++] = 0;
 	va_end(ap);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200305311930.h4VJUIEG018326>