[Mono-devel-list] "precise location handling" patch for mcs

Atsushi Eno atsushi at ximian.com
Thu Dec 30 01:57:27 EST 2004


Hello,

> But I think I had better eliminate more "lexer.Location"
> for expressions. So lemme make advanced patch for it.

... and with the latest patch here, I mostly reduced improper
lexer.Location.

But I made several changes and the patch went worse :(
The patch size doubled (60k->120k),memory consumption became larger
(53M -> 59M for building mcs; details are below), and it still does
not handle precise location for stack traces.

I'll improve this patch as long as possible.


---- original source ----
    6012 KB Mono.CSharp.CSharpParser::yyparse(yyInput)
         883 KB    56564 Mono.CSharp.MemberName

########################
    2553 KB System.String::Concat(string,string,string)

Total memory allocated: 53898 KB

---- after
    6343 KB Mono.CSharp.CSharpParser::yyparse(yyInput)
        1106 KB    56657 Mono.CSharp.MemberName

########################
    3030 KB System.String::Concat(string,string,string)

########################
    2092 KB Mono.CSharp.Tokenizer::consume_identifier(int,bool)

########################
    1946 KB Mono.CSharp.Tokenizer::xtoken()

Total memory allocated: 59296 KB


Atsushi Eno
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mcs-location-1230.diff
Url: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20041230/563ac66c/attachment.pl 


More information about the Mono-devel-list mailing list