[Mono-dev] Incremental C# compiler

Martin Baulig martin at ximian.com
Thu Jul 13 01:32:26 EDT 2006


On Wed, 2006-07-12 at 16:14 +0200, David Srbecky wrote:

> So semantic analysis is the part that takes vast majority of the time 
> and the problem is that gmcs can not easily invalidate previously added 
> metadata. Right?

Hello,

> What if we add the constraint that only the bodies of methods can 
> change? The metadata of the new code would be determined on the first 
> run and then it would never change and thus it would not need to be 
> invalidated. Also the preciously done semantic analysis for any 
> unchanged functions would still be valid.

just realized one more thing: several of the metadata tables have to be
sorted.

This means that you always have to recompute the whole metadata and then
re-emit the whole assembly since table indices may have changed.

Martin







More information about the Mono-devel-list mailing list