Port to Oracle Solaris Studio 12.4
[debian/gzip] / lib / match.c
index 884603873cfb5ea65642c86f4a259630d4faf205..41fb03e4bd3dad28f48a6e7b02effeec0d053b38 100644 (file)
   error: DYN_ALLOC not yet supported in match.s
 #endif
 
-#if defined(i386) || defined(_I386) || defined(__i386) || defined(__i386__)
+/* On x86-64, Sun C 5.13 (Oracle Solaris Studio 12.4) 'cc -E -m64'
+   defines i386 when compiling .s or .S files!  Luckily it also
+   defines __x86_64__.  See Bug#23133.  */
+#if ((defined i386 || defined _I386 || defined __i386 || defined __i386__) \
+     && !defined __x86_64__)
 
 /* This version is for 386 Unix or OS/2 in 32 bit mode.
  * Warning: it uses the AT&T syntax: mov source,dest