[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.6 and 1.7

version 1.6, 2003/02/09 15:49:34 version 1.7, 2003/04/08 23:48:48
Line 163 
Line 163 
  * XXX 4 == sizeof pde   * XXX 4 == sizeof pde
  */   */
         .set    _C_LABEL(PTmap),(PDSLOT_PTE << PDSHIFT)          .set    _C_LABEL(PTmap),(PDSLOT_PTE << PDSHIFT)
         .set    _C_LABEL(PTD),(_C_LABEL(PTmap) + PDSLOT_PTE * NBPG)          .set    _C_LABEL(PTD),(_C_LABEL(PTmap) + PDSLOT_PTE * PAGE_SIZE)
         .set    _C_LABEL(PTDpde),(_C_LABEL(PTD) + PDSLOT_PTE * 4)          .set    _C_LABEL(PTDpde),(_C_LABEL(PTD) + PDSLOT_PTE * 4)
   
 /*  /*
Line 173 
Line 173 
  * XXX 4 == sizeof pde   * XXX 4 == sizeof pde
  */   */
         .set    _C_LABEL(APTmap),(PDSLOT_APTE << PDSHIFT)          .set    _C_LABEL(APTmap),(PDSLOT_APTE << PDSHIFT)
         .set    _C_LABEL(APTD),(_C_LABEL(APTmap) + PDSLOT_APTE * NBPG)          .set    _C_LABEL(APTD),(_C_LABEL(APTmap) + PDSLOT_APTE * PAGE_SIZE)
         .set    _C_LABEL(APTDpde),(_C_LABEL(PTD) + PDSLOT_APTE * 4)          .set    _C_LABEL(APTDpde),(_C_LABEL(PTD) + PDSLOT_APTE * 4)
   
   
Line 199 
Line 199 
   
 #if NLAPIC > 0  #if NLAPIC > 0
 #ifdef __ELF__  #ifdef __ELF__
         .align  NBPG          .align  PAGE_SIZE
 #else  #else
         .align  12          .align  12
 #endif  #endif
Line 214  _C_LABEL(lapic_tpr):  
Line 214  _C_LABEL(lapic_tpr):  
 _C_LABEL(lapic_ppr):  _C_LABEL(lapic_ppr):
         .space  LAPIC_ISR-LAPIC_PPRI          .space  LAPIC_ISR-LAPIC_PPRI
 _C_LABEL(lapic_isr):  _C_LABEL(lapic_isr):
         .space  NBPG-LAPIC_ISR          .space  PAGE_SIZE-LAPIC_ISR
 #else  #else
 _C_LABEL(lapic_tpr):  _C_LABEL(lapic_tpr):
         .long 0          .long 0
Line 506  try586: /* Use the `cpuid' instruction. 
Line 506  try586: /* Use the `cpuid' instruction. 
  * text | data | bss | [syms] | page dir | proc0 kstack   * text | data | bss | [syms] | page dir | proc0 kstack
  *                            0          1       2      3   *                            0          1       2      3
  */   */
 #define PROC0PDIR       ((0)              * NBPG)  #define PROC0PDIR       ((0)              * PAGE_SIZE)
 #define PROC0STACK      ((1)              * NBPG)  #define PROC0STACK      ((1)              * PAGE_SIZE)
 #define SYSMAP          ((1+UPAGES)       * NBPG)  #define SYSMAP          ((1+UPAGES)       * PAGE_SIZE)
 #define TABLESIZE       ((1+UPAGES) * NBPG) /* + nkpde * NBPG */  #define TABLESIZE       ((1+UPAGES) * PAGE_SIZE) /* + nkpde * PAGE_SIZE */
   
         /* Find end of kernel image. */          /* Find end of kernel image. */
         movl    $RELOC(end),%edi          movl    $RELOC(end),%edi
Line 561  try586: /* Use the `cpuid' instruction. 
Line 561  try586: /* Use the `cpuid' instruction. 
  */   */
 #define fillkpt         \  #define fillkpt         \
 1:      movl    %eax,(%ebx)     ; \  1:      movl    %eax,(%ebx)     ; \
         addl    $NBPG,%eax      ; /* increment physical address */ \          addl    $PAGE_SIZE,%eax ; /* increment physical address */ \
         addl    $4,%ebx         ; /* next pte */ \          addl    $4,%ebx         ; /* next pte */ \
         loop    1b              ;          loop    1b              ;
   
Line 1095  ENTRY(copyoutstr)
Line 1095  ENTRY(copyoutstr)
         /* Compute number of bytes in first page. */          /* Compute number of bytes in first page. */
         movl    %edi,%eax          movl    %edi,%eax
         andl    $PGOFSET,%eax          andl    $PGOFSET,%eax
         movl    $NBPG,%ecx          movl    $PAGE_SIZE,%ecx
         subl    %eax,%ecx               # ecx = NBPG - (src % NBPG)          subl    %eax,%ecx               # ecx = PAGE_SIZE - (src % PAGE_SIZE)
   
         GET_CURPCB(%eax)          GET_CURPCB(%eax)
         movl    $6f,PCB_ONFAULT(%eax)          movl    $6f,PCB_ONFAULT(%eax)
Line 1143  ENTRY(copyoutstr)
Line 1143  ENTRY(copyoutstr)
         jmp     copystr_return          jmp     copystr_return
   
 4:      /* Go to next page, if any. */  4:      /* Go to next page, if any. */
         movl    $NBPG,%ecx          movl    $PAGE_SIZE,%ecx
         testl   %edx,%edx          testl   %edx,%edx
         jnz     1b          jnz     1b
   

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

CVSweb <webmaster@jp.NetBSD.org>