Lines Matching refs:r8
54 addis r8,r7,mmu_hash_lock@h
55 ori r8,r8,mmu_hash_lock@l
58 11: lwz r6,0(r8)
61 10: lwarx r6,0,r8
64 stwcx. r0,0,r8
71 mfspr r8,SPRN_SPRG_THREAD /* current task's THREAD (phys) */
73 lwz r5,PGDIR(r8) /* virt page-table root */
81 lwz r8,0(r5) /* get pmd entry */
82 rlwinm. r8,r8,0,0,19 /* extract address of pte page */
84 rlwinm r8,r4,13,19,29 /* Compute pgdir/pmd offset */
85 lwzx r8,r8,r5 /* Get L1 entry */
86 rlwinm. r8,r8,0,0,20 /* extract pt base address */
98 rlwimi r8,r4,22,20,29 /* insert next 10 bits of address */
100 rlwimi r8,r4,23,20,28 /* compute pte address */
115 addi r8,r8,PTE_FLAGS_OFFSET
118 lwarx r6,0,r8 /* get linux-style pte, flag word */
128 subf r10,r6,r8 /* create false data dependency */
132 lwz r10,-PTE_FLAGS_OFFSET(r8)
135 stwcx. r5,0,r8 /* attempt to update PTE */
145 addis r8,r7,mmu_hash_lock@ha
147 stw r0,mmu_hash_lock@l(r8)
155 lwz r8,GPR8(r11)
161 addis r8,r7,mmu_hash_lock@ha
163 stw r0,mmu_hash_lock@l(r8)
187 CURRENT_THREAD_INFO(r8, r1) /* use cpu number to make tag */
188 lwz r8,TI_CPU(r8) /* to go in mmu_hash_lock */
189 oris r8,r8,12
217 stwcx. r8,0,r6
231 mr r8,r5
233 rlwimi r8,r4,22,20,29
235 rlwimi r8,r4,23,20,28
236 addi r8,r8,PTE_FLAGS_OFFSET
238 1: lwarx r6,0,r8
243 subf r10,r6,r8 /* create false data dependency */
247 lwz r10,-PTE_FLAGS_OFFSET(r8)
251 stwcx. r5,0,r8
318 rlwinm r8,r5,32-10,31,31 /* _PAGE_RW -> PP lsb */
320 and r8,r8,r0 /* writable if _RW & _DIRTY */
323 ori r8,r8,0xe04 /* clear out reserved bits */
324 andc r8,r5,r8 /* PP = user? (rw&dirty? 2: 3): 0 */
326 rlwinm r8,r8,0,~_PAGE_COHERENT /* clear M (coherence not required) */
330 rlwimi r8,r10,8,20,22
331 rlwimi r8,r10,2,29,29
446 STPTE r8,HPTE_SIZE/2(r4)
472 STPTE r8,HPTE_SIZE/2(r4) /* put in correct RPN, WIMG, PP bits */
548 CURRENT_THREAD_INFO(r8, r1)
549 add r8,r8,r7
550 lwz r8,TI_CPU(r8)
551 oris r8,r8,9
555 stwcx. r8,0,r9
572 33: lwarx r8,0,r5 /* fetch the pte flags word */
573 andi. r0,r8,_PAGE_HASHPTE
575 rlwinm r8,r8,0,31,29 /* clear HASHPTE bit */
576 stwcx. r8,0,r5 /* update the pte */
581 addis r8,r7,Hash_base@h /* base address of hash table */
582 rlwimi r8,r3,LG_PTEG_SIZE,HASH_LEFT,HASH_RIGHT /* VSID -> hash */
584 xor r8,r0,r8 /* make primary hash */
589 addi r12,r8,-HPTE_SIZE
599 xoris r12,r8,Hash_msk>>16 /* compute secondary hash */
642 CURRENT_THREAD_INFO(r8, r1)
643 lwz r8,TI_CPU(r8)
644 oris r8,r8,11
658 stwcx. r8,0,r9
680 CURRENT_THREAD_INFO(r8, r1)
681 lwz r8,TI_CPU(r8)
682 oris r8,r8,10
696 stwcx. r8,0,r9