Summary: | investigate cdt parser update | ||
---|---|---|---|
Product: | frysk | Reporter: | Andrew Cagney <cagney> |
Component: | general | Assignee: | Rick Moseley <rmoseley> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | mcvet |
Priority: | P2 | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Host: | Target: | ||
Build: | Last reconfirmed: | ||
Bug Depends on: | |||
Bug Blocks: | 3392 |
Description
Andrew Cagney
2006-11-24 15:43:21 UTC
Re: #3643, it ends up that the CDTParser was not mindlessly spinning - it was actually parsing the code, just slowly. According to Rick's initial timing with a testing standalone parser, parsing the approximately 780k of johntheripper source code took about 4.5 minutes. I attempted running the SourceWindow on that code a similar length of time and can verify those results. Setting parsing mode to "full parse" in eclipse appears to be nearly snappy. This was a bug in the way include paths were being added to the DOM. Some include paths were being added multiple times forcing the parser to create readers and parser those paths multiple times, thereby causing the slowdown. Changes have been made to DOMFactory.java to keep this from happening. Tests now show the time to parse johntheripper dropped from 4.5 minutes to about .5 minutes. Sorry. The previous comment was meant for a different bug. Currently we are using a version of the CDT Parser cut from version 2.0 of the Eclipse CDT. This version allowed iteself to be used as a stand-alone parser that could be instantiated and used by other programs. Since then, the CDT Parser has been totally redesigned and split into 2 pieces, an indexer and a parser. I'm not sure what exactly each piece does. During the rewrite the new parser has been made more dependent on elements in the eclipse core making it virtually impossible to use in a stand-alone mode. There is a move afoot to resolve this and a bugzilla has been filed for this action here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=151846 This effort is ongoing. I will try to find out what is happening with this and if this has occurred yet. The last comment in this bugzilla was in Oct. 2006, so maybe they have made some progress. After sending an e-mail to Mike Kucera of IBM who posted links to some of the latest CDT Parser documentation, he verified there is a new stand-alone version of the CDTParser being used inside of IBM. He requested I send an e-mail to the cdt-dev list and ask for some help in this. |