https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87863
Bug ID: 87863 Summary: c-c++-common/gomp/gridify-{2,3}.c ICE Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: openmp Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: tschwinge at gcc dot gnu.org CC: jamborm at gcc dot gnu.org, nathan at gcc dot gnu.org Target Milestone: --- As of r265714 "[ABI PATCH] static anonymous unions of function scope", and with checking enabled (might be relevant, see "gcc_checking_assert" below), I'm seeing the following regressions: PASS: c-c++-common/gomp/gridify-2.c -std=gnu++14 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-2.c -std=gnu++14 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-2.c -std=gnu++14 (test for excess errors) PASS: c-c++-common/gomp/gridify-2.c -std=gnu++17 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-2.c -std=gnu++17 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-2.c -std=gnu++17 (test for excess errors) PASS: c-c++-common/gomp/gridify-2.c -std=gnu++98 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-2.c -std=gnu++98 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-2.c -std=gnu++98 (test for excess errors) PASS: c-c++-common/gomp/gridify-3.c -std=gnu++14 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-3.c -std=gnu++14 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-3.c -std=gnu++14 (test for excess errors) PASS: c-c++-common/gomp/gridify-3.c -std=gnu++17 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-3.c -std=gnu++17 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-3.c -std=gnu++17 (test for excess errors) PASS: c-c++-common/gomp/gridify-3.c -std=gnu++98 scan-tree-dump omplower "Target construct will be turned into a gridified HSA kernel" [-PASS:-]{+FAIL: c-c++-common/gomp/gridify-3.c -std=gnu++98 (internal compiler error)+} {+FAIL:+} c-c++-common/gomp/gridify-3.c -std=gnu++98 (test for excess errors) (gdb) bt #0 fancy_abort (file=0x1af2e90 "[...]/gcc/cp/mangle.c", line=1925, function=0x1af3970 <discriminator_for_local_entity(tree_node*)::__FUNCTION__> "discriminator_for_local_entity") at [...]/gcc/diagnostic.c:1560 #1 0x00000000007c8ac1 in discriminator_for_local_entity (entity=entity@entry=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:1925 #2 0x00000000007d04eb in write_local_name (entity=0x7ffff6934ea0, local_entity=0x7ffff6934ea0, function=<optimized out>) at [...]/gcc/cp/mangle.c:2035 #3 write_name (decl=decl@entry=0x7ffff6934ea0, ignore_local_scope=ignore_local_scope@entry=0) at [...]/gcc/cp/mangle.c:963 #4 0x00000000007d4c8a in write_encoding (decl=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:824 #5 0x00000000007d6ab0 in mangle_decl_string (decl=decl@entry=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:3765 #6 0x00000000007d6cf9 in get_mangled_id (decl=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:3787 #7 mangle_decl (decl=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:3825 #8 0x00000000011f6616 in decl_assembler_name (decl=0x7ffff6934ea0) at [...]/gcc/tree.c:691 #9 0x0000000000a430fd in symbol_table::insert_to_assembler_name_hash (this=0x7ffff67ac100, node=0x7ffff6933e00, with_clones=<optimized out>) at [...]/gcc/symtab.c:174 #10 0x0000000000a45495 in symbol_table::symtab_initialize_asm_name_hash (this=0x7ffff67ac100) at [...]/gcc/symtab.c:266 #11 0x0000000000a454d5 in symbol_table::symtab_initialize_asm_name_hash (this=<optimized out>) at [...]/gcc/symtab.c:262 #12 0x0000000000a5d6c3 in analyze_functions (first_time=first_time@entry=true) at [...]/gcc/cgraphunit.c:1289 #13 0x0000000000a5dcc3 in symbol_table::finalize_compilation_unit (this=0x7ffff67ac100) at [...]/gcc/cgraphunit.c:2833 #14 0x0000000000f2f06d in compile_file () at [...]/gcc/toplev.c:480 #15 0x00000000006b7095 in do_compile () at [...]/gcc/toplev.c:2172 #16 toplev::main (this=this@entry=0x7fffffffc260, argc=argc@entry=33, argv=argv@entry=0x7fffffffc368) at [...]/gcc/toplev.c:2307 #17 0x00000000006ba9c7 in main (argc=33, argv=0x7fffffffc368) at [...]/gcc/main.c:39 (gdb) frame 1 #1 0x00000000007c8ac1 in discriminator_for_local_entity (entity=entity@entry=0x7ffff6934ea0) at [...]/gcc/cp/mangle.c:1925 1925 gcc_checking_assert (DECL_ARTIFICIAL (entity)); (gdb) call debug_tree(entity) <var_decl 0x7ffff6934ea0 Bs type <array_type 0x7ffff6910dc8 type <array_type 0x7ffff6910c78 type <real_type 0x7ffff67cf2a0 float> sizes-gimplified type_6 BLK size <integer_cst 0x7ffff67cb4b0 constant 512> unit-size <integer_cst 0x7ffff691d720 constant 64> align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff6910c78 domain <integer_type 0x7ffff6910bd0>> sizes-gimplified BLK size <integer_cst 0x7ffff691d708 constant 8192> unit-size <integer_cst 0x7ffff691d738 constant 1024> align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff6910dc8 domain <integer_type 0x7ffff6910bd0 type <integer_type 0x7ffff67c7000 sizetype> sizes-gimplified type_6 DI size <integer_cst 0x7ffff67a9df8 constant 64> unit-size <integer_cst 0x7ffff67a9e10 constant 8> align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff6910bd0 precision:64 min <integer_cst 0x7ffff67a9e28 0> max <integer_cst 0x7ffff691d6f0 15>> pointer_to_this <pointer_type 0x7ffff6910738>> addressable used static tree_1 read decl_5 BLK source-gcc/gcc/testsuite/c-c++-common/gomp/gridify-2.c:18:16 size <integer_cst 0x7ffff691d708 8192> unit-size <integer_cst 0x7ffff691d738 1024> align:256 warn_if_not_align:0 context <function_decl 0x7ffff690fd00 tiled_sgemm_tt> attributes <tree_list 0x7ffff692ce10 purpose <identifier_node 0x7ffff6939180 hsa_group_segment normal local bindings <(nil)>>> abstract_origin <var_decl 0x7ffff7ff6ea0 Bs> chain <var_decl 0x7ffff69412d0 C_row_start>>