bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/25355] nm reports data variable as "T" with -flto


From: marxin.liska at gmail dot com
Subject: [Bug binutils/25355] nm reports data variable as "T" with -flto
Date: Tue, 11 Feb 2020 13:38:29 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=25355

--- Comment #24 from Martin Liška <marxin.liska at gmail dot com> ---
Ok, I've got one another problem with the 2 commits
(de66c68d899600286b0d054508a2ed7beee64870 and
39f2b43be6ccc3acb29ab84dee48180b6a8fcba5) applied on top of the bintuils 2.34
release. I built a openSUSE package and now I see:

$ nm ./libiberty.a

regex.o:
                 U abort
00000000000001c0 t byte_alt_match_null_string_p
00000000000000d0 t byte_common_op_match_null_string_p
0000000000000000 t byte_compile_range
0000000000000240 t byte_group_match_null_string_p
00000000000003a0 t byte_re_compile_fastmap
0000000000000000 t byte_re_compile_fastmap.cold
0000000000002c10 t byte_regex_compile
0000000000000060 b byte_reg_unset_dummy
0000000000000760 t byte_re_match_2_internal
0000000000000005 t byte_re_match_2_internal.cold
00000000000028d0 t byte_re_search_2
                 U __ctype_b_loc
                 U __ctype_tolower_loc
0000000000000000 b done.3131
                 U free
                 U malloc
                 U memcmp
                 U memcpy
                 U realloc
0000000000000020 b re_comp_buf
0000000000000840 r re_error_msgid
0000000000000080 b re_syntax_table
                 U strcmp
                 U strlen
0000000000005cd0 T xre_comp
0000000000005be0 T xre_compile_fastmap
0000000000005c90 T xre_compile_pattern
0000000000005d80 T xre_exec
0000000000005dc0 T xregcomp
0000000000006100 T xregerror
000000000000000a t xregerror.cold
0000000000005f50 T xregexec
0000000000006180 T xregfree
0000000000005c60 T xre_match
0000000000005c80 T xre_match_2
0000000000000000 D xre_max_failures
0000000000005c30 T xre_search
0000000000005c50 T xre_search_2
0000000000005bf0 T xre_set_registers
0000000000005bd0 T xre_set_syntax
0000000000000008 C xre_syntax_options

cplus-dem.o:
0000000000000090 T ada_demangle
0000000000000600 T cplus_demangle
0000000000000040 T cplus_demangle_name_to_style
0000000000000000 T cplus_demangle_set_style
                 U cplus_demangle_v3
0000000000000000 D current_demangling_style
                 U dlang_demangle
                 U free
                 U java_demangle_v3
00000000000001a0 R libiberty_demanglers
                 U memcpy
0000000000000060 r operators.3980
                 U rust_demangle
                 U _sch_istable
0000000000000000 r special.4008
                 U sprintf
                 U strcmp
                 U strcpy
                 U strlen
                 U strncmp
                 U xmalloc
                 U xstrdup
free(): double free detected in tcache 2
Aborted (core dumped)

$ valgrind nm ./libiberty.a
==26662== Memcheck, a memory error detector
==26662== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==26662== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==26662== Command: nm ./libiberty.a
==26662== 
==26662== Invalid read of size 1
==26662==    at 0x4DF3DC0: __strcmp_avx2 (strcmp-avx2.S:92)
==26662==    by 0x4B1FFF9: try_load_plugin (plugin.c:608)
==26662==    by 0x4B20996: load_plugin (plugin.c:843)
==26662==    by 0x4B20996: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Address 0x4ea7fc0 is 0 bytes inside a block of size 58 free'd
==26662==    at 0x48389AB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B209B6: load_plugin (plugin.c:847)
==26662==    by 0x4B209B6: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Block was alloc'd at
==26662==    at 0x483777F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B338C4: xmalloc (xmalloc.c:147)
==26662==    by 0x4B2DE79: concat (concat.c:147)
==26662==    by 0x4B2095F: load_plugin (plugin.c:838)
==26662==    by 0x4B2095F: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662== 
==26662== Invalid read of size 1
==26662==    at 0x483BBA8: strcmp (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B1FFF9: try_load_plugin (plugin.c:608)
==26662==    by 0x4B20996: load_plugin (plugin.c:843)
==26662==    by 0x4B20996: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Address 0x4ea7fc1 is 1 bytes inside a block of size 58 free'd
==26662==    at 0x48389AB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B209B6: load_plugin (plugin.c:847)
==26662==    by 0x4B209B6: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Block was alloc'd at
==26662==    at 0x483777F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B338C4: xmalloc (xmalloc.c:147)
==26662==    by 0x4B2DE79: concat (concat.c:147)
==26662==    by 0x4B2095F: load_plugin (plugin.c:838)
==26662==    by 0x4B2095F: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662== 
==26662== Invalid read of size 1
==26662==    at 0x4DF3DC0: __strcmp_avx2 (strcmp-avx2.S:92)
==26662==    by 0x4B20042: try_load_plugin (plugin.c:637)
==26662==    by 0x4B20996: load_plugin (plugin.c:843)
==26662==    by 0x4B20996: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Address 0x4ea7fc0 is 0 bytes inside a block of size 58 free'd
==26662==    at 0x48389AB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B209B6: load_plugin (plugin.c:847)
==26662==    by 0x4B209B6: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Block was alloc'd at
==26662==    at 0x483777F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B338C4: xmalloc (xmalloc.c:147)
==26662==    by 0x4B2DE79: concat (concat.c:147)
==26662==    by 0x4B2095F: load_plugin (plugin.c:838)
==26662==    by 0x4B2095F: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662== 
==26662== Invalid read of size 1
==26662==    at 0x483BBA8: strcmp (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B20042: try_load_plugin (plugin.c:637)
==26662==    by 0x4B20996: load_plugin (plugin.c:843)
==26662==    by 0x4B20996: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Address 0x4ea7fc1 is 1 bytes inside a block of size 58 free'd
==26662==    at 0x48389AB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B209B6: load_plugin (plugin.c:847)
==26662==    by 0x4B209B6: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662==  Block was alloc'd at
==26662==    at 0x483777F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==26662==    by 0x4B338C4: xmalloc (xmalloc.c:147)
==26662==    by 0x4B2DE79: concat (concat.c:147)
==26662==    by 0x4B2095F: load_plugin (plugin.c:838)
==26662==    by 0x4B2095F: bfd_plugin_object_p (plugin.c:869)
==26662==    by 0x49477F5: bfd_check_format_matches (format.c:261)
==26662==    by 0x10D2A1: display_archive (nm.c:1314)
==26662==    by 0x10D2A1: display_file (nm.c:1373)
==26662==    by 0x10B9BF: main (nm.c:1860)
==26662== 

regex.o:
                 U abort
00000000000001c0 t byte_alt_match_null_string_p
00000000000000d0 t byte_common_op_match_null_string_p
0000000000000000 t byte_compile_range
0000000000000240 t byte_group_match_null_string_p
00000000000003a0 t byte_re_compile_fastmap
0000000000000000 t byte_re_compile_fastmap.cold
0000000000002c10 t byte_regex_compile
0000000000000060 b byte_reg_unset_dummy
...

Can you please H.J. take a look what can cause that?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]