https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92304
Bug ID: 92304
Summary: [10 regression] r277615 causes ICE compiling
gcc.target/powerpc/p9-splat-1.c
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ipa
Assignee: unassigned at gcc dot gnu.org
Reporter: seurer at gcc dot gnu.org
CC: marxin at gcc dot gnu.org
Target Milestone: ---
on LE only
Executing on host: /home3/seurer/gcc/build/gcc-test/gcc/xgcc
-B/home3/seurer/gcc/build/gcc-test/gcc/
/home/seurer/gcc/gcc-test/gcc/testsuite/gcc.target/powerpc/p9-splat-1.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -mdejagnu-cpu=power9 -O2
-ffat-lto-objects -fno-ident -S -o p9-splat-1.s (timeout = 300)
spawn -ignore SIGHUP /home3/seurer/gcc/build/gcc-test/gcc/xgcc
-B/home3/seurer/gcc/build/gcc-test/gcc/
/home/seurer/gcc/gcc-test/gcc/testsuite/gcc.target/powerpc/p9-splat-1.c
-fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
-fdiagnostics-color=never -fdiagnostics-urls=never -mdejagnu-cpu=power9 -O2
-ffat-lto-objects -fno-ident -S -o p9-splat-1.s
during IPA pass: icf
/home/seurer/gcc/gcc-test/gcc/testsuite/gcc.target/powerpc/p9-splat-1.c: In
function 'foo_r2':
/home/seurer/gcc/gcc-test/gcc/testsuite/gcc.target/powerpc/p9-splat-1.c:23:1:
internal compiler error: in verify_hash_value, at fold-const.c:3864
0x1061713f operand_compare::verify_hash_value(tree_node const*, tree_node
const*, unsigned int, bool*)
/home/seurer/gcc/gcc-test/gcc/fold-const.c:3864
0x1164608f ipa_icf_gimple::func_checker::operand_equal_p(tree_node const*,
tree_node const*, unsigned int)
/home/seurer/gcc/gcc-test/gcc/ipa-icf-gimple.c:406
0x11641883 ipa_icf_gimple::func_checker::compare_operand(tree_node*,
tree_node*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf-gimple.c:472
0x11641a2b ipa_icf_gimple::func_checker::compare_memory_operand(tree_node*,
tree_node*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf-gimple.c:321
0x11642a3f ipa_icf_gimple::func_checker::compare_gimple_assign(gimple*,
gimple*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf-gimple.c:791
0x116455af ipa_icf_gimple::func_checker::compare_bb(ipa_icf_gimple::sem_bb*,
ipa_icf_gimple::sem_bb*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf-gimple.c:638
0x1163d9ff ipa_icf::sem_function::equals_private(ipa_icf::sem_item*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:883
0x1163de3b ipa_icf::sem_function::equals(ipa_icf::sem_item*,
hash_map<symtab_node*, ipa_icf::sem_item*,
simple_hashmap_traits<default_hash_traits<symtab_node*>, ipa_icf::sem_item*>
>&)
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:806
0x1162cccf ipa_icf::sem_item_optimizer::subdivide_classes_by_equality(bool)
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:2813
0x1163e4e3 ipa_icf::sem_item_optimizer::execute()
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:2582
0x1164040f ipa_icf_driver
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:3679
0x1164040f ipa_icf::pass_ipa_icf::execute(function*)
/home/seurer/gcc/gcc-test/gcc/ipa-icf.c:3726
------------------------------------------------------------------------
r277615 | marxin | 2019-10-30 07:01:25 -0500 (Wed, 30 Oct 2019) | 14 lines
Integrate that for IPA ICF.
2019-10-30 Martin Liska <[email protected]>
* ipa-icf-gimple.c (func_checker::hash_operand): New.
(func_checker::compare_cst_or_decl): Remove handling
of FIELD_DECL.
(func_checker::compare_operand): Transform to ...
(func_checker::operand_equal_p): ... this.
* ipa-icf-gimple.h (class func_checker): Add
operand_equal_p and hash_operand.
* ipa-icf.c (sem_function::equals_private): Fix
pushing and popping of cfun.