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
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel