# HG changeset patch # User Matthew Wild # Date 1290266359 0 # Node ID 633e414a496cba78f28d94c0b2276be3944906df # Parent 14d2400ec059b2b093056e2db71506ad468b21f9 Implement OP_DIV (no metamethod yet) diff -r 14d2400ec059 -r 633e414a496c lvm.js --- a/lvm.js Sat Nov 20 12:13:12 2010 +0000 +++ b/lvm.js Sat Nov 20 15:19:19 2010 +0000 @@ -13,6 +13,7 @@ var OP_SELF = 11; var OP_ADD = 12; var OP_SUB = 13; +var OP_DIV = 15; var OP_JMP = 22; var OP_EQ = 23; var OP_LT = 24; @@ -580,6 +581,11 @@ var RC = RK(frame, INS_C(instruction)); frame.reg[INS_A(instruction)] = new LValue(this, "number", RB.value - RC.value); break; + case OP_DIV: + var RB = RK(frame, INS_B(instruction)); + var RC = RK(frame, INS_C(instruction)); + frame.reg[INS_A(instruction)] = new LValue(this, "number", RB.value / RC.value); + break; case OP_EQ: var A = INS_A(instruction); var RB = RK(frame, INS_B(instruction));