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/49796] [4.7 Regression] 483.xalancbmk/447.dealII in SPEC CPU 2006 failed to build


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

Martin Jambor <jamborm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu.org

--- Comment #3 from Martin Jambor <jamborm at gcc dot gnu.org> 2011-07-21 12:22:33 UTC ---
verify_edge_corresponds_to_fndecl fails.  The reason is that
e->callee->former_clone_of is NULL.  Since e->callee is
_ZN10xalanc_1_814XalanDOMStringC2EPKtj.constprop.15198, that is
clearly incorrect.

Moreover, the node corresponding to decl, which is "__comp_ctor," does
not have an alias flag set.  I think that the name implies it should
be set too.  gimple_has_body returns false for it and, perhaps most
importantly, it's analyzed flag and analyzed flag of
e->callee->analyzed are cleared too.

This is all in ltrans stage of LTO.  I assume the flags are weird here
because the cloned function, its original and its alias end up in a
different partition.  I have tried building with -flto-partition=none
and it succeeded which supports this theory.

Perhaps we just should not do this check for !analyzed nodes?  Or
should we try to stream this info into different partitions too?
Honza?


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