[Mono-devel-list] freeing intermediate structures in mcs

Varga Zoltan vargaz at freemail.hu
Mon Apr 7 14:22:48 EDT 2003


                                          Hi,

  Currently mcs retains the syntax trees for all methods
till the end of
compilation, consuming lots of memory. Is this necessary? I
tried setting
the 'block' variable to null at the end of Emit() and this
alone reduced
the peak memory used by mcs during corlib compilation by
about 10%
and it also increased its speed somewhat (due to faster
collections). 
The attached patch implements this idea.

Also, there was some talk about emitting the list of
namespaces of an
assembly into a special resource during compilation. Is this
still true?
If it is, I could make up a patch for that...

         bye

              Zoltan 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mcs.patch
Type: application/octet-stream
Size: 3003 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20030407/0fd62f2b/attachment.obj 


More information about the Mono-devel-list mailing list