Lines Matching refs:r3
33 st r3, @-sp
35 seth r3, #high(MMU_REG_BASE)
36 ld r1, @(MESTS_offset, r3) ; r1: status (MESTS reg.)
37 ld r0, @(MDEVP_offset, r3) ; r0: PFN + ASID (MDEVP reg.)
38 st r1, @(MESTS_offset, r3) ; clear status (MESTS reg.)
45 ;; r1 - r3: free
50 ;; r3: free
74 ;; r1 - r3: free
79 ;; r3: free
80 ldi r3, #-4096
83 and r1, r3
107 ;; r3: free
111 ;; r2, r3: free
113 ld r3, @r2 || srli r1, #3
115 ld r3, @r2
118 add r1, r3
120 addi r3, #1
121 and3 r3, r3, #(NR_TLB_ENTRIES - 1)
123 st r3, @r2 || slli r1, #3
125 st r3, @r2
133 ;; r2, r3: free
138 ;; r3: free
141 srl3 r3, r0, #22
143 not r2, r2 || slli r3, #2 ; r3: pgd offset
146 slli r3, #2
149 or r3, r2 ; r3: pmd addr
152 ld r3, @r3 ; r3: pmd data
153 beqz r3, 3f ; pmd_none(*pmd) ?
155 and3 r2, r3, #0xfff
161 and r2, r3 ; r2: pte base addr
162 srl3 r3, r0, #10
163 and3 r3, r3, #0xffc ; r3: pte offset
164 or r3, r2
166 or r3, r2 ; r3: pte addr
169 ld r2, @r3 ; r2: pte data
170 and3 r3, r2, #2 ; _PAGE_PRESENT(=2) check
171 beqz r3, 3f
180 ;; r3: free
186 ld r3, @sp+
198 ;; r2, r3: free
203 ;; r3: free
217 st r3, @-sp
220 seth r3, #high(MMU_REG_BASE)
221 ld r0, @(MDEVA_offset,r3) ; r0: address (MDEVA reg.)
223 ld r1, @(MESTS_offset,r3) ; r1: status (MESTS reg.)
224 st r1, @(MESTS_offset,r3) ; clear status (MESTS reg.)
231 seth r3, #shigh(tlb_entry_i_dat)
232 ld r4, @(low(tlb_entry_i_dat),r3)
239 st r4, @(low(tlb_entry_i_dat),r3)
245 seth r3, #shigh(tlb_entry_d_dat)
246 ld r4, @(low(tlb_entry_d_dat),r3)
253 st r4, @(low(tlb_entry_d_dat),r3)
258 ; r1,r3,r4: (free)
264 sll3 r3, r4, #2
265 add r3, r1 ; r3: pgd
267 ld r1, @r3 ; r1: pmd
277 ld r4, @r3 ; r4: pte
278 ldi r3, #-4096
279 and r4, r3
280 srl3 r3, r0, #10
281 and3 r3, r3, #0xffc
282 add r4, r3
283 seth r3, #0x8000
284 add r4, r3 ; r4: pte
287 and3 r3, r1, #2 ; _PAGE_PRESENT(=2) check
288 beqz r3, 3f
293 ; r3,r4: (free)
295 ldi r3, #-4096 ; set_tlb_tag(entry++, address);
296 and r3, r0
300 or r3, r4
301 st r3, @r2
305 ld r3, @sp+
336 ldi r3, #NR_TLB_ENTRIES
344 addi r3, #-1
345 bnez r3, clear_tlb