Code Review: Interpret1

tfpt review “/shelveset:Interpret1;REDMOND\tomat”

Microsoft.Scripting:
Fixes variable lookup and evaluation of OrExpression in interpreter.
Reduces amount of generated code during interpretation by using
generic methods for delegate targets in LambdaInvoker. New methods are
generated only if a signature that doesn’t match any of the generic
methods is needed.
Adds InterpretedScriptCode that derives from ScriptCode and runs
interpreter instead of compiler.

Ruby:
Uses InterpretedScriptCode.
Modifies test runner to run interpreted mode and also to measure time.
Removes calls to obsolete Ast.RuntimeConstant.

Tomas

I need to double check tomorrow, but I believe the SNAP runs -fast and
-checkin from run.rb (common.rb is used by run.rb), so your current
changes might break SNAP.


From: Tomas M.
Sent: Thursday, June 26, 2008 6:11 PM
To: IronRuby External Code R.; Rowan Code R.; DLR Code
Reviews
Cc: [email protected]
Subject: Code Review: Interpret1

tfpt review “/shelveset:Interpret1;REDMOND\tomat”

Microsoft.Scripting:
Fixes variable lookup and evaluation of OrExpression in interpreter.
Reduces amount of generated code during interpretation by using
generic methods for delegate targets in LambdaInvoker. New methods are
generated only if a signature that doesn’t match any of the generic
methods is needed.
Adds InterpretedScriptCode that derives from ScriptCode and runs
interpreter instead of compiler.

Ruby:
Uses InterpretedScriptCode.
Modifies test runner to run interpreted mode and also to measure time.
Removes calls to obsolete Ast.RuntimeConstant.

Tomas

I was right. We are running -fast and -checkin in SNAP. Tomas, could you
undo the test changes, and I’ll get them running under all three modes?

JD