Just so this doesn't get lost in threads dealing with SelectionDAG issues, I'd like to post this patch for review. It changes the SDUse list from an intrusive list to a std::list<> under XDEBUG. This allows us to use the debugging features of the standard library to track down stubborn bugs. I've used this to diagnose in issue in SelectionDAG in our sources and also in the Blackfin codegen on TOT. Please review, comment and let me know what needs to change for commit. Thanks! -Dave -------------- next part -------------- A non-text attachment was scrubbed... Name: sdxdebug.patch Type: text/x-patch Size: 7881 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100301/b83b5e81/attachment.bin>
Do you have a fix for the blackfin codegen? That would be a great way to motivate this patch. Otherwise, at a glance, it appears you fixed the issues I raised, so this is fine, if it catches real bugs. Dan On Mar 1, 2010, at 10:02 AM, David Greene wrote:> Just so this doesn't get lost in threads dealing with SelectionDAG > issues, I'd like to post this patch for review. It changes the SDUse > list from an intrusive list to a std::list<> under XDEBUG. This allows > us to use the debugging features of the standard library to track down > stubborn bugs. > > I've used this to diagnose in issue in SelectionDAG in our sources and > also in the Blackfin codegen on TOT. > > Please review, comment and let me know what needs to change for > commit. > > Thanks! > > -Dave > > <sdxdebug.patch>_______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On Monday 01 March 2010 20:34:07 Dan Gohman wrote:> Do you have a fix for the blackfin codegen? That would be a great > way to motivate this patch.I'm not following you. Why does a fix for a bug have anything to do with a patch that catches bugs?> Otherwise, at a glance, it appears you fixed the issues I raised, > so this is fine, if it catches real bugs.Oh, it catches real bugs. I'm still trying to determine what in our code causes it to trip elsewhere. But regardless, it's a defensive programming technique and to me that's valuable even if it never finds a bug. -Dave