(cond ((zerop nvals))
((= nvals 1)
(let ((no-values (gen-label)))
- (inst beq count zero-tn no-values)
+ (inst beq count no-values)
(move (tn-ref-tn values) null-tn t)
(loadw (tn-ref-tn values) start)
(emit-label no-values)))
(tn (tn-ref-tn tn-ref)))
(defaults (cons default-lab tn))
- (inst beq count zero-tn default-lab)
+ (inst beq count default-lab)
(inst addu count count (fixnumize -1))
(sc-case tn
((descriptor-reg any-reg)
(sc-case new-start
(any-reg (move new-start dst))
(control-stack (store-stack-tn new-start dst)))
- (inst beq num zero-tn done)
+ (inst beq num done)
(inst nop)
(sc-case new-count
(any-reg (move new-count num))
(emit-label loop)
(loadw temp src)
(inst addu src src n-word-bytes)
- (storew temp dst)
(inst addu num num (fixnumize -1))
- (inst bne num zero-tn loop)
+ (storew temp dst)
+ (inst bne num loop)
(inst addu dst dst n-word-bytes)
(emit-label done)