Only use OP_VBIND[S] for values other than 0-th

This commit is contained in:
Juan Jose Garcia Ripoll 2008-06-09 18:40:23 +02:00
parent 7bdc8ce4cd
commit 93586f613c

View file

@ -1402,10 +1402,18 @@ c_multiple_value_bind(cl_object args, int flags)
FEillegal_variable_name(var);
if (c_declared_special(var, specials)) {
c_register_var(var, FLAG_PUSH, TRUE);
asm_op2(OP_VBINDS, n);
if (n) {
asm_op2(OP_VBINDS, n);
} else {
asm_op(OP_BINDS);
}
} else {
c_register_var(var, FALSE, TRUE);
asm_op2(OP_VBIND, n);
if (n) {
asm_op2(OP_VBIND, n);
} else {
asm_op(OP_BIND);
}
}
asm_c(var);
}