Fix a couple of additional ppc64 endianness / alignment issues

ulab-next
Timothy Pearson 5 years ago
parent 9daff9a96e
commit 521409e47d

@ -36,14 +36,14 @@
# endif
#endif
/* check if we need to align data */
#if defined(__sparc__) || defined(__alpha__) || defined(__hppa__) || \
#if defined(__x86__) || defined(__x86_64__) || \
defined(__AMD64__) || defined(_M_IX86) || \
defined(__i386__) || defined(__powerpc64__)
# define NO_NEED_ALIGN
#elif defined(__sparc__) || defined(__alpha__) || defined(__hppa__) || \
defined(__AIX__) || defined(__PPC__) || defined(__mips__) || \
defined(__ia64__) || defined(__ppc__) || defined(__arm__)
#define NEED_ALIGN
#elif defined(__x86__) || defined(__x86_64__) || \
defined(__AMD64__) || defined(_M_IX86) || \
defined(__i386__)
#define NO_NEED_ALIGN
# define NEED_ALIGN
#else
#warning unknown arch
#endif

@ -618,11 +618,12 @@ rdpXvInit(ScreenPtr pScreen);
# error Unknown endianness in rdp.h
#endif
/* check if we need to align data */
/* check if we need to align data */
#if defined(__sparc__) || defined(__alpha__) || defined(__hppa__) || \
#if defined(__powerpc64__)
# undef NEED_ALIGN
#elif defined(__sparc__) || defined(__alpha__) || defined(__hppa__) || \
defined(__AIX__) || defined(__PPC__) || defined(__mips__) || \
defined(__ia64__) || defined(__ppc__) || defined(__arm__)
#define NEED_ALIGN
# define NEED_ALIGN
#endif
/* parser state */

@ -0,0 +1,18 @@
diff -ur a/include/servermd.h b/include/servermd.h
--- a/include/servermd.h
+++ b/include/servermd.h
@@ -92,7 +92,13 @@
/* byte boundries */
#endif /* hpux || __hppa__ */
-#if defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__)
+#if defined(__powerpc64__) && !defined(__BIG_ENDIAN__)
+
+# define IMAGE_BYTE_ORDER LSBFirst
+# define BITMAP_BIT_ORDER LSBFirst
+# define GLYPHPADBYTES 4
+
+#elif defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__)
#define IMAGE_BYTE_ORDER MSBFirst
#define BITMAP_BIT_ORDER MSBFirst
Loading…
Cancel
Save