Changeset 15229
- Timestamp:
- Mar 4, 2012, 6:55:10 AM (13 years ago)
- Location:
- trunk/source/lisp-kernel
- Files:
-
- 5 edited
-
arm-asmutils.s (modified) (1 diff)
-
gc-common.c (modified) (2 diffs)
-
ppc-asmutils.s (modified) (1 diff)
-
x86-asmutils32.s (modified) (1 diff)
-
x86-asmutils64.s (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/lisp-kernel/arm-asmutils.s
r15137 r15229 196 196 _endfn 197 197 198 /* zero N (r1) dnodes, starting at the dnode-aligned address in r0 */ 199 _exportfn(C(zero_dnodes)) 200 __(cmp r1,#0) 201 __(adr r2,2f) 202 __(fldd d0,[r2,#0]) 203 __(b 1f) 204 0: __(subs r1,r1,#1) 205 __(fstd d0,[r0]) 206 __(add r0,r0,#dnode_size) 207 1: __(bne 0b) 208 __(bx lr) 209 .align 3 210 2: .long 0 211 .long 0 212 _endfn 198 213 199 214 _endfile -
trunk/source/lisp-kernel/gc-common.c
r15202 r15229 1353 1353 } 1354 1354 1355 extern void zero_dnodes(void *,natural); 1356 1355 1357 void 1356 1358 gc(TCR *tcr, signed_natural param) … … 1705 1707 last_zeroed_addr = a->high; 1706 1708 } 1707 zero_ memory_range(a->active, last_zeroed_addr);1709 zero_dnodes(a->active, area_dnode(last_zeroed_addr,a->active)); 1708 1710 1709 1711 /* -
trunk/source/lisp-kernel/ppc-asmutils.s
r15137 r15229 428 428 _endfn 429 429 430 430 /* zero N (r4) dnodes, starting at the dnode-aligned address in r3 */ 431 _exportfn(C(zero_dnodes)) 432 __(cmpri(r4,0)) 433 __(li r5,0) 434 __(li r6,0) 435 __(b 1f) 436 0: __(subi. r4,r4,1) 437 __(str(r5,0(r3))) 438 __(str(r6,node_size(r3))) 439 __(la r3,dnode_size(r3)) 440 1: __(bne 0b) 441 __(blr) 442 _endfn 431 443 _endfile -
trunk/source/lisp-kernel/x86-asmutils32.s
r15137 r15229 280 280 _endfn 281 281 __endif 282 283 /* zero arg1 dnodes,starting at the dnode-aligned address in arg0 */ 284 _exportfn(C(zero_dnodes)) 285 __(xorl %eax,%eax) 286 __(mov 4(%esp),%edx) 287 __(mov 8(%esp),%ecx) 288 __(testl %ecx,%ecx) 289 __(jmp 1f) 290 0: __(mov %eax,0(%edx)) 291 __(mov %eax,4(%edx)) 292 __(lea dnode_size(%edx),%edx) 293 __(subl $1,%ecx) 294 1: __(jne 0b) 295 __(repret) 296 _endfn 282 297 _endfile 283 298 -
trunk/source/lisp-kernel/x86-asmutils64.s
r15137 r15229 276 276 _endfn 277 277 __endif 278 279 /* zero N (%rsi) dnodes, starting at the dnode-aligned address in %rdi */ 280 _exportfn(C(zero_dnodes)) 281 __(pxor %xmm0,%xmm0) 282 __(cmpq $0,%rsi) 283 __(jmp 1f) 284 0: __(movdqa %xmm0,(%rdi)) 285 __(lea 16(%rdi),%rdi) 286 __(subq $1,%rsi) 287 1: __(jne 0b) 288 __(repret) 289 _endfn 278 290 _endfile
Note:
See TracChangeset
for help on using the changeset viewer.
