dae1990a00
This uses the same map strategy (and same duplicate code) as previous commits, but this one generates a map for two separate tables. There is more room for improvement, but this cuts down on the time a lot. Also keep in mind that this is performed multiple times (once per pass), so it's still worth revisiting. Performance is still very poor for very large (many thousands of symbols) symbol tables. The next slowest part appears to be the fragment compilation. I'm nearing the end of the low-low-hanging fruit for maps. The /common/gl package mentioned in previous commits that previously took over a minute to compile now compiles in 20s as of this commit on equivalent hardware. * src/current/include/preproc/symtable.xsl (@xmlns:map): New namespace declaration. (preproc:symtable-process-symbols): Create map for `cursym' and `extresults'. Use it. Remove unused `dup'. Output message when done (another is output slightly later on in the process). |
||
---|---|---|
.. | ||
current | ||
js | ||
preproc/expand | ||
symtable | ||
graph.xsl | ||
init.xsl.in | ||
symtable.xsl |