[Ironruby-core] FYI Code Review: interpreted sites

Tomas Matousek Tomas.Matousek at microsoft.com
Mon Aug 25 21:30:03 EDT 2008

tfpt review "/shelveset:InterpretedSites7-PartI;REDMOND\tomat"

The first part of DLR interpreter improvements that has already been reviewed. The rest of the changes are awaiting DLR design review.

Ruby changes:

  Removes usage of return statement from generated MetaObject expressions.

  Replaces Debug.WriteLine with Utils.Log - unfortunately, Debug.WriteLine(string message, string category) ignores the category so it's not possible to filter the messages by the category in trace listener. The other overload Debug.WriteLine(object  message, string category) passes the category to the filter correctly :-/. So we use the latter.

  Adds command line options: -ET*, -DT*, -ET <symbols>, -DT <symbols> that enable all, disable all, enable specified, disable specified Utils.Log messages, respectively.

  Adds more time measurements.

DLR changes:

  Various minor improvements in interpreter.

  Debug only DLR options are no longer available in release mode. It was confusing that they were accepted but didn't work.

  Uses Snippets for generating dynamic methods in Interpreter.MatchCaller. This enables us to look at the generated code in the Snippets assembly (and more importantly, to see how much IL is emitted).

  Changes EmptyStatement and ConstantExpression.True, False, Null, Zero factories to return singleton instances.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: InterpretedSites7-PartI.diff
Type: application/octet-stream
Size: 33468 bytes
Desc: InterpretedSites7-PartI.diff
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20080825/dbfdbbb0/attachment-0001.obj>

More information about the Ironruby-core mailing list