public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/94856] New: [10 Regression] ICE: Segmentation fault (in clone_of_p); or ICE: verify_cgraph_node failed (error: edge points to wrong declaration)
@ 2020-04-29 17:43 asolokha at gmx dot com
  2020-04-29 19:10 ` [Bug ipa/94856] [10 Regression] ICE: Segmentation fault (in clone_of_p); or ICE: verify_cgraph_node failed (error: edge points to wrong declaration) since r10-4944-g1e83bd7003e03160 marxin at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: asolokha at gmx dot com @ 2020-04-29 17:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94856

            Bug ID: 94856
           Summary: [10 Regression] ICE: Segmentation fault (in
                    clone_of_p); or ICE: verify_cgraph_node failed (error:
                    edge points to wrong declaration)
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---

1.

g++-10.0.1-alpha20200426 snapshot (g:29f55115583a0dab6cbac749c4f0804fd88e9536)
ICEs when compiling gcc/testsuite/g++.dg/other/pr47218.C w/ -O2 -fgnu-tm
-fopenacc -fno-tree-dse --param early-inlining-insns=3 --param
uninlined-function-insns=0:

% g++-10.0.1 -O2 -fgnu-tm -fopenacc -fno-tree-dse --param
early-inlining-insns=3 --param uninlined-function-insns=0 -c
gcc/testsuite/g++.dg/other/pr47218.C
during IPA pass: inline
gcc/testsuite/g++.dg/other/pr47218.C: In destructor 'virtual Foo3::~Foo3()':
gcc/testsuite/g++.dg/other/pr47218.C:10:1: internal compiler error:
Segmentation fault
   10 | }
      | ^
0xfebacf crash_signal
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/toplev.c:328
0xb85dd9 clone_of_p
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraph.c:3108
0xb85dd9 cgraph_edge::verify_corresponds_to_fndecl(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraph.c:3196
0xb8d780 cgraph_node::verify_node()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraph.c:3719
0xb7fcf4 symtab_node::verify()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/symtab.c:1312
0x1074525 expand_call_inline
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/tree-inline.c:4820
0x1076ee9 gimple_expand_calls_inline
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/tree-inline.c:5251
0x1076ee9 optimize_inline_calls(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/tree-inline.c:5424
0xddbef3 inline_transform(cgraph_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/ipa-inline-transform.c:734
0xf182dd execute_one_ipa_transform_pass
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/passes.c:2233
0xf182dd execute_all_ipa_transforms(bool)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/passes.c:2272
0xb86644 cgraph_node::get_body()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraph.c:3970
0x11df6f1 ipa_pta_execute
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/tree-ssa-structalias.c:8140
0x11df6f1 execute
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/tree-ssa-structalias.c:8557

2.

Omission of -fopenacc from the command line yields the following instead:

% g++-10.0.1 -O2 -fgnu-tm -fno-tree-dse --param early-inlining-insns=3 --param
uninlined-function-insns=0 -c gcc/testsuite/g++.dg/other/pr47218.C
gcc/testsuite/g++.dg/other/pr47218.C: In destructor 'Foo3::~Foo3()':
gcc/testsuite/g++.dg/other/pr47218.C:7:1: error: edge points to wrong
declaration:
    7 | Foo3::~Foo3 ()
      | ^~~~
 <function_decl 0x7f811058c600 Bar.constprop
    type <function_type 0x7f81105887e0
        type <void_type 0x7f8110400f18 void VOID
            align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7f8110400f18
            pointer_to_this <pointer_type 0x7f8110408000>>
        QI
        size <integer_cst 0x7f81103e2f60 constant 8>
        unit-size <integer_cst 0x7f81103e2f78 constant 1>
        align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7f81105887e0
        arg-types <tree_list 0x7f81103f6910 value <void_type 0x7f8110400f18
void>>>
    readonly addressable asm_written used nothrow static decl_5 QI
gcc/testsuite/g++.dg/other/pr47218.C:12:6 align:16 warn_if_not_align:0 context
<record_type 0x7f81105702a0 Foo3> initial <error_mark 0x7f81103e2e58>
abstract_origin <function_decl 0x7f8110572100 Bar>
    (mem:QI (symbol_ref:DI ("_ZN4Foo33BarEv.constprop.0") [flags 0x3]
<function_decl 0x7f811058c600 Bar.constprop>) [0  S1 A8])>
 Instead of: <function_decl 0x7f8110572500 _ZThn8_N4Foo33BarEv
    type <method_type 0x7f8110570690
        type <void_type 0x7f8110400f18 void VOID
            align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7f8110400f18
            pointer_to_this <pointer_type 0x7f8110408000>>
        QI
        size <integer_cst 0x7f81103e2f60 constant 8>
        unit-size <integer_cst 0x7f81103e2f78 constant 1>
        align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7f8110570690 method basetype <record_type 0x7f81105702a0 Foo3>
        arg-types <tree_list 0x7f8110571050 value <pointer_type 0x7f8110570930>
            chain <tree_list 0x7f81103f6910 value <void_type 0x7f8110400f18
void>>>
        pointer_to_this <pointer_type 0x7f8110573738>>
    readonly addressable used nothrow public ignored virtual decl_5 QI
gcc/testsuite/g++.dg/other/pr47218.h:32:16 align:8 warn_if_not_align:0 context
<record_type 0x7f81105702a0 Foo3> initial <block 0x7f811057e6c0>
    result <result_decl 0x7f8110566ca8 D.2615 type <void_type 0x7f8110400f18
void>
        ignored VOID gcc/testsuite/g++.dg/other/pr47218.C:19:1
        align:8 warn_if_not_align:0 context <function_decl 0x7f8110572500
_ZThn8_N4Foo33BarEv>>
    full-name "virtual void Foo3::_ZThn8_N4Foo33BarEv()"

    arguments <parm_decl 0x7f8110575580 this
        type <pointer_type 0x7f8110570a80 type <record_type 0x7f81105702a0
Foo3>
            readonly public unsigned DI
            size <integer_cst 0x7f81103e2e70 constant 64>
            unit-size <integer_cst 0x7f81103e2e88 constant 8>
            align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7f8110570a80>
        readonly unsigned read DI gcc/testsuite/g++.dg/other/pr47218.C:12:16
size <integer_cst 0x7f81103e2e70 64> unit-size <integer_cst 0x7f81103e2e88 8>
        align:64 warn_if_not_align:0 context <function_decl 0x7f8110572500
_ZThn8_N4Foo33BarEv> arg-type <pointer_type 0x7f8110570a80>>
    struct-function 0x7f8110561bb0>
_ZN4Foo3D2Ev/44 (Foo3::~Foo3()) @0x7f81105a09d8
  Type: function definition analyzed
  Visibility: artificial
  next sharing asm name: 13
  References: _ZTV4Foo3/20 (addr) _ZTV4Foo3/20 (addr) _ZTV7FooBase/21 (addr)
_ZTV7FooBase/21 (addr) _ZTV12FooBaseBase0/23 (addr) __gxx_personality_v0/32
(addr) 
  Referring: 
  Function Foo3::~Foo3()/44 is inline copy in virtual Foo3::~Foo3()/15
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local nonfreeing_fn
  Called by: _ZN4Foo3D0Ev/15 (inlined) (1073741824 (estimated locally),1.00 per
call) 
  Calls: _ZN4Foo33BarEv.constprop.0/41 (1073741824 (estimated locally),1.00 per
call) 
during IPA pass: inline
gcc/testsuite/g++.dg/other/pr47218.C:7:1: internal compiler error:
verify_cgraph_node failed
0xb8d09e cgraph_node::verify_node()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraph.c:3810
0xb7fcf4 symtab_node::verify()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/symtab.c:1312
0xddbf27 save_inline_function_body
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/ipa-inline-transform.c:658
0xddbf27 inline_transform(cgraph_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/ipa-inline-transform.c:695
0xf182dd execute_one_ipa_transform_pass
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/passes.c:2233
0xf182dd execute_all_ipa_transforms(bool)
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/passes.c:2272
0xb92b63 cgraph_node::expand()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraphunit.c:2293
0xb93db6 expand_all_functions
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraphunit.c:2471
0xb93db6 symbol_table::compile()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraphunit.c:2822
0xb9612c symbol_table::compile()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraphunit.c:2735
0xb9612c symbol_table::finalize_compilation_unit()
       
/var/tmp/portage/sys-devel/gcc-10.0.1_alpha20200426/work/gcc-10-20200426/gcc/cgraphunit.c:3002

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

end of thread, other threads:[~2020-04-30 16:23 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-29 17:43 [Bug ipa/94856] New: [10 Regression] ICE: Segmentation fault (in clone_of_p); or ICE: verify_cgraph_node failed (error: edge points to wrong declaration) asolokha at gmx dot com
2020-04-29 19:10 ` [Bug ipa/94856] [10 Regression] ICE: Segmentation fault (in clone_of_p); or ICE: verify_cgraph_node failed (error: edge points to wrong declaration) since r10-4944-g1e83bd7003e03160 marxin at gcc dot gnu.org
2020-04-29 19:12 ` marxin at gcc dot gnu.org
2020-04-30  6:45 ` rguenth at gcc dot gnu.org
2020-04-30  8:01 ` marxin at gcc dot gnu.org
2020-04-30  8:49 ` marxin at gcc dot gnu.org
2020-04-30  8:51 ` marxin at gcc dot gnu.org
2020-04-30 10:30 ` jamborm at gcc dot gnu.org
2020-04-30 14:37 ` jamborm at gcc dot gnu.org
2020-04-30 15:59 ` [Bug ipa/94856] [10/11 " cvs-commit at gcc dot gnu.org
2020-04-30 16:08 ` cvs-commit at gcc dot gnu.org
2020-04-30 16:23 ` jamborm at gcc dot gnu.org

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).