> > Double checked this. Here is the gdb trace for speculative edges are not
> > adjacent
> > We do check e->speculative but in cgraph_edge::make_speculative we do
> > create_edge . So isn’t the original edge is still there?
> > AFIK this can happen even without AutoFDO too.
If the call is speculated, we should have all edges with speculative
flag, so I am still bit puzzled how ipa-profile can speculate on
something that already has speculative call.
Can you send node->debug() output so we can see if there is a duplicate
non-speculative edge (which should be caught by the verifier)
For profile merging I see how we can add speculation to already
speculative call, so for that the logic should be correct (also
probabilities should be correctly rescaled by the code), so we likely
need to fix to keep edges incremental, but still we should understand
what is going on here.
Honza
> >
> > This is the dump for order not being right?
> >
> >
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50f70, n2=n2@entry=0xfffff5a40dd0,
> > direct_count=..., speculative_id=speculative_id@entry=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50f70,
> > n2=n2@entry=0xfffff5a40dd0, direct_count=...,
> > speculative_id=speculative_id@entry=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000e1d0bc in ipa_profile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-profile.cc:953
> > #2 0x0000000000f9de2c in execute_one_pass (pass=pass@entry=0x355a450) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa7170 in execute_ipa_pass_list (pass=0x355a450) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae95e4 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec3c0 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e41cc in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _3 (&pNew, &b_1_0, &info);
> > $1 = void
> > (gdb) c
> > Continuing.
> > {heap 6336k} <icf> {heap 6336k} <devirt>
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50fd8, n2=n2@entry=0xfffff5a40ff0,
> > direct_count=direct_count@entry=..., speculative_id=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50fd8,
> > n2=n2@entry=0xfffff5a40ff0, direct_count=direct_count@entry=...,
> > speculative_id=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000dced68 in ipa_devirt () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-devirt.cc:3942
> > #2 0x0000000000f9de2c in execute_one_pass (pass=pass@entry=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa7170 in execute_ipa_pass_list (pass=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae95e4 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec3c0 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e41cc in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _4 (&pParent, &pCell);
> >
> > (gdb) c
> > Continuing.
> >
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50f70, n2=n2@entry=0xfffff5a40ee0,
> > direct_count=direct_count@entry=..., speculative_id=1) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50f70,
> > n2=n2@entry=0xfffff5a40ee0, direct_count=direct_count@entry=...,
> > speculative_id=1) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000dced68 in ipa_devirt () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-devirt.cc:3942
> > #2 0x0000000000f9de2c in execute_one_pass (pass=pass@entry=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa7170 in execute_ipa_pass_list (pass=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae95e4 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec3c0 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e41cc in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _3 (&pNew, &b_1_0, &info);
> > $3 = void
> > (gdb)
> >
> >
> > (gdb) c
> > Continuing.
> > {heap 6336k} <cp>sqlite3.c:72546:1: error: speculative edges are not
> > adjacent
> > balance_nonroot/7 (balance_nonroot)
> > Type: function definition analyzed
> > Visibility: externally_visible public
> > References: decodeFlags_pPage_0/5 (read) decodeFlags_pPage/4 (write)
> > cellSizePtrNoPayload/3 (addr) decodeFlags_pPage/4 (write)
> > decodeFlags_flagByte/6 (read) btreeParseCellPtr/1 (addr)
> > btreeParseCellPtrNoPayload/11 (addr) decodeFlags_pPage/4 (write)
> > btreeParseCellPtrIndex/2 (addr) btreeParseCellPtr/1 (addr) (speculative)
> > cellSizePtrNoPayload/3 (addr) (speculative) btreeParseCellPtrIndex/2 (addr)
> > (speculative)
> > Referring:
> > Availability: available
> > Profile id: 2029414804
> > Function flags: count:6838663652 (auto FDO) first_run:1 body hot
> > Called by: sqlite3_step/9 (1073741824 (estimated locally, globally 0 auto
> > FDO),1.00 per call)
> > Calls: btreeParseCellPtrIndex.constprop.0/12 (speculative) (0 (auto
> > FDO),0.00 per call) cellSizePtrNoPayload/3 (speculative) (8017743590
> > (guessed),1.17 per call) btreeParseCellPtr/1 (speculative) (20044358980
> > (auto FDO),2.93 per call)
> > indirect simple callsite, not calling a known parameter, flags 0, num
> > speculative call targets: 1
> > indirect simple callsite, not calling a known parameter, flags 0, num
> > speculative call targets: 2
> > during IPA pass: cp
> > sqlite3.c:72546:1: internal compiler error: verify_cgraph_node failed
> > 0x24292a7 internal_error(char const*, ...)
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/diagnostic-global-context.cc:787
> > 0xae101f cgraph_node::verify_node()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:4525
> > 0xaccab3 symtab_node::verify()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/symtab.cc:1377
> > 0xacdf83 symtab_node::verify_symtab_nodes()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/symtab.cc:1499
> > 0xe5ff8f symtab_node::checking_verify_symtab_nodes()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.h:730
> > 0xe5ff8f symbol_table::remove_unreachable_nodes(_IO_FILE*)
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa.cc:695
> > 0xf9acf3 execute_todo
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2166
> > Please submit a full bug report, with preprocessed source (by using
> > -freport-bug).
> > Please include the complete backtrace with any bug report.
> > See <https://gcc.gnu.org/bugs/> for instructions.
> > [Inferior 1 (process 332413) exited with code 04]
> > (gdb)
> >
> >
> > Here is the gdb dump for duplicate entry?
> >
> >
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50d68, n2=n2@entry=0xfffff5a40ee0,
> > direct_count=..., speculative_id=speculative_id@entry=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50d68,
> > n2=n2@entry=0xfffff5a40ee0, direct_count=...,
> > speculative_id=speculative_id@entry=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000e1a01c in ipa_profile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-profile.cc:953
> > #2 0x0000000000f9cd8c in execute_one_pass (pass=pass@entry=0x355a450) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa60d0 in execute_ipa_pass_list (pass=0x355a450) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae9544 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec320 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e412c in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _1 (&balance_nonroot_pParent, &apDiv);
> > $1 = void
> >
> >
> > Continuing.
> > {heap 6336k} <icf> {heap 6336k} <devirt>
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50dd0, n2=n2@entry=0xfffff5a40dd0,
> > direct_count=direct_count@entry=..., speculative_id=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50dd0,
> > n2=n2@entry=0xfffff5a40dd0, direct_count=direct_count@entry=...,
> > speculative_id=0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000dcccc8 in ipa_devirt () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-devirt.cc:3942
> > #2 0x0000000000f9cd8c in execute_one_pass (pass=pass@entry=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa60d0 in execute_ipa_pass_list (pass=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae9544 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec320 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e412c in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _2 (&balance_nonroot_pNew, _4, &balance_nonroot_info);
> > $2 = void
> >
> > Breakpoint 1, cgraph_edge::make_speculative
> > (this=this@entry=0xfffff5a50d68, n2=n2@entry=0xfffff5a40ee0,
> > direct_count=direct_count@entry=..., speculative_id=1) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > 1321 cgraph_node *n = caller;
> > (gdb) bt
> > #0 cgraph_edge::make_speculative (this=this@entry=0xfffff5a50d68,
> > n2=n2@entry=0xfffff5a40ee0, direct_count=direct_count@entry=...,
> > speculative_id=1) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:1321
> > #1 0x0000000000dcccc8 in ipa_devirt () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa-devirt.cc:3942
> > #2 0x0000000000f9cd8c in execute_one_pass (pass=pass@entry=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2656
> > #3 0x0000000000fa60d0 in execute_ipa_pass_list (pass=0x355a5b0) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:3118
> > #4 0x0000000000ae9544 in ipa_passes () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2299
> > #5 symbol_table::compile (this=this@entry=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2364
> > #6 0x0000000000aec320 in symbol_table::compile (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2342
> > #7 symbol_table::finalize_compilation_unit (this=0xfffff59c0000) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraphunit.cc:2623
> > #8 0x00000000010e412c in compile_file () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:482
> > #9 0x000000000086fec0 in do_compile () at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2225
> > #10 toplev::main (this=this@entry=0xfffffffff560, argc=<optimized out>,
> > argc@entry=6, argv=<optimized out>, argv@entry=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/toplev.cc:2390
> > #11 0x00000000008767b8 in main (argc=6, argv=0xfffffffff6e8) at
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/main.cc:39
> > (gdb) p print_gimple_stmt (stderr, call_stmt, 0, 0)
> > _1 (&balance_nonroot_pParent, &apDiv);
> > $3 = void
> >
> > Continuing.
> > {heap 6336k} <cp>sqlite3.c:128:14: error: speculative edges are not adjacent
> > balance_nonroot/7 (balance_nonroot)
> > Type: function definition analyzed
> > Visibility: externally_visible public
> > References: balance_nonroot_pParent/2 (read) balance_nonroot_pParent/2
> > (addr) decodeFlags_pPage/1 (write) cellSizePtrNoPayload/6 (addr)
> > decodeFlags_pPage/1 (write) btreeParseCellPtrIndex/5 (addr)
> > balance_nonroot_pNew/3 (read) balance_nonroot_pNew/3 (addr)
> > balance_nonroot_info/4 (addr) balance_nonroot_pParent/2 (addr)
> > cellSizePtrNoPayload/6 (addr) (speculative) balance_nonroot_pNew/3 (addr)
> > balance_nonroot_info/4 (addr) btreeParseCellPtrIndex/5 (addr) (speculative)
> > balance_nonroot_pParent/2 (addr) cellSizePtrNoPayload/6 (addr) (speculative)
> > Referring:
> > Availability: available
> > Profile id: 2029414804
> > Function flags: count:6838663652 (auto FDO) first_run:1 body hot
> > Called by: sqlite3_step/8 (1073741824 (estimated locally, globally 0 auto
> > FDO),1.00 per call)
> > Calls: cellSizePtrNoPayload.constprop.0/9 (speculative) (0 (auto FDO),0.00
> > per call) btreeParseCellPtrIndex.constprop.0/10 (speculative)
> > (1179834551162 (auto FDO),172.52 per call)
> > cellSizePtrNoPayload.constprop.0/9 (speculative) (29359090506 (auto
> > FDO),4.29 per call)
> > indirect simple callsite, not calling a known parameter, flags 0, num
> > speculative call targets: 1
> > indirect simple callsite, not calling a known parameter, flags 0, num
> > speculative call targets: 2
> > during IPA pass: cp
> > sqlite3.c:128:14: internal compiler error: verify_cgraph_node failed
> > 0x2429207 internal_error(char const*, ...)
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/diagnostic-global-context.cc:787
> > 0xae0f7f cgraph_node::verify_node()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.cc:4499
> > 0xaccab3 symtab_node::verify()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/symtab.cc:1377
> > 0xacdf83 symtab_node::verify_symtab_nodes()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/symtab.cc:1499
> > 0xe5ceef symtab_node::checking_verify_symtab_nodes()
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/cgraph.h:730
> > 0xe5ceef symbol_table::remove_unreachable_nodes(_IO_FILE*)
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/ipa.cc:695
> > 0xf99c53 execute_todo
> >
> > /mnt/scratch.grco_devs3/kvivekananda/hierarchical/gcc/gcc/passes.cc:2166
> > Please submit a full bug report, with preprocessed source (by using
> > -freport-bug).
> > Please include the complete backtrace with any bug report.
> > See <https://gcc.gnu.org/bugs/> for instructions.
> > [Inferior 1 (process 374309) exited with code 04]
> > (gdb)
> >
> >
> >
> >
> > IMO we need both the patches to fix them.
> >
> > Thanks,
> > Kugan
> >
> >
> >
> >
> >
> >
> >
> >
> >>
> >>
> >>>
> >>> Honza
>
>