[Bug ipa/96734] New: gcc 10.2.0 fails to compile on mips64 due to crash in IPA SRA pass

ariadne at dereferenced dot org gcc-bugzilla@gcc.gnu.org
Fri Aug 21 11:18:22 GMT 2020


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

            Bug ID: 96734
           Summary: gcc 10.2.0 fails to compile on mips64 due to crash in
                    IPA SRA pass
           Product: gcc
           Version: 10.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ariadne at dereferenced dot org
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---

When building gcc 10.2.0 using previous gcc 9.3.0 on a mips64 host, gcc 10.2.0
crashes while building stage3:

during IPA pass: sra
In file included from
/home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/cp/method.c:3199:
./gt-cp-method.h:36:2: internal compiler error: Segmentation fault
   36 | };
      |  ^
0x1208017a3 crash_signal
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/toplev.c:328
0x12041ef55 cgraph_edge::redirect_callee(cgraph_node*)
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/cgraph.c:1374
0x120431cd3 cgraph_edge::redirect_callee_duplicating_thunks(cgraph_node*)
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/cgraphclones.c:262
0x120432167 cgraph_node::create_clone(tree_node*, profile_count, bool,
vec<cgraph_edge*, va_heap, vl_ptr>, bool, cgraph_node*, ipa_param_adjustments*,
char const*)
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/cgraphclones.c:427
0x12043258b cgraph_node::create_virtual_clone(vec<cgraph_edge*, va_heap,
vl_ptr>, vec<ipa_replace_map*, va_gc, vl_embed>*, ipa_param_adjustments*, char
const*, unsigned int)
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/cgraphclones.c:613
0x1205eba27 process_isra_node_results
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/ipa-sra.c:3811
0x1205eba27 ipa_sra_analysis
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/ipa-sra.c:4047
0x1205eba27 execute
        /home/buildozer/aports/main/gcc/src/gcc-10.2.0/gcc/ipa-sra.c:4099
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Full log of building cp/method.o:
https://distfiles.dereferenced.org/method.log

method.ii:
https://distfiles.dereferenced.org/method.ii

Unfortunately I wouldn't know where to begin creating a reduced test case for
this.  Sorry.

I suspect the issue is because `caller` is null, which means
to->check_calls_comdat_local_p() does a null dereference when trying to fetch
the vtable.  But I could be wrong entirely.  :)


More information about the Gcc-bugs mailing list