Lines Matching full:a1

103  *   a1:	a1
116 * stack pointer (a1) has been set.
124 /* Save a1, a2, a3, and set SP. */
127 s32i a1, a2, PT_AREG1
130 mov a1, a2
141 s32i a3, a1, PT_SAR
142 s32i a2, a1, PT_ICOUNTLEVEL
146 s32i a2, a1, PT_THREADPTR
156 s32i a2, a1, PT_WINDOWBASE
157 s32i a3, a1, PT_WINDOWSTART
161 s32i a2, a1, PT_WMASK # needed for restoring registers
165 s32i a2, a1, PT_WINDOWBASE
166 s32i a3, a1, PT_WINDOWSTART
167 s32i a3, a1, PT_WMASK
173 s32i a4, a1, PT_AREG4
174 s32i a5, a1, PT_AREG5
175 s32i a6, a1, PT_AREG6
176 s32i a7, a1, PT_AREG7
178 s32i a8, a1, PT_AREG8
179 s32i a9, a1, PT_AREG9
180 s32i a10, a1, PT_AREG10
181 s32i a11, a1, PT_AREG11
183 s32i a12, a1, PT_AREG12
184 s32i a13, a1, PT_AREG13
185 s32i a14, a1, PT_AREG14
186 s32i a15, a1, PT_AREG15
217 s32i a2, a1, PT_WMASK # needed when we restore the reg-file
223 s32i a1, a5, PT_AREG_END - 12
227 addi a1, a5, -16
240 /* We are back to the original stack pointer (a1) */
258 * a1: a1
271 * stack pointer (a1) has been set.
278 /* Save a1, a2, a3, and set SP. */
281 s32i a1, a2, PT_AREG1
284 mov a1, a2
294 s32i a3, a1, PT_SAR
295 s32i a2, a1, PT_ICOUNTLEVEL
307 s32i a2, a1, PT_WMASK # needed for kernel_exception_exit
313 s32i a4, a1, PT_AREG4
314 s32i a5, a1, PT_AREG5
315 s32i a6, a1, PT_AREG6
316 s32i a7, a1, PT_AREG7
318 s32i a8, a1, PT_AREG8
319 s32i a9, a1, PT_AREG9
320 s32i a10, a1, PT_AREG10
321 s32i a11, a1, PT_AREG11
323 s32i a12, a1, PT_AREG12
324 s32i a13, a1, PT_AREG13
325 s32i a14, a1, PT_AREG14
326 s32i a15, a1, PT_AREG15
330 /* Copy spill slots of a0 and a1 to imitate movsp
333 l32i a3, a1, PT_KERNEL_SIZE
334 l32i a0, a1, PT_KERNEL_SIZE + 4
335 s32e a3, a1, -16
336 s32e a0, a1, -12
339 l32i a0, a1, PT_AREG0 # restore saved a0
357 s32i a2, a1, PT_DEBUGCAUSE
358 s32i a3, a1, PT_PC
362 s32i a2, a1, PT_SYSCALL
364 s32i a3, a1, PT_EXCVADDR
367 s32i a2, a1, PT_LCOUNT
380 s32i a2, a1, PT_EXCCAUSE
383 /* All unrecoverable states are saved on stack, now, and a1 is valid.
392 s32i a3, a1, PT_PS # save ps
408 s32i a0, a1, PT_PS # save medium-level interrupt ps
436 s32i a4, a1, PT_LBEG
437 s32i a3, a1, PT_LEND
444 s32i a3, a1, PT_SCOMPARE1
449 save_xtregs_opt a1 a3 a4 a5 a6 a7 PT_XTREGS_OPT
459 l32i abi_tmp0, a1, PT_PS
469 l32i abi_arg1, a1, PT_EXCCAUSE # pass EXCCAUSE
473 mov abi_arg0, a1 # pass stack frame
484 l32i abi_tmp0, a1, PT_EXCCAUSE
486 l32i abi_saved1, a1, PT_PS
497 l32i abi_saved1, a1, PT_PS
498 GET_THREAD_INFO(abi_tmp0, a1)
513 l32i abi_tmp0, a1, PT_DEPC
522 mov abi_arg0, a1
556 l32i abi_tmp0, a1, PT_DEPC
573 load_xtregs_opt a1 abi_tmp0 abi_arg0 abi_arg1 abi_arg2 abi_arg3 PT_XTREGS_OPT
578 l32i abi_tmp0, a1, PT_SCOMPARE1
591 l32i a2, a1, PT_WINDOWBASE
592 l32i a3, a1, PT_WINDOWSTART
593 wsr a1, depc # use DEPC as temp storage
598 rsr a1, depc # restore stack pointer
599 l32i a2, a1, PT_WMASK # register frames saved (in bits 4...9)
649 l32i a3, a1, PT_THREADPTR
687 l32i a2, a1, PT_WMASK
699 addi a0, a1, -16
702 s32i a3, a1, PT_KERNEL_SIZE + 0
703 s32i a4, a1, PT_KERNEL_SIZE + 4
706 s32i a3, a1, PT_KERNEL_SIZE + 8
707 s32i a4, a1, PT_KERNEL_SIZE + 12
724 l32i a4, a1, PT_AREG4
725 l32i a5, a1, PT_AREG5
726 l32i a6, a1, PT_AREG6
727 l32i a7, a1, PT_AREG7
729 l32i a8, a1, PT_AREG8
730 l32i a9, a1, PT_AREG9
731 l32i a10, a1, PT_AREG10
732 l32i a11, a1, PT_AREG11
734 l32i a12, a1, PT_AREG12
735 l32i a13, a1, PT_AREG13
736 l32i a14, a1, PT_AREG14
737 l32i a15, a1, PT_AREG15
741 1: l32i a2, a1, PT_PC
742 l32i a3, a1, PT_SAR
748 l32i a2, a1, PT_LBEG
749 l32i a3, a1, PT_LEND
751 l32i a2, a1, PT_LCOUNT
758 l32i a2, a1, PT_ICOUNTLEVEL
765 l32i a0, a1, PT_DEPC
766 l32i a3, a1, PT_AREG3
767 l32i a2, a1, PT_AREG2
772 l32i a0, a1, PT_AREG0
773 l32i a1, a1, PT_AREG1
777 l32i a0, a1, PT_AREG0
778 l32i a1, a1, PT_AREG1
816 addi a2, a1, -16 - PT_KERNEL_SIZE # assume kernel stack
820 s32i a1, a2, PT_AREG1
828 mov a1, a2
836 GET_THREAD_INFO(a2, a1)
940 movi a1, 0
943 wsr a1, windowbase
947 movi a1, KERNEL_PS_WOE_MASK | LOCKLEVEL
948 wsr a1, ps
951 movi a1, init_task
953 addi a1, a1, PT_REGS_OFFSET
998 * a1: a1
1015 l32i a1, a6, PT_DEPC
1017 wsr a1, depc
1044 * a1: a1
1086 * a1: a1
1136 * a1: a1
1224 * a1: a1
1420 movi a1, 0
1423 wsr a1, windowbase
1429 l32i a1, a3, EXC_TABLE_KSTK
1498 * a0, a1, a2 same
1509 * a1: used, stack pointer
1603 * a1: a1
1615 /* Save a1 and a3. Note: we don't expect a double exception. */
1617 s32i a1, a2, PT_AREG1
1636 GET_CURRENT(a1,a2)
1637 l32i a0, a1, TASK_MM # tsk->mm
1642 _PGD_OFFSET(a0, a3, a1)
1660 movi a1, (PHYS_OFFSET - PAGE_OFFSET) & 0xffffffff
1661 add a0, a0, a1 # pmdval - PAGE_OFFSET
1662 extui a1, a0, 0, PAGE_SHIFT # ... & PAGE_MASK
1663 xor a0, a0, a1
1665 movi a1, _PAGE_DIRECTORY
1666 or a0, a0, a1 # ... | PAGE_DIRECTORY
1679 rsr a1, ptevaddr
1681 srli a1, a1, PAGE_SHIFT
1683 slli a1, a1, PAGE_SHIFT # ptevaddr & PAGE_MASK
1685 add a1, a1, a3 # ... + way_number
1688 wdtlb a0, a1
1700 l32i a1, a2, PT_AREG1
1718 l32i a0, a1, TASK_ACTIVE_MM # unlikely case mm == 0
1757 addi a1, a0, -TLBTEMP_SIZE
1758 bgeu a1, a3, .Lfast_second_level_miss_slow
1762 movi a1, __tlbtemp_mapping_itlb
1764 sub a3, a3, a1
1768 movi a1, PAGE_MASK
1769 and a1, a1, a0
1778 add a1, a3, a1
1788 1: witlb a6, a1
1798 rsr a1, depc
1799 s32i a1, a2, PT_AREG2
1800 mov a1, a2
1817 * a1: a1
1829 /* Save a1 and a3. */
1831 s32i a1, a2, PT_AREG1
1834 GET_CURRENT(a1,a2)
1835 l32i a0, a1, TASK_MM # tsk->mm
1839 rsr a1, excvaddr # fault address
1840 _PGD_OFFSET(a0, a1, a3)
1849 _PTE_OFFSET(a0, a1, a3)
1851 movi a1, _PAGE_CA_INVALID
1852 ball a3, a1, .Lfast_store_slow
1855 movi a1, _PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_HW_WRITE
1856 or a3, a3, a1
1857 rsr a1, excvaddr
1864 pdtlb a0, a1
1876 l32i a1, a2, PT_AREG1
1891 l32i a0, a1, TASK_ACTIVE_MM # unlikely case mm == 0
1896 rsr a1, excvaddr
1897 pdtlb a0, a1
1903 mov a1, a2
1943 GET_THREAD_INFO(a4, a1)
2014 _entry a1, 48
2018 _entry a1, 48
2022 _entry a1, 16
2068 s32i a1, a10, THREAD_SP - TASK_THREAD # save stack pointer
2071 s32i a1, a2, THREAD_SP # save stack pointer
2126 l32i a1, a11, THREAD_SP # restore stack pointer
2154 mov abi_arg0, a1
2199 s32i a1, a2, 4
2251 l32i a1, a2, 4