1 
   2 
   3         ldxa    [%g0] ASI_IMMU_TSB_8KB_PTR, %g1 ! Get TSB 8K pointer
   4         ldxa    [%g0] ASI_IMMU, %g6             ! Get TAG TARGET
   5         srlx    %g6, 48, %g5                    ! Get context
   6         sllx    %g6, 22, %g6                    ! Zero out context
   7         brz,pn  %g5, kvmap_itlb                 ! Context 0 processing
   8          srlx   %g6, 22, %g6                    ! Delay slot
   9         TSB_LOAD_QUAD(%g1, %g4)                 ! Load TSB entry
  10         cmp     %g4, %g6                        ! Compare TAG
  11 
  12 
  13         bne,pn  %xcc, tsb_miss_itlb             ! Miss
  14          mov    FAULT_CODE_ITLB, %g3
  15         sethi   %hi(_PAGE_EXEC_4U), %g4
  16         andcc   %g5, %g4, %g0                   ! Executable?
  17         be,pn   %xcc, tsb_do_fault
  18          nop                                    ! Delay slot, fill me
  19         stxa    %g5, [%g0] ASI_ITLB_DATA_IN     ! Load TLB
  20         retry                                   ! Trap done
  21 
  22 
  23         nop
  24         nop
  25         nop
  26         nop
  27         nop
  28         nop
  29         nop
  30         nop
  31 
  32 
  33         nop
  34         nop
  35         nop
  36         nop
  37         nop
  38         nop
  39         nop
  40         nop