PERFORCE change 28416 for review
Peter Wemm
peter at FreeBSD.org
Mon Apr 7 00:59:48 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=28416
Change 28416 by peter at 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; \
} \
More information about the p4-projects
mailing list