This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/19289] gcc-6 emits movaps instructions for dl-lookup.o with -O3
- From: "markus at trippelsdorf dot de" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 24 Nov 2015 21:16:19 +0000
- Subject: [Bug dynamic-link/19289] gcc-6 emits movaps instructions for dl-lookup.o with -O3
- Auto-submitted: auto-generated
- References: <bug-19289-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=19289
--- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> ---
Forgot to mention: This causes the dynamic linker to segfault:
markus@x4 glibc-build % gdb --args
/var/tmp/glibc-build/elf/ld-linux-x86-64.so.2 /home/markus/bin/xmonad
Reading symbols from /var/tmp/glibc-build/elf/ld-linux-x86-64.so.2...done.
(gdb) run
Starting program: /var/tmp/glibc-build/elf/ld-linux-x86-64.so.2
/home/markus/bin/xmonad
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
_dl_lookup_symbol_x (undef_name=0x7ffff75cb3c5 "__gmpn_invert_limb",
undef_map=0x7ffff76494d0, ref=ref@entry=0x7fffffffa170,
symbol_scope=0x7ffff7649828, version=0x0,
type_class=type_class@entry=1, flags=1, skip_map=0x0) at dl-lookup.c:809
809 struct sym_val current_value = { NULL, NULL };
(gdb) bt
#0 _dl_lookup_symbol_x (undef_name=0x7ffff75cb3c5 "__gmpn_invert_limb",
undef_map=0x7ffff76494d0, ref=ref@entry=0x7fffffffa170,
symbol_scope=0x7ffff7649828, version=0x0,
type_class=type_class@entry=1, flags=1, skip_map=0x0) at dl-lookup.c:809
#1 0x0000555555564413 in _dl_fixup (l=<optimized out>, reloc_arg=<optimized
out>) at ../elf/dl-runtime.c:111
#2 0x000055555556ce1f in _dl_runtime_resolve_sse () at
../sysdeps/x86_64/dl-trampoline.h:112
#3 0x00007ffff762093a in __gmpn_divrem_1 () from /usr/lib/libgmp.so.10
#4 0xee6b280000000000 in ?? ()
#5 0x00007ffff6b0b138 in ?? ()
#6 0x00007ffff6b057d0 in ?? ()
#7 0x00000000ffffffe2 in ?? ()
#8 0x00007ffff6b057b8 in ?? ()
#9 0x00007ffff6b051b0 in ?? ()
#10 0x00007ffff6b0b1b0 in ?? ()
#11 0x00000000006b47d8 in ?? ()
#12 0x00000000006142a9 in ?? ()
#13 0x0000000000000000 in ?? ()
(gdb) disass
Dump of assembler code for function _dl_lookup_symbol_x:
...
0x000055555555e915 <+117>: jne 0x55555555e900 <_dl_lookup_symbol_x+96>
0x000055555555e917 <+119>: mov %eax,%eax
0x000055555555e919 <+121>: mov %rax,-0xb0(%rbp)
0x000055555555e920 <+128>: pxor %xmm0,%xmm0
0x000055555555e924 <+132>: mov $0xffffffff,%eax
0x000055555555e929 <+137>: incq 0x21d048(%rip) # 0x55555577b978
<_rtld_local+2424>
0x000055555555e930 <+144>: test %r12,%r12
0x000055555555e933 <+147>: mov %rax,-0xa0(%rbp)
=> 0x000055555555e93a <+154>: movaps %xmm0,-0x90(%rbp)
0x000055555555e941 <+161>: je 0x55555555e950 <_dl_lookup_symbol_x+176>
--
You are receiving this mail because:
You are on the CC list for the bug.