http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59083
Bug ID: 59083 Summary: -fisolate-erroneous-paths produces illegal instruction with enabled -fprofile-generate Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: marxin.liska at gmail dot com Hello, I've encountered a new bug that was introduced by SVN commit: 204414. Program: gimp commit 88ecd59c3436d302b644a5d25c1938c0e7b60ae0 Author: Michael Natterer <mi...@gimp.org> Date: Tue Feb 5 20:43:53 2013 +0100 GCC: 204414 uname -a: Linux marxinbox 3.7.4-gentoo #6 SMP Mon Sep 30 20:53:52 CEST 2013 x86_64 AMD FX(tm)-8350 Eight-Core Processor AuthenticAMD GNU/Linux Build flags: CFLAGS="-flto=9 -fno-fat-lto-objects -O2 -fprofile-generate" When I added -fno-isolate-erroneous-paths the program run correctly. Stacktrace: │0x988226 <windows_actions_dock_window_added+646> addq $0x1,0x6a8732(%rip) # 0x1030960 <__gcov0.gimp_action_group_add_actions.lto_priv.4837+64> │ │0x98822e <windows_actions_dock_window_added+654> addq $0x1,0x6a87d2(%rip) # 0x1030a08 <__gcov0.gimp_action_group_add_actions.lto_priv.4837+232> │ │0x988236 <windows_actions_dock_window_added+662> callq 0x820fa0 <gimp_action_group_check_unique_action.lto_priv.5831> │ │0x98823b <windows_actions_dock_window_added+667> test %eax,%eax │ │0x98823d <windows_actions_dock_window_added+669> jne 0x988258 <windows_actions_dock_window_added+696> │ │0x98823f <windows_actions_dock_window_added+671> addq $0x1,0x6a8721(%rip) # 0x1030968 <__gcov0.gimp_action_group_add_actions.lto_priv.4837+72> │ │0x988247 <windows_actions_dock_window_added+679> addq $0x1,0x6a87b1(%rip) # 0x1030a00 <__gcov0.gimp_action_group_add_actions.lto_priv.4837+224> │ │0x98824f <windows_actions_dock_window_added+687> jmpq 0x988100 <windows_actions_dock_window_added+352> │ │0x988254 <windows_actions_dock_window_added+692> nopl 0x0(%rax) │ │0x988258 <windows_actions_dock_window_added+696> mov $0x5,%edx │ │0x98825d <windows_actions_dock_window_added+701> mov $0xb8b6f6,%esi │ │0x988262 <windows_actions_dock_window_added+706> xor %edi,%edi │ │0x988264 <windows_actions_dock_window_added+708> callq 0x478da0 <dcgettext@plt> │ >│0x988269 <windows_actions_dock_window_added+713> ud2 │ │0x98826b nopl 0x0(%rax,%rax,1) │ │0x988270 <windows_actions_update_display_accels> push %r14 │ │0x988272 <windows_actions_update_display_accels+2> mov %rdi,%r14 │ │0x988275 <windows_actions_update_display_accels+5> push %r13 │ │0x988277 <windows_actions_update_display_accels+7> push %r12 │ │0x988279 <windows_actions_update_display_accels+9> push %rbp │ │0x98827a <windows_actions_update_display_accels+10> push %rbx │ │0x98827b <windows_actions_update_display_accels+11> mov 0x20(%rdi),%rdi │ │0x98827f <windows_actions_update_display_accels+15> addq $0x1,0x7e7df9(%rip) # 0x1170080 <__gcov0.windows_actions_update_display_accels> │ │0x988287 <windows_actions_update_display_accels+23> callq 0x99e6b0 <gimp_get_display_iter> │ │0x98828c <windows_actions_update_display_accels+28> test %rax,%rax │ │0x98828f <windows_actions_update_display_accels+31> mov %rax,%rbx │ │0x988292 <windows_actions_update_display_accels+34> je 0x988398 <windows_actions_update_display_accels+296> │ │0x988298 <windows_actions_update_display_accels+40> xor %ebp,%ebp │ │0x98829a <windows_actions_update_display_accels+42> jmpq 0x988366 <windows_actions_update_display_accels+246> │ │0x98829f <windows_actions_update_display_accels+47> nop Thank you, Martin