From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24546 invoked by alias); 27 Aug 2010 04:21:34 -0000 Received: (qmail 24531 invoked by uid 22791); 27 Aug 2010 04:21:32 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SARE_SUB_6CONS_WORD,TW_DQ,TW_VD X-Spam-Check-By: sourceware.org Received: from mail-qy0-f169.google.com (HELO mail-qy0-f169.google.com) (209.85.216.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 27 Aug 2010 04:21:28 +0000 Received: by qyk12 with SMTP id 12so244488qyk.0 for ; Thu, 26 Aug 2010 21:21:27 -0700 (PDT) Received: by 10.224.18.99 with SMTP id v35mr7335380qaa.355.1282882886913; Thu, 26 Aug 2010 21:21:26 -0700 (PDT) Received: from [192.168.8.122] ([209.117.33.69]) by mx.google.com with ESMTPS id t4sm4020149qcs.28.2010.08.26.21.21.25 (version=SSLv3 cipher=RC4-MD5); Thu, 26 Aug 2010 21:21:26 -0700 (PDT) Date: Fri, 27 Aug 2010 04:21:00 -0000 From: Jeff Chua To: GNU libc , glibc-bugs@sourceware.org, Ulrich Drepper Subject: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-IsSubscribed: yes Mailing-List: contact glibc-bugs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-owner@sourceware.org X-SW-Source: 2010-08/txt/msg00095.txt.bz2 gcc version 4.4.5 20100816 (prerelease) (GCC) GNU C Library development release version 2.12.90, by Roland McGrath et al. Compiling glibc resulted in the follow error: gcc ../sysdeps/x86_64/multiarch/strncase_l.S -c -I../include -I/v6/src2/glibc/glibc/build/string -I/v6/src2/glibc/glibc/build -I../sysdeps/x86_64/elf -I../nptl/sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../nptl/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/x86_64/fpu -I../sysdeps/x86_64/multiarch -I../nptl/sysdeps/x86_64 -I../sysdeps/x86_64 -I../sysdeps/wordsize-64 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I.. -I../libio -I. -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DASSEMBLER -Wa,--noexecstack -o /v6/src2/glibc/glibc/build/string/strncase_l.o -MD -MP -MF /v6/src2/glibc/glibc/build/string/strncase_l.o.dt -MT /v6/src2/glibc/glibc/build/string/strncase_l.o ../sysdeps/x86_64/multiarch/../strcmp.S: Assembler messages: ../sysdeps/x86_64/multiarch/../strcmp.S:118: Error: junk `ff' after expression ../sysdeps/x86_64/multiarch/../strcmp.S:118: Error: 8-byte relocation cannot be applied to 4-byte field make[2]: *** [/v6/src2/glibc/glibc/build/string/strncase_l.o] Error 1 make[2]: Leaving directory `/v6/src2/glibc/glibc/string' make[1]: *** [string/subdir_lib] Error 2 make[1]: Leaving directory `/v6/src2/glibc/glibc' make: *** [all] Error 2 Reverting just _part_of_ the commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 made it work again. commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 Author: Ulrich Drepper Date: Thu Aug 19 09:20:44 2010 -0700 Fix two typos in x86-64 SSE4.2 strncasecmp implementation. Here's the section causing the problem ... diff --git a/sysdeps/x86_64/multiarch/strcmp.S b/sysdeps/x86_64/multiarch/strcmp.S index 45cd80b..54e5bbc 100644 --- a/sysdeps/x86_64/multiarch/strcmp.S +++ b/sysdeps/x86_64/multiarch/strcmp.S @@ -824,7 +824,7 @@ LABEL(loop_ashr_5_use_sse4_2): movdqa (%rdi, %rdx), %xmm0 palignr $5, -16(%rdi, %rdx), %xmm0 -# if !defined USE_AS_STRCASECMP_L || !defined USE_AS_STRNCASECMP_L +# if !defined USE_AS_STRCASECMP_L && !defined USE_AS_STRNCASECMP_L pcmpistri $0x1a,(%rsi,%rdx), %xmm0 # else movdqa (%rsi,%rdx), %xmm1 @@ -1112,7 +1112,7 @@ LABEL(loop_ashr_8_use_sse4_2): pcmpistri $0x1a, %xmm1, %xmm0 # endif jbe LABEL(use_sse4_2_exit) -# if defined USE_AS_STRNCMP || defined USE_AS_STRCASECMP_L +# if defined USE_AS_STRNCMP || defined USE_AS_STRNCASECMP_L sub $16, %r11 jbe LABEL(strcmp_exitz_sse4_2) # endif Thanks, Jeff