Changeset 7904
- Timestamp:
- Dec 12, 2007, 11:07:54 PM (17 years ago)
- File:
-
- 1 edited
-
branches/ia32/level-0/X86/X8632/x8632-bignum.lisp (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/ia32/level-0/X86/X8632/x8632-bignum.lisp
r7903 r7904 34 34 (defx8632lapfunction %digit-zerop ((x arg_z)) 35 35 (svref x 0 imm0) 36 ( xorl (% arg_z) (% arg_z))36 (movl ($ x8632::nil-value) (% arg_z)) 37 37 (testl (% imm0) (% imm0)) 38 (cmov nz ($ x8632::nil-value) (% arg_z))38 (cmovel (% imm0) (% arg_z)) 39 39 (single-value-return)) 40 40 … … 76 76 77 77 (defx8632lapfunction %digit-0-or-plusp ((bignum arg_y) (idx arg_z)) 78 (xorl (% imm0) (% imm0))79 78 (testl (@ x8632::misc-data-offset (% bignum) (% idx)) (% imm0)) 80 (cmovbl ($ x8632::nil-value) (% arg_z)) 79 (movl ($ x8632::nil-value) (% temp0)) 80 (cmovbl (% temp0) (% arg_z)) 81 81 (single-value-return)) 82 82 … … 84 84 (defx8632lapfunction %bignum-oddp ((bignum arg_z)) 85 85 (testb ($ 1) (@ x8632::misc-data-offset (% bignum))) 86 (cmovzl ($ x8632::nil-value) (% arg_z)) 86 (movl ($ x8632::nil-value) (% temp0)) 87 (cmovel (% temp0) (% arg_z)) 87 88 (single-value-return)) 88 89 … … 91 92 (movl (@ (- 4 x8632::misc-data-offset) (% bignum)) (% imm0)) 92 93 (testl ($ #x8000000) (% imm0)) 93 (cmovnzl ($ x8632::nil-value) (% arg_z)) 94 (movl ($ x8632::nil-value) (% temp0)) 95 (cmovnel (% temp0) (% arg_z)) 94 96 (single-value-return)) 95 97 … … 101 103 (defx8632lapfunction bignum-minusp ((bignum arg_z)) 102 104 (vector-length bignum imm0) 103 (movl (@ (- 4 x8632::misc-data-offset) (% bignum) (% imm0)) )105 (movl (@ (- 4 x8632::misc-data-offset) (% bignum) (% imm0)) (% imm0)) 104 106 (testl ($ #x8000000) (% imm0)) 105 (cmovzl ($ x8632::nil-value) (% arg_z)) 107 (movl ($ x8632::nil-value) (% temp0)) 108 (cmovel (% temp0) (% arg_z)) 106 109 (single-value-return)) 107 110 … … 132 135 @add 133 136 (adc (% temp0) (% imm0)) 134 (cmovcl ($ fixnumone) (% arg_z))135 137 (movl (@ r (% esp)) (% temp0)) 136 138 (movl (@ k (% esp)) (% temp1)) 137 139 (movl (% imm0) (@ x8632::misc-data-offset (% temp0) (% temp1))) 140 (adc ($ 0) (% imm0)) ;propagate carry flag 141 (box-fixnum imm0 arg_z) 138 142 (mark-as-node temp0) 139 143 (single-value-return 7)) … … 164 168 @sub 165 169 (sbb (% imm0) (% temp0)) 166 (cmovcl ($ fixnumone) (% arg_z))167 170 (movl (@ r (% esp)) (% temp0)) 168 171 (movl (@ k (% esp)) (% temp1)) 169 172 (movl (% imm0) (@ x8632::misc-data-offset (% temp0) (% temp1))) 173 (adc ($ 0) (% imm0)) ;propagate carry flag 174 (box-fixnum imm0 arg_z) 170 175 (mark-as-node temp0) 171 176 (single-value-return 7))
Note:
See TracChangeset
for help on using the changeset viewer.
