This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug lto/59543] [4.9 Regression] lto1: fatal error: Cgraph edge statement index out of range


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59543

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #31527|0                           |1
        is obsolete|                            |

--- Comment #5 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Created attachment 31851
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31851&action=edit
smaller testcase

Here's a smaller testcase, that just needs two input files
(but uniset.ii still needs its gcda file):

markus@x4 lto_pgo_testcase % cat unorm.ii
namespace icu_50 {
class UnicodeString {
 public:
  UnicodeString();
  void extractBetween(int, int, unsigned short *, int = 0) const;
  void doExtract(int, unsigned short *, int) const;
  void pinIndex(int &) const;
};
inline void UnicodeString::extractBetween(int p1, int p2, unsigned short *p3,
                                          int p4) const {
  pinIndex(p1);
  doExtract(p2 - p1, p3, p4);
}
UnicodeString::UnicodeString() { extractBetween(0, 0, 0); }
UnicodeString a;
}

markus@x4 lto_pgo_testcase % g++ -g -fPIC -flto -fno-exceptions -O2 -std=c++11
-c unorm.ii
markus@x4 lto_pgo_testcase % g++ -w -g -fprofile-use -fPIC -flto
-fno-exceptions -O2 -std=c++11 -c uniset.ii
markus@x4 lto_pgo_testcase % g++ -flto -O2 uniset.o unorm.o
In member function âextractBetweenâ:
lto1: fatal error: Cgraph edge statement index out of range 28 < 46
compilation terminated.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]