Hi, all Can a gate keeper help review this patch. See https://bugs.open64.net/show_bug.cgi?id=883 for reference. Revision 3760 add a new member "mINT32 line" to structure ST, it cause the function eq_const_st::operator() get wrong return value, then make the symbol merge process in IPA not work. following is the patch. I add a common to make sure anyone who add new member to structure ST also update function eq_const_st::operator()
Index: osprey/common/com/symtab_defs.h =================================================================== --- osprey/common/com/symtab_defs.h (revision 3776) +++ osprey/common/com/symtab_defs.h (working copy) @@ -261,6 +261,8 @@ mUINT32 line; // The line num where define the sym in the source file. + // Make sure to update function eq_const_st::operator() in file ipc_symtab_merge.cxx + // operations ST () {Fail_FmtAssertion("ST default constructor must not be called.");} Index: osprey/ipa/common/ipc_symtab_merge.cxx =================================================================== --- osprey/ipa/common/ipc_symtab_merge.cxx (revision 3776) +++ osprey/ipa/common/ipc_symtab_merge.cxx (working copy) @@ -159,7 +159,7 @@ struct eq_const_st { bool operator() (const ST* st1, const ST* st2) const { - return memcmp (st1, st2, sizeof(ST) - sizeof(ST_IDX) * 2 - sizeof(TY_IDX)) == 0; + return memcmp (st1, st2, sizeof(ST) - sizeof(ST_IDX) * 2 - sizeof(TY_IDX) - sizeof(mUINT32)) == 0; } }; -- yongchong ------------------------------------------------------------------------------ Get your Android app more play: Bring it to the BlackBerry PlayBook in minutes. BlackBerry App World™ now supports Android™ Apps for the BlackBerry® PlayBook™. Discover just how easy and simple it is! http://p.sf.net/sfu/android-dev2dev _______________________________________________ Open64-devel mailing list Open64-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open64-devel