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

            Bug ID: 97673
           Summary: [11 Regression] ICE in remap_gimple_stmt, at
                    tree-inline.c:1922
           Product: gcc
           Version: 11.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: ---

gfortran-11.0.0-alpha20201101 snapshot
(g:590febb5f6624f78b36402a7c9a9c318978f1efa) ICEs when compiling the following
testcase, extracted from gcc/testsuite/gfortran.dg/bind_c_usage_14.f03, w/ -O3
-fno-early-inlining --param large-stack-frame=400:

subroutine sub3noiso(a, b)
  use iso_c_binding
  implicit none
  character(len=1,kind=c_char) :: a(*), b
  character(len=1,kind=c_char):: x,z
  integer(c_int) :: y
  value :: b
  print *, a(1:2), b
entry sub3noisoEntry(x,y,z)
  x = 'd'
end subroutine sub3noiso

% powerpc-e300c3-linux-gnu-gfortran-11.0.0 -O3 -fno-early-inlining --param
large-stack-frame=400 -c lvybva48.f03
during IPA pass: inline
lvybva48.f03:9:0:

    9 | entry sub3noisoEntry(x,y,z)
      |
internal compiler error: in remap_gimple_stmt, at tree-inline.c:1922
0xedd483 remap_gimple_stmt
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:1922
0xee1393 copy_bb
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:2023
0xee2862 copy_cfg_body
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:3046
0xee2862 copy_body
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:3294
0xee5d7b expand_call_inline
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:5084
0xee7aac gimple_expand_calls_inline
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:5274
0xee7aac optimize_inline_calls(tree_node*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/tree-inline.c:5447
0xc30eee inline_transform(cgraph_node*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/ipa-inline-transform.c:763
0xd80fdf execute_one_ipa_transform_pass
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/passes.c:2240
0xd80fdf execute_all_ipa_transforms(bool)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/passes.c:2287
0x9fb6e2 cgraph_node::expand()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/cgraphunit.c:1822
0x9fcdae expand_all_functions
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/cgraphunit.c:1997
0x9fcdae symbol_table::compile()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/cgraphunit.c:2361
0x9fcdae symbol_table::compile()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/cgraphunit.c:2272
0x9ffa56 symbol_table::finalize_compilation_unit()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201101/work/gcc-11-20201101/gcc/cgraphunit.c:2542

(While my target here is powerpc, the ICE should not be target-specific.)

Reply via email to