Changeset 9630
- Timestamp:
- May 30, 2008, 6:56:24 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/working-0711/ccl/compiler/X86/X8664/x8664-vinsns.lisp
r9589 r9630 441 441 ((temp :u64))) 442 442 (rcmpw (:%w x8664::nargs) (:$w (:apply ash n x8664::word-shift))) 443 (mov w (:%w x8664::nargs) (:%wtemp))443 (movzwl (:%w x8664::nargs) (:%l temp)) 444 444 (jae :done) 445 445 :loop 446 (addw (:$w x8664::fixnumone) (:%w temp)) 447 (cmpw (:$w (:apply ash n x8664::word-shift)) (:%w temp)) 446 (addl (:$b x8664::fixnumone) (:%l temp)) 447 ((:pred < n 16) 448 (cmpl (:$b (:apply ash n x8664::word-shift)) (:%l temp))) 449 ((:pred >= n 16) 450 (cmpl (:$l (:apply ash n x8664::word-shift)) (:%l temp))) 448 451 (pushq (:$l x8664::nil-value)) 449 452 (jne :loop) … … 1640 1643 ((n :u16const)) 1641 1644 ((imm :u16))) 1645 (movzwl (:%w x8664::nargs) (:%l x8664::nargs)) 1642 1646 ((:pred = n 0) 1643 (xor q (:%q imm) (:%qimm)))1647 (xorl (:%l imm) (:%l imm))) 1644 1648 ((:not (:pred = n 0)) 1645 (mov w (:$w (:apply ash n x8664::fixnumshift)) (:%wimm)))1646 (sub w (:%w x8664::nargs) (:%wimm))1649 (movl (:$l (:apply ash n x8664::fixnumshift)) (:%l imm))) 1650 (subl (:%l x8664::nargs) (:%l imm)) 1647 1651 (jae :push-more) 1648 (movs wq (:%wimm) (:%q imm))1652 (movslq (:%l imm) (:%q imm)) 1649 1653 (subq (:%q imm) (:%q x8664::rsp)) 1650 1654 (jmp :done) 1651 1655 :push-loop 1652 1656 (pushq (:$l x8664::nil-value)) 1653 (add w (:$b x8664::node-size) (:%wx8664::nargs))1654 (sub w (:$b x8664::node-size) (:%wimm))1657 (addl (:$b x8664::node-size) (:%l x8664::nargs)) 1658 (subl (:$b x8664::node-size) (:%l imm)) 1655 1659 :push-more 1656 1660 (jne :push-loop) … … 3192 3196 (define-x8664-vinsn opt-supplied-p (() 3193 3197 ()) 3198 (movzwl (:%w x8664::nargs) (:%l x8664::nargs)) 3194 3199 (xorl (:%l x8664::imm1) (:%l x8664::imm1)) 3195 3200 (movl (:$l x8664::t-value) (:%l x8664::arg_y)) 3196 3201 :loop 3197 (rcmp w (:%w x8664::imm1) (:%wx8664::nargs))3202 (rcmpl (:%l x8664::imm1) (:%l x8664::nargs)) 3198 3203 (movl (:$l x8664::nil-value) (:%l x8664::arg_z)) 3199 3204 (cmovll (:%l x8664::arg_y) (:%l x8664::arg_z)) … … 3575 3580 ((temp :u32))) 3576 3581 (movl (:%l src) (:%l temp)) 3577 (sarl (:$ub (+ x8664::fixnumshift 11)) (:%l temp)) 3582 (sarl (:$ub (+ x8664::fixnumshift 1)) (:%l temp)) 3583 (cmpl (:$l (ash #xfffe -1)) (:%l temp)) 3584 (je :bad-if-eq) 3585 (sarl (:$ub (- 11 1)) (:%l temp)) 3578 3586 (cmpl (:$b (ash #xd800 -11))(:%l temp)) 3587 :bad-if-eq 3579 3588 (movl (:$l x8664::nil-value) (:%l temp)) 3580 3589 (cmovel (:%l temp) (:%l dest))
Note:
See TracChangeset
for help on using the changeset viewer.
