[svn] r7182: nemerle/trunk/ncc/generation/ILEmitter.n

malekith svnadmin at nemerle.org
Mon Jan 1 13:01:44 CET 2007


Log:
Optimize if/else a bit. Patch by Evin Robertson from #815

Author: malekith
Date: Mon Jan  1 13:01:43 2007
New Revision: 7182

Modified:
   nemerle/trunk/ncc/generation/ILEmitter.n

Modified: nemerle/trunk/ncc/generation/ILEmitter.n
==============================================================================
--- nemerle/trunk/ncc/generation/ILEmitter.n	(original)
+++ nemerle/trunk/ncc/generation/ILEmitter.n	Mon Jan  1 13:01:43 2007
@@ -574,6 +574,10 @@
           def emit_branch (expr : TExpr, else_label : Label) {
             Mark (expr.loc);
             match (expr) {
+              | Call (OpCode ("=="), [nested_cond,
+                 Parm where (expr = TExpr.TypeConversion(TExpr.Literal(Literal.Bool(true)), _, _))], _) =>
+                emit_branch(nested_cond.expr, else_label)
+
               | Call (OpCode (opcode), parms, _) =>
                 emit_parms (parms);
 



More information about the svn mailing list