http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47258
--- Comment #5 from Bingfeng Mei <bmei at broadcom dot com> 2011-01-13 15:49:23 UTC --- It works. But I have no idea about the debug info issue in your other comment. > (In reply to comment #2) > > After tried patches one-by-one, I believe the misoptimization is down to the > > following patch. > > Which is a correctness patch. You can try dumbing it down somewhat with > > if (TYPE_MAIN_VARIANT (TREE_TYPE (root1)) != TYPE_MAIN_VARIANT (TREE_TYPE > (root2)) > || !types_compatible_p (TREE_TYPE (root1), TREE_TYPE (root2))) > > and see if that helps.