mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-01 23:30:40 -08:00
Only use OP_VBIND[S] for values other than 0-th
This commit is contained in:
parent
0c3af3fbc8
commit
5aa07e402d
1 changed files with 10 additions and 2 deletions
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue