https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78029
Bug ID: 78029 Summary: ICE in maybe_record_trace_start, at dwarf2cfi.c:2285 Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: pthaugen at gcc dot gnu.org CC: dje at gcc dot gnu.org, segher at gcc dot gnu.org, wschmidt at gcc dot gnu.org Target Milestone: --- Host: powerpc64*-unknown-linux-gnu Target: powerpc64*-unknown-linux-gnu Build: powerpc64*-unknown-linux-gnu The following reduced testcase shows an ICE that occurs when building 483.xalancbmk from cpu2006. class A { public: static unsigned short fgXMLString[]; }; class B { bool hasFeature() const; }; class XMLString { public: static int compareIString(const unsigned short *); static bool equals(const unsigned short *, const unsigned short *); }; const short chDigit_1 = 1; const unsigned short g1_0[]{chDigit_1}; const unsigned short g2_0[]{2}; const unsigned short g3_0[]{3, 4}; const unsigned short gRange[]{}; unsigned short *hasFeature_version; inline bool XMLString::equals(const unsigned short *p1, const unsigned short *p2) { if (p1 == 0) return false; while (*p1 == *p2) { if (!*p1) return true; p1++; p2++; } return false; } bool B::hasFeature() const { bool anyVersion = hasFeature_version == 0 || !*hasFeature_version, version1_0 = XMLString::equals(hasFeature_version, g1_0); bool version2_0 = XMLString::equals(hasFeature_version, g2_0); bool version3_0 = XMLString::equals(hasFeature_version, g3_0); if (XMLString::compareIString(A::fgXMLString) && version2_0) return true; if (anyVersion || version1_0 || version2_0 || version3_0) return true; XMLString::compareIString(gRange); } $ /home/pthaugen/install/gcc/trunk/bin/g++ -s -m64 -O2 -mcpu=power6 DOMImplementationImpl.ii DOMImplementationImpl.ii: In member function ‘bool B::hasFeature() const’: DOMImplementationImpl.ii:41:1: internal compiler error: in maybe_record_trace_start, at dwarf2cfi.c:2285 } ^ 0x10665753 maybe_record_trace_start /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:2285 0x10665c27 create_trace_edges /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:2379 0x10665e07 scan_trace /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:2593 0x10666aa3 create_cfi_notes /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:2619 0x10666aa3 execute_dwarf2_frame /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:2977 0x10666aa3 execute /home/pthaugen/src/gcc/trunk/gcc/gcc/dwarf2cfi.c:3457 Please submit a full bug report, with preprocessed source if appropriate.