Implement OP_SETUPVALUE \o/

Sat, 22 May 2010 20:14:33 +0100

author
Matthew Wild <mwild1@gmail.com>
date
Sat, 22 May 2010 20:14:33 +0100
changeset 26
5c7eafb47830
parent 25
9e62bc13b30d
child 27
35a2203253a6

Implement OP_SETUPVALUE \o/

lvm.js file | annotate | diff | comparison | revisions
--- a/lvm.js	Sat May 22 20:08:03 2010 +0100
+++ b/lvm.js	Sat May 22 20:14:33 2010 +0100
@@ -282,7 +282,10 @@
 				this.frame.reg[INS_A(instruction)] = this.frame.f.environment.index(name);
 				break;
 			case OP_SETUPVAL:
-				throw "Setting upvalues not implemented yet, sorry :)";
+				var reg = this.frame.reg[INS_A(instruction)];
+				var upvalue = this.frame.f.upvalues[INS_B(instruction)];
+				upvalue.type = reg.type;
+				upvalue.value = reg.value;
 				break;
 			case OP_SETGLOBAL:
 				var name = this.frame.f.constants[INS_Bx(instruction)];

mercurial