Date: Mon, 7 Apr 2003 00:59:45 -0700 (PDT) From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 28416 for review Message-ID: <200304070759.h377xjPb050730@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=28416 Change 28416 by peter@peter_overcee on 2003/04/07 00:58:49 add 8-byte PCPU* implementation Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcpu.h#6 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcpu.h#6 (text+ko) ==== @@ -104,6 +104,12 @@ : "=r" (__i) \ : "m" (*(u_int *)(__pcpu_offset(name)))); \ __result = *(__pcpu_type(name) *)&__i; \ + } else if (sizeof(__result) == 8) { \ + u_long __l; \ + __asm __volatile("movq %%fs:%1,%0" \ + : "=r" (__l) \ + : "m" (*(u_long *)(__pcpu_offset(name)))); \ + __result = *(__pcpu_type(name) *)&__l; \ } else { \ __result = *__PCPU_PTR(name); \ } \ @@ -135,6 +141,12 @@ __asm __volatile("movl %1,%%fs:%0" \ : "=m" (*(u_int *)(__pcpu_offset(name))) \ : "r" (__i)); \ + } else if (sizeof(__val) == 8) { \ + u_long __l; \ + __l = *(u_long *)&__val; \ + __asm __volatile("movq %1,%%fs:%0" \ + : "=m" (*(u_long *)(__pcpu_offset(name))) \ + : "r" (__l)); \ } else { \ *__PCPU_PTR(name) = __val; \ } \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304070759.h377xjPb050730>