Bug 21420 - Compiling emacs 25.2 with ld.bdf fails (segmentation fault)
Summary: Compiling emacs 25.2 with ld.bdf fails (segmentation fault)
Status: RESOLVED OBSOLETE
Alias: None
Product: binutils
Classification: Unclassified
Component: ld (show other bugs)
Version: 2.29
: P2 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-04-22 14:43 UTC by dilyan.palauzov@aegee.org
Modified: 2019-01-04 18:01 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed: 2017-04-24 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description dilyan.palauzov@aegee.org 2017-04-22 14:43:58 UTC
Compiling emacs-25.2 without CFLAGS, CXXFLAGS, LDFLAGS, with gcc 6.3.1 20170421, ld.bfd 2.28.51.20170422, works.

Compiling emacs-25.2 with CFLAGS="-Wall -Wextra -pipe -g -O3 -fno-fat-lto-objects -flto" CXXFLAGS="-pipe -g -O3 -fno-fat-lto-objects -flto" LDFLAGS="-Wl,-O1 -flto=8 -fuse-ld=gold" works.

Compiling emacs-25.2 with CFLAGS="-Wall -Wextra -pipe -g -O3 -fno-fat-lto-objects -flto" CXXFLAGS="-pipe -g -O3 -fno-fat-lto-objects -flto" LDFLAGS="-Wl,-O1 -flto=8 -fuse-ld=bfd" fails:	

cd admin/unidata
../../src/bootstrap-emacs -batch --no-site-file --no-site-lisp -f batch-byte-compile uvs.elFatal error 11: Segmentation fault
Backtrace:
../../src/bootstrap-emacs[0x479222]
../../src/bootstrap-emacs[0x424359]
../../src/bootstrap-emacs[0x47360c]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xf890)[0x7f4427745890]
/lib/x86_64-linux-gnu/libc.so.6(+0x7b51f)[0x7f4426ee951f]
/lib/x86_64-linux-gnu/libc.so.6(realloc+0xd9)[0x7f4426eea769]
../../src/bootstrap-emacs[0x42b8f2]
../../src/bootstrap-emacs[0x55716c]
../../src/bootstrap-emacs[0x55d511]
../../src/bootstrap-emacs[0x4db185]
../../src/bootstrap-emacs[0x5a3448]
../../src/bootstrap-emacs[0x4daad8]
../../src/bootstrap-emacs[0x4db05b]
../../src/bootstrap-emacs[0x5a3448]
../../src/bootstrap-emacs[0x4daad8]
../../src/bootstrap-emacs[0x4db05b]
../../src/bootstrap-emacs[0x5a3448]
../../src/bootstrap-emacs[0x4daad8]
../../src/bootstrap-emacs[0x4db05b]
../../src/bootstrap-emacs[0x4db20f]
../../src/bootstrap-emacs[0x4624e1]
../../src/bootstrap-emacs[0x4db157]
../../src/bootstrap-emacs[0x5a3448]
../../src/bootstrap-emacs[0x4daad8]
../../src/bootstrap-emacs[0x4db05b]
../../src/bootstrap-emacs[0x445c7f]
../../src/bootstrap-emacs[0x4db157]
../../src/bootstrap-emacs[0x5a3448]
../../src/bootstrap-emacs[0x4dc195]
../../src/bootstrap-emacs[0x4da3c2]
../../src/bootstrap-emacs[0x5b86b8]
../../src/bootstrap-emacs[0x41a9c5]
../../src/bootstrap-emacs[0x4d6a2b]
../../src/bootstrap-emacs[0x42108d]
../../src/bootstrap-emacs[0x421263]
../../src/bootstrap-emacs[0x408e5d]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f4426e8fb45]
../../src/bootstrap-emacs[0x40afbb]
Segmentation fault



valgrind --num-callers=30 --leak-check=full --track-origins=yes --read-var-info=yes --show-leak-kinds=all --trace-children=yes --track-fds=yes  ../../src/bootstrap-emacs -batch --no-site-file --no-site-lisp -f batch-byte-compile uvs.el 
==17527== Memcheck, a memory error detector
==17527== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==17527== Using Valgrind-3.13.0.SVN and LibVEX; rerun with -h for copyright info
==17527== Command: ../../src/bootstrap-emacs -batch --no-site-file --no-site-lisp -f batch-byte-compile uvs.el
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C2ABD7: realloc (vg_replace_malloc.c:785)
==17527==    by 0x42B8F1: lrealloc (alloc.c:1432)
==17527==    by 0x42B8F1: xrealloc (alloc.c:861)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xfce940 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x42742A: memory_full (alloc.c:4074)
==17527==    by 0x42B951: xrealloc (alloc.c:865)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb938b0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x4273C2: lisp_align_free (alloc.c:1331)
==17527==    by 0x4273C2: memory_full (alloc.c:4076)
==17527==    by 0x42B951: xrealloc (alloc.c:865)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb978c0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x42731A: lisp_free (alloc.c:1101)
==17527==    by 0x42731A: memory_full (alloc.c:4078)
==17527==    by 0x42B951: xrealloc (alloc.c:865)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb9bc10 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x4272D4: lisp_free (alloc.c:1103)
==17527==    by 0x4272D4: memory_full (alloc.c:4078)
==17527==    by 0x42B951: xrealloc (alloc.c:865)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb97a00 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C2ABD7: realloc (vg_replace_malloc.c:785)
==17527==    by 0x42B8F1: lrealloc (alloc.c:1432)
==17527==    by 0x42B8F1: xrealloc (alloc.c:861)
==17527==    by 0x510929: enlarge_buffer_text (buffer.c:4976)
==17527==    by 0x510929: make_gap_smaller (insdel.c:469)
==17527==    by 0x510929: make_gap (insdel.c:494)
==17527==    by 0x42C0F5: make_gap_1 (insdel.c:507)
==17527==    by 0x42C0F5: compact_buffer (buffer.c:1609)
==17527==    by 0x42C0F5: garbage_collect_1.lto_priv.611 (alloc.c:5681)
==17527==    by 0x4DAF07: Fgarbage_collect (alloc.c:5983)
==17527==    by 0x4DAF07: maybe_gc (lisp.h:4660)
==17527==    by 0x4DAF07: Ffuncall (eval.c:2649)
==17527==    by 0x4DB239: call1 (eval.c:2558)
==17527==    by 0x5AD84D: store_symval_forwarding.lto_priv.676 (data.c:1078)
==17527==    by 0x598EC6: unbind_to.constprop.108 (eval.c:3234)
==17527==    by 0x4D5386: unwind_to_catch (eval.c:1129)
==17527==    by 0x4D6E93: Fsignal (eval.c:1559)
==17527==    by 0x4D7208: xsignal (eval.c:1583)
==17527==    by 0x427397: memory_full (alloc.c:4085)
==17527==    by 0x42B951: xrealloc (alloc.c:865)
==17527==    by 0x556EFE: regex_compile (regex.c:3640)
==17527==    by 0x556EFE: re_compile_pattern (regex.c:6346)
==17527==    by 0x556EFE: compile_pattern_1 (search.c:142)
==17527==    by 0x556EFE: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0x14a8470 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5680A7: xfree (alloc.c:879)
==17527==    by 0x5680A7: free_glyph_matrix (dispnew.c:305)
==17527==    by 0x5680A7: free_window_matrices (dispnew.c:2239)
==17527==    by 0x568328: free_glyphs.part.15 (dispnew.c:2174)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb44b0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5680AF: xfree (alloc.c:879)
==17527==    by 0x5680AF: free_glyph_matrix (dispnew.c:306)
==17527==    by 0x5680AF: free_window_matrices (dispnew.c:2239)
==17527==    by 0x568328: free_glyphs.part.15 (dispnew.c:2174)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb1140 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5680D7: xfree (alloc.c:879)
==17527==    by 0x5680D7: free_glyph_matrix (dispnew.c:305)
==17527==    by 0x5680D7: free_window_matrices (dispnew.c:2240)
==17527==    by 0x568328: free_glyphs.part.15 (dispnew.c:2174)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb3bf0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5680DF: xfree (alloc.c:879)
==17527==    by 0x5680DF: free_glyph_matrix (dispnew.c:306)
==17527==    by 0x5680DF: free_window_matrices (dispnew.c:2240)
==17527==    by 0x568328: free_glyphs.part.15 (dispnew.c:2174)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb10d0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x568249: xfree (alloc.c:879)
==17527==    by 0x568249: free_glyph_matrix (dispnew.c:306)
==17527==    by 0x568249: free_glyphs.part.15 (dispnew.c:2205)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb0ff0 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x568279: xfree (alloc.c:879)
==17527==    by 0x568279: free_glyph_matrix (dispnew.c:306)
==17527==    by 0x568279: free_glyphs.part.15 (dispnew.c:2206)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb1060 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5682A9: xfree (alloc.c:879)
==17527==    by 0x5682A9: free_glyph_pool (dispnew.c:1313)
==17527==    by 0x5682A9: free_glyphs.part.15 (dispnew.c:2213)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb1290 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5682B1: xfree (alloc.c:879)
==17527==    by 0x5682B1: free_glyph_pool (dispnew.c:1314)
==17527==    by 0x5682B1: free_glyphs.part.15 (dispnew.c:2213)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb77580 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5682CB: xfree (alloc.c:879)
==17527==    by 0x5682CB: free_glyph_pool (dispnew.c:1313)
==17527==    by 0x5682CB: free_glyphs.part.15 (dispnew.c:2214)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xbb2740 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== Invalid free() / delete / delete[] / realloc()
==17527==    at 0x4C29CDA: free (vg_replace_malloc.c:530)
==17527==    by 0x5682D3: xfree (alloc.c:879)
==17527==    by 0x5682D3: free_glyph_pool (dispnew.c:1314)
==17527==    by 0x5682D3: free_glyphs.part.15 (dispnew.c:2214)
==17527==    by 0x41C3E9: free_glyphs (dispnew.c:2165)
==17527==    by 0x41C3E9: check_glyph_memory (dispnew.c:2262)
==17527==    by 0x41C3E9: shut_down_emacs (emacs.c:2015)
==17527==    by 0x41C4F7: Fkill_emacs (emacs.c:1929)
==17527==    by 0x4210B4: command_loop.lto_priv.712 (keyboard.c:1096)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527==  Address 0xb77640 is in a rw- mapped file /src/emacs-25.2/src/bootstrap-emacs segment
==17527== 
==17527== 
==17527== FILE DESCRIPTORS: 2 open at exit.
==17527== Open file descriptor 4:
==17527==    at 0x63A90B7: timerfd_create (syscall-template.S:81)
==17527==    by 0x40AD48: init_atimer (atimer.c:566)
==17527==    by 0x40AD48: main (emacs.c:1201)
==17527== 
==17527== Open file descriptor 0: /dev/pts/2
==17527==    <inherited from parent>
==17527== 
==17527== 
==17527== HEAP SUMMARY:
==17527==     in use at exit: 10,680 bytes in 14 blocks
==17527==   total heap usage: 1,290 allocs, 1,299 frees, 123,516 bytes allocated
==17527== 
==17527== 8 bytes in 1 blocks are still reachable in loss record 1 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42B817: lmalloc (alloc.c:1414)
==17527==    by 0x42B817: xmalloc (alloc.c:821)
==17527==    by 0x42B817: xstrdup (alloc.c:997)
==17527==    by 0x52DCF3: add_user_signal (keyboard.c:7178)
==17527==    by 0x40A8E2: init_signals (sysdep.c:1965)
==17527==    by 0x40A8E2: main (emacs.c:1137)
==17527== 
==17527== 8 bytes in 1 blocks are still reachable in loss record 2 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42B817: lmalloc (alloc.c:1414)
==17527==    by 0x42B817: xmalloc (alloc.c:821)
==17527==    by 0x42B817: xstrdup (alloc.c:997)
==17527==    by 0x52DCF3: add_user_signal (keyboard.c:7178)
==17527==    by 0x40A8F1: init_signals (sysdep.c:1968)
==17527==    by 0x40A8F1: main (emacs.c:1137)
==17527== 
==17527== 32 bytes in 1 blocks are still reachable in loss record 3 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42748C: lmalloc (alloc.c:1414)
==17527==    by 0x42748C: xmalloc (alloc.c:821)
==17527==    by 0x52DCE6: add_user_signal (keyboard.c:7176)
==17527==    by 0x40A8E2: init_signals (sysdep.c:1965)
==17527==    by 0x40A8E2: main (emacs.c:1137)
==17527== 
==17527== 32 bytes in 1 blocks are still reachable in loss record 4 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42748C: lmalloc (alloc.c:1414)
==17527==    by 0x42748C: xmalloc (alloc.c:821)
==17527==    by 0x52DCE6: add_user_signal (keyboard.c:7176)
==17527==    by 0x40A8F1: init_signals (sysdep.c:1968)
==17527==    by 0x40A8F1: main (emacs.c:1137)
==17527== 
==17527== 40 bytes in 1 blocks are still reachable in loss record 5 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x5AF10C: lmalloc (alloc.c:1414)
==17527==    by 0x5AF10C: xmalloc (alloc.c:821)
==17527==    by 0x5AF10C: make_blv (data.c:1577)
==17527==    by 0x5AF10C: Fmake_local_variable (data.c:1744)
==17527==    by 0x4DB1A2: Ffuncall (eval.c:2699)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DB05A: Ffuncall (eval.c:2748)
==17527==    by 0x45D1EB: call0 (eval.c:2550)
==17527==    by 0x45D1EB: get_minibuffer (minibuf.c:784)
==17527==    by 0x4084DD: init_buffer (buffer.c:5328)
==17527==    by 0x4084DD: main (emacs.c:1362)
==17527== 
==17527== 100 bytes in 1 blocks are still reachable in loss record 6 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42748C: lmalloc (alloc.c:1414)
==17527==    by 0x42748C: xmalloc (alloc.c:821)
==17527==    by 0x408DD6: init_xdisp (xdisp.c:31970)
==17527==    by 0x408DD6: main (emacs.c:1577)
==17527== 
==17527== 128 bytes in 1 blocks are still reachable in loss record 7 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x4DE039: tzalloc (time_rz.c:97)
==17527==    by 0x4DE039: xtzalloc (editfns.c:127)
==17527==    by 0x4DE039: tzlookup.part.9.lto_priv.624 (editfns.c:177)
==17527==    by 0x4DE26F: tzlookup (editfns.c:236)
==17527==    by 0x4DE26F: init_editfns.part.10 (editfns.c:236)
==17527==    by 0x408A41: init_editfns (editfns.c:207)
==17527==    by 0x408A41: main (emacs.c:1555)
==17527== 
==17527== 128 bytes in 1 blocks are still reachable in loss record 8 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42B947: lmalloc (alloc.c:1414)
==17527==    by 0x42B947: xrealloc (alloc.c:859)
==17527==    by 0x4A480C: xpalloc (alloc.c:983)
==17527==    by 0x4A480C: emacs_setenv_TZ (editfns.c:2415)
==17527==    by 0x4DDFC6: tzlookup.part.9.lto_priv.624 (editfns.c:183)
==17527==    by 0x4DE26F: tzlookup (editfns.c:236)
==17527==    by 0x4DE26F: init_editfns.part.10 (editfns.c:236)
==17527==    by 0x408A41: init_editfns (editfns.c:207)
==17527==    by 0x408A41: main (emacs.c:1555)
==17527== 
==17527== 128 bytes in 1 blocks are definitely lost in loss record 9 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x4DE249: tzalloc (time_rz.c:97)
==17527==    by 0x4DE249: xtzalloc (editfns.c:127)
==17527==    by 0x4DE249: init_editfns.part.10 (editfns.c:235)
==17527==    by 0x408A41: init_editfns (editfns.c:207)
==17527==    by 0x408A41: main (emacs.c:1555)
==17527== 
==17527== 288 bytes in 1 blocks are still reachable in loss record 10 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x4D6869: push_handler_nosignal (eval.c:1417)
==17527==    by 0x4D69E3: push_handler (eval.c:1405)
==17527==    by 0x4D69E3: internal_catch (eval.c:1075)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527== 
==17527== 288 bytes in 1 blocks are still reachable in loss record 11 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x4D6869: push_handler_nosignal (eval.c:1417)
==17527==    by 0x5B8674: push_handler (eval.c:1405)
==17527==    by 0x5B8674: internal_condition_case.constprop.255 (eval.c:1305)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527== 
==17527== 288 bytes in 1 blocks are still reachable in loss record 12 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x4D6869: push_handler_nosignal (eval.c:1417)
==17527==    by 0x4D68DF: push_handler (eval.c:1405)
==17527==    by 0x4D68DF: internal_condition_case_1 (eval.c:1329)
==17527==    by 0x4456EE: Fload (lread.c:1069)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527== 
==17527== 1,024 bytes in 1 blocks are definitely lost in loss record 13 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42748C: lmalloc (alloc.c:1414)
==17527==    by 0x42748C: xmalloc (alloc.c:821)
==17527==    by 0x556AF4: regex_compile (regex.c:2495)
==17527==    by 0x556AF4: re_compile_pattern (regex.c:6346)
==17527==    by 0x556AF4: compile_pattern_1 (search.c:142)
==17527==    by 0x556AF4: compile_pattern (search.c:237)
==17527==    by 0x439C15: fast_c_string_match_ignore_case (search.c:505)
==17527==    by 0x439C15: safe_to_load_version (lread.c:923)
==17527==    by 0x44593D: Fload (lread.c:1212)
==17527==    by 0x4DB156: Ffuncall (eval.c:2715)
==17527==    by 0x5A3447: exec_byte_code (bytecode.c:880)
==17527==    by 0x4DC194: apply_lambda (eval.c:2800)
==17527==    by 0x4DA3C1: eval_sub (eval.c:2247)
==17527==    by 0x5B86B7: Feval (eval.c:1994)
==17527==    by 0x5B86B7: top_level_2 (keyboard.c:1121)
==17527==    by 0x5B86B7: internal_condition_case.constprop.255 (eval.c:1315)
==17527==    by 0x41A9C4: top_level_1 (keyboard.c:1129)
==17527==    by 0x4D6A2A: internal_catch (eval.c:1080)
==17527==    by 0x42108C: command_loop.lto_priv.712 (keyboard.c:1090)
==17527==    by 0x421262: recursive_edit_1 (keyboard.c:697)
==17527==    by 0x421262: Frecursive_edit (keyboard.c:768)
==17527==    by 0x408E5C: main (emacs.c:1629)
==17527== 
==17527== 8,188 bytes in 1 blocks are still reachable in loss record 14 of 14
==17527==    at 0x4C28B2D: malloc (vg_replace_malloc.c:299)
==17527==    by 0x42A85E: lmalloc (alloc.c:1414)
==17527==    by 0x42A85E: lisp_malloc.lto_priv.368 (alloc.c:1063)
==17527==    by 0x5AF890: allocate_string_data (alloc.c:1998)
==17527==    by 0x5AF890: make_uninit_multibyte_string.part.19 (alloc.c:2513)
==17527==    by 0x429519: make_uninit_multibyte_string (alloc.c:2506)
==17527==    by 0x429519: make_uninit_string (alloc.c:2491)
==17527==    by 0x429519: make_unibyte_string (alloc.c:2418)
==17527==    by 0x42B563: make_string (alloc.c:2406)
==17527==    by 0x40879C: build_string (lisp.h:3674)
==17527==    by 0x40879C: set_initial_environment (callproc.c:1649)
==17527==    by 0x40879C: main (emacs.c:1351)
==17527== 
==17527== LEAK SUMMARY:
==17527==    definitely lost: 1,152 bytes in 2 blocks
==17527==    indirectly lost: 0 bytes in 0 blocks
==17527==      possibly lost: 0 bytes in 0 blocks
==17527==    still reachable: 9,528 bytes in 12 blocks
==17527==         suppressed: 0 bytes in 0 blocks
==17527== 
==17527== For counts of detected and suppressed errors, rerun with: -v
==17527== ERROR SUMMARY: 30 errors from 18 contexts (suppressed: 0 from 0)
Comment 1 H.J. Lu 2017-04-24 15:46:10 UTC
Did ld.bfd ever work with those options?
Comment 2 dilyan.palauzov@aegee.org 2017-04-24 16:03:02 UTC
(In reply to H.J. Lu from comment #1)
> Did ld.bfd ever work with those options?

I don't know.
Comment 3 H.J. Lu 2017-04-24 16:44:19 UTC
(In reply to dilyan.palauzov@aegee.org from comment #2)
> (In reply to H.J. Lu from comment #1)
> > Did ld.bfd ever work with those options?
> 
> I don't know.

Can you find it out? I am trying to determine if it is a regression.
Comment 4 H.J. Lu 2017-04-24 21:48:40 UTC
I was told that both 2.22 and 2.25 also fail.  It doesn't look like a
regression.
Comment 5 dilyan.palauzov@aegee.org 2019-01-04 18:01:26 UTC
With emacs 26.1, gcc (8.2.1 or 7.4.1) and most recent linkers, this does not seem to be anymore the case.  In particular, the stripped binaries produced by ld.bfd ane smaller:

With gcc 7.4.1 20181222 and linkers 2.31.51.20190103:
39536744bytes build-bfd/src/emacs
 5394936bytes build-bfd/src/temacs
39545000bytes build-gold/src/emacs
 5403192bytes build-gold/src/temacs


With gcc 8.2.1 20190101 and linkers 2.31.51.20190103:

40253520bytes build-bfd/src/emacs
 6100896bytes build-bfd/src/temacs
40265872bytes  build-gold/src/emacs
 6113248bytes  build-gold/src/temacs