]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-powerpc/asm-compat.h
virtio: clarify that ABI is usable by any implementations
[linux-2.6-omap-h63xx.git] / include / asm-powerpc / asm-compat.h
index 8e64be0cc47d3d0f7579445af6726a661f50a17b..8f0fe797194992829dd5926ef2d80605415e5059 100644 (file)
@@ -14,6 +14,7 @@
 #  define ASM_CONST(x)         __ASM_CONST(x)
 #endif
 
+
 #ifdef __powerpc64__
 
 /* operations for longs and pointers */
 #define PPC_STL                stringify_in_c(std)
 #define PPC_LCMPI      stringify_in_c(cmpdi)
 #define PPC_LONG       stringify_in_c(.llong)
+#define PPC_LONG_ALIGN stringify_in_c(.balign 8)
 #define PPC_TLNEI      stringify_in_c(tdnei)
 #define PPC_LLARX      stringify_in_c(ldarx)
 #define PPC_STLCX      stringify_in_c(stdcx.)
 #define PPC_CNTLZL     stringify_in_c(cntlzd)
 
+/* Move to CR, single-entry optimized version. Only available
+ * on POWER4 and later.
+ */
+#ifdef CONFIG_POWER4_ONLY
+#define PPC_MTOCRF     stringify_in_c(mtocrf)
+#else
+#define PPC_MTOCRF     stringify_in_c(mtcrf)
+#endif
+
 #else /* 32-bit */
 
 /* operations for longs and pointers */
 #define PPC_STL                stringify_in_c(stw)
 #define PPC_LCMPI      stringify_in_c(cmpwi)
 #define PPC_LONG       stringify_in_c(.long)
+#define PPC_LONG_ALIGN stringify_in_c(.balign 4)
 #define PPC_TLNEI      stringify_in_c(twnei)
 #define PPC_LLARX      stringify_in_c(lwarx)
 #define PPC_STLCX      stringify_in_c(stwcx.)
 #define PPC_CNTLZL     stringify_in_c(cntlzw)
+#define PPC_MTOCRF     stringify_in_c(mtcrf)
 
 #endif