1.1 --- a/src/compiler/BytecodeEmitter.cpp Mon Nov 19 02:12:13 2012 -0800
1.2 +++ b/src/compiler/BytecodeEmitter.cpp Thu Dec 20 00:59:38 2012 -0800
1.3 @@ -282,6 +282,22 @@
1.4 return true;
1.5 }
1.6
1.7 +void
1.8 +BytecodeEmitter::newref(VariableSymbol *var)
1.9 +{
1.10 + recordOops();
1.11 + if (var->storage() == VariableSymbol::Local) {
1.12 + ensure(OP_VARREF_LIFO_LENGTH);
1.13 + writeOp(OP_VARREF_LIFO);
1.14 + } else {
1.15 + assert(var->storage() == VariableSymbol::Arg);
1.16 + ensure(OP_ARGREF_LIFO_LENGTH);
1.17 + writeOp(OP_ARGREF_LIFO);
1.18 + }
1.19 + writeUint32(var->slot());
1.20 + markOop(1);
1.21 +}
1.22 +
1.23 Code *
1.24 BytecodeEmitter::finish()
1.25 {