public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
@ 2010-08-27  4:21 Jeff Chua
  2010-08-27 14:25 ` H.J. Lu
  2010-08-27 19:10 ` Mike Frysinger
  0 siblings, 2 replies; 7+ messages in thread
From: Jeff Chua @ 2010-08-27  4:21 UTC (permalink / raw)
  To: GNU libc, glibc-bugs, Ulrich Drepper



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 <drepper@redhat.com>
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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-27  4:21 commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile Jeff Chua
@ 2010-08-27 14:25 ` H.J. Lu
  2010-08-27 14:58   ` Jeff Chua
  2010-08-27 19:10 ` Mike Frysinger
  1 sibling, 1 reply; 7+ messages in thread
From: H.J. Lu @ 2010-08-27 14:25 UTC (permalink / raw)
  To: Jeff Chua; +Cc: GNU libc, glibc-bugs, Ulrich Drepper

On Thu, Aug 26, 2010 at 9:21 PM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
>
>
> 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 <drepper@redhat.com>
> Date:   Thu Aug 19 09:20:44 2010 -0700
>
>    Fix two typos in x86-64 SSE4.2 strncasecmp implementation.
>
>

FWIW, glibc builds fine for me on Fedora 13/x86-64.

-- 
H.J.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-27 14:25 ` H.J. Lu
@ 2010-08-27 14:58   ` Jeff Chua
  2010-08-27 18:36     ` H.J. Lu
  0 siblings, 1 reply; 7+ messages in thread
From: Jeff Chua @ 2010-08-27 14:58 UTC (permalink / raw)
  To: H.J. Lu; +Cc: GNU libc, glibc-bugs, Ulrich Drepper

On Fri, Aug 27, 2010 at 10:24 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Thu, Aug 26, 2010 at 9:21 PM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:

> FWIW, glibc builds fine for me on Fedora 13/x86-64.

Are you definitely sure you're building everything from "fresh". I've
been git pulling and applied all these patches and my glibc was still
compiling fine, but the problem only shows up when I did a fresh
compile and that's when the problem occurred.

Thanks,
Jeff


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-27 14:58   ` Jeff Chua
@ 2010-08-27 18:36     ` H.J. Lu
  0 siblings, 0 replies; 7+ messages in thread
From: H.J. Lu @ 2010-08-27 18:36 UTC (permalink / raw)
  To: Jeff Chua; +Cc: GNU libc, glibc-bugs, Ulrich Drepper

On Fri, Aug 27, 2010 at 7:50 AM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
> On Fri, Aug 27, 2010 at 10:24 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Thu, Aug 26, 2010 at 9:21 PM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
>
>> FWIW, glibc builds fine for me on Fedora 13/x86-64.
>
> Are you definitely sure you're building everything from "fresh". I've
> been git pulling and applied all these patches and my glibc was still
> compiling fine, but the problem only shows up when I did a fresh
> compile and that's when the problem occurred.
>

Yes, I built it from scratch. Can you send me the preprocessed strncase_l.s?

-- 
H.J.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-27  4:21 commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile Jeff Chua
  2010-08-27 14:25 ` H.J. Lu
@ 2010-08-27 19:10 ` Mike Frysinger
  2010-08-28  0:35   ` Jeff Chua
  1 sibling, 1 reply; 7+ messages in thread
From: Mike Frysinger @ 2010-08-27 19:10 UTC (permalink / raw)
  To: libc-alpha; +Cc: Jeff Chua, glibc-bugs, Ulrich Drepper

[-- Attachment #1: Type: Text/Plain, Size: 432 bytes --]

On Friday, August 27, 2010 00:21:28 Jeff Chua wrote:
> 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:

FWIW, it's building for me
01d2601 2010-08-26 22:35:42 -0700 Fix typo in last commit.
gcc (Gentoo 4.5.1 p1.0, pie-0.4.5) 4.5.1
GNU ld (Linux/GNU Binutils) 2.20.51.0.11.20100810
-mike

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-27 19:10 ` Mike Frysinger
@ 2010-08-28  0:35   ` Jeff Chua
  2010-08-30 13:47     ` Jeff Chua
  0 siblings, 1 reply; 7+ messages in thread
From: Jeff Chua @ 2010-08-28  0:35 UTC (permalink / raw)
  To: Mike Frysinger; +Cc: libc-alpha, glibc-bugs, Ulrich Drepper

[-- Attachment #1: Type: text/plain, Size: 1495 bytes --]

On Fri, Aug 27, 2010 at 10:58 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Fri, Aug 27, 2010 at 7:50 AM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
>> On Fri, Aug 27, 2010 at 10:24 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>>> On Thu, Aug 26, 2010 at 9:21 PM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
>>> FWIW, glibc builds fine for me on Fedora 13/x86-64.
> Yes, I built it from scratch. Can you send me the preprocessed strncase_l.s?

Attached is the strncase_l.o that was generated with the patch reverted.


On Sat, Aug 28, 2010 at 2:34 AM, Mike Frysinger <vapier@gentoo.org> wrote:
> On Friday, August 27, 2010 00:21:28 Jeff Chua wrote:
>> Compiling glibc resulted in the follow error:
>
> FWIW, it's building for me
> 01d2601 2010-08-26 22:35:42 -0700 Fix typo in last commit.
> gcc (Gentoo 4.5.1 p1.0, pie-0.4.5) 4.5.1
> GNU ld (Linux/GNU Binutils) 2.20.51.0.11.20100810

Mine is up-to-date as yours, but for some reasons, compilation is
breaking on mine. My binutils:

GNU ld (Linux/GNU Binutils) 2.20.51.0.8.20100412

I compiled glibc with ...

          CFLAGS="-O2 -march=core2" ../configure \
                                --enable-add-ons=nptl \
                                --enable-shared \
                                --sysconfdir=/etc --disable-profile \
                                --includedir=/tmp/include --prefix=/usr \
                                --exec-prefix=/usr --disable-selinux


Again, it compiled fine with the patch reversed.

Thanks,
Jeff

[-- Attachment #2: strncase_l.o --]
[-- Type: application/octet-stream, Size: 22672 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile
  2010-08-28  0:35   ` Jeff Chua
@ 2010-08-30 13:47     ` Jeff Chua
  0 siblings, 0 replies; 7+ messages in thread
From: Jeff Chua @ 2010-08-30 13:47 UTC (permalink / raw)
  To: Mike Frysinger, H.J. Lu; +Cc: libc-alpha, glibc-bugs, Ulrich Drepper

[-- Attachment #1: Type: text/plain, Size: 1763 bytes --]

On Sat, Aug 28, 2010 at 7:50 AM, Jeff Chua <jeff.chua.linux@gmail.com> wrote:
> On Sat, Aug 28, 2010 at 2:34 AM, Mike Frysinger <vapier@gentoo.org> wrote:
>> On Friday, August 27, 2010 00:21:28 Jeff Chua wrote:
>>> Compiling glibc resulted in the follow error:
>> FWIW, it's building for me
>> GNU ld (Linux/GNU Binutils) 2.20.51.0.11.20100810
>
> Mine is up-to-date as yours, but for some reasons, compilation is
> breaking on mine. My binutils:
> GNU ld (Linux/GNU Binutils) 2.20.51.0.8.20100412

Interesting! I just upgraded binutils:
GNU ld (Linux/GNU Binutils) 2.20.51.0.11.20100810

... and it's compiling file, with/without patch reverted.

I was still using the older binutils because the attached binary
(DivaP) couldn't be stripped (using strip -s) using anything newer
than binutils-2.20.51.0.8

BFD: /tmp/stvQzX7x: section .note.ABI-tag lma 0x8049094 adjusted to 0x804a094
BFD: /tmp/stvQzX7x: section .init lma 0x80490b4 adjusted to 0x804a0b4
BFD: /tmp/stvQzX7x: section .text lma 0x80490f0 adjusted to 0x804a0e5
BFD: /tmp/stvQzX7x: section .fini lma 0x81a8c9c adjusted to 0x81a9c91
BFD: /tmp/stvQzX7x: section .rodata lma 0x81a8cc0 adjusted to 0x81a9cad
BFD: /tmp/stvQzX7x: section __libc_subinit lma 0x81f0f6c adjusted to 0x81f1f57
BFD: /tmp/stvQzX7x: section __libc_subfreeres lma 0x81f0f78 adjusted
to 0x81f1f63
BFD: /tmp/stvQzX7x: section __libc_atexit lma 0x81f0f98 adjusted to 0x81f1f83
BFD: /tmp/stvQzX7x: section `__libc_subfreeres' can't be allocated in segment 0
LOAD: .note.ABI-tag .init .text .fini .rodata __libc_subinit
__libc_subfreeres __libc_atexit
BFD: /tmp/stvQzX7x: section `__libc_atexit' can't be allocated in segment 0
LOAD: .note.ABI-tag .init .text .fini .rodata __libc_subinit
__libc_subfreeres __libc_atexit


Thanks,
Jeff

[-- Attachment #2: DivasP --]
[-- Type: application/octet-stream, Size: 1768804 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2010-08-28  0:35 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-27  4:21 commit 9da4bb316ffa558b1001e5441d2ba919ebb2cf13 broke strcmp.S compile Jeff Chua
2010-08-27 14:25 ` H.J. Lu
2010-08-27 14:58   ` Jeff Chua
2010-08-27 18:36     ` H.J. Lu
2010-08-27 19:10 ` Mike Frysinger
2010-08-28  0:35   ` Jeff Chua
2010-08-30 13:47     ` Jeff Chua

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).