[BACK]Return to locore.S CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / i386 / i386

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/arch/i386/i386/locore.S between version 1.47.4.6 and 1.47.4.7

version 1.47.4.6, 2007/10/09 13:37:55 version 1.47.4.7, 2007/10/09 15:22:04
Line 964  ENTRY(sse2_copy_page)
Line 964  ENTRY(sse2_copy_page)
         popl    %ebx          popl    %ebx
         popl    %ebp          popl    %ebp
         ret          ret
   
 /*  
  * void sse2_zero_page(void *pg)  
  *  
  * Zero a page without polluting the cache.  
  */  
 ENTRY(sse2_zero_page)  
         pushl   %ebp  
         movl    %esp,%ebp  
         movl    8(%esp), %edx  
         movl    $PAGE_SIZE, %ecx  
         xorl    %eax, %eax  
         .align  16  
 1:  
         movnti  %eax, 0(%edx)  
         movnti  %eax, 4(%edx)  
         movnti  %eax, 8(%edx)  
         movnti  %eax, 12(%edx)  
         movnti  %eax, 16(%edx)  
         movnti  %eax, 20(%edx)  
         movnti  %eax, 24(%edx)  
         movnti  %eax, 28(%edx)  
         subl    $32, %ecx  
         leal    32(%edx), %edx  
         jnz     1b  
         sfence  
         pop     %ebp  
         ret  
   
 /*  
  * void sse2_copy_page(void *src, void *dst)  
  *  
  * Copy a page without polluting the cache.  
  */  
 ENTRY(sse2_copy_page)  
         pushl   %ebp  
         pushl   %ebx  
         pushl   %esi  
         pushl   %edi  
         movl    20(%esp), %esi  
         movl    24(%esp), %edi  
         movl    $PAGE_SIZE, %ebp  
         .align  16  
 1:  
         movl    0(%esi), %eax  
         movl    4(%esi), %ebx  
         movl    8(%esi), %ecx  
         movl    12(%esi), %edx  
         movnti  %eax, 0(%edi)  
         movnti  %ebx, 4(%edi)  
         movnti  %ecx, 8(%edi)  
         movnti  %edx, 12(%edi)  
         subl    $16, %ebp  
         leal    16(%esi), %esi  
         leal    16(%edi), %edi  
         jnz     1b  
         sfence  
         popl    %edi  
         popl    %esi  
         popl    %ebx  
         popl    %ebp  
         ret  

Legend:
Removed from v.1.47.4.6  
changed lines
  Added in v.1.47.4.7

CVSweb <webmaster@jp.NetBSD.org>