X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=lib%2Fmatch.c;fp=lib%2Fmatch.c;h=41fb03e4bd3dad28f48a6e7b02effeec0d053b38;hb=20fcfc81ece044b8b0a6768ec6cf47be4e22a2e6;hp=58a00b28c18d5f7a2d56371d19d377d12619def7;hpb=d57728a6ca2413a7c564d8b7bb13d9e5a5a180f3;p=debian%2Fgzip diff --git a/lib/match.c b/lib/match.c index 58a00b2..41fb03e 100644 --- a/lib/match.c +++ b/lib/match.c @@ -1,6 +1,6 @@ /* match.s -- optional optimized asm version of longest match in deflate.c - Copyright (C) 2002, 2006, 2009-2013 Free Software Foundation, Inc. + Copyright (C) 2002, 2006, 2009-2016 Free Software Foundation, Inc. Copyright (C) 1992-1993 Jean-loup Gailly This program is free software; you can redistribute it and/or modify @@ -49,7 +49,11 @@ 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