Lines Matching +full:3 +full:rd
203 * Assembly version of "adr rd, BSYM(sym)". This should only be used to
208 .macro badr\c, rd, sym
210 adr\c \rd, \sym + 1
212 adr\c \rd, \sym
220 .macro get_thread_info, rd
222 get_current \rd
251 .align 3; \
291 * register 'rd'
293 .macro this_cpu_offset, rd:req
295 ALT_SMP(mrc p15, 0, \rd, c13, c0, 4)
300 .L1_\@: ldr_va \rd, __per_cpu_offset
305 mov \rd, #0
314 9998: mcr p15, 0, \rn, c13, c0, 3 @ set TPIDRURO register
331 .macro get_current, rd:req
333 9998: mrc p15, 0, \rd, c13, c0, 3 @ get TPIDRURO register
337 .L0_\@: ldr_va \rd, __current
343 ldr_va \rd, __current
358 mcr p15, 0, \t1, c13, c0, 3 @ store in TPIDRURO
481 .align 3
522 .align 3
705 .macro ldr_va, rd:req, sym:req, cond, tmp, offset=0
707 __ldst_va ldr, \rd, \tmp, \sym, \cond, \offset
709 __ldst_va ldr, \rd, \rd, \sym, \cond, \offset
725 .macro ldr_this_cpu_armv6, rd:req, sym:req
726 this_cpu_offset \rd
731 add \rd, \rd, pc
732 .L0_\@: sub \rd, \rd, #4
733 .L1_\@: sub \rd, \rd, #0
734 .L2_\@: ldr \rd, [\rd, #4]
739 * into register 'rd', which may be the stack pointer,
741 * are permitted to overlap with 'rd' if != sp
743 .macro ldr_this_cpu, rd:req, sym:req, t1:req, t2:req
745 ldr_va \rd, \sym, tmp=\t1
751 ldr \rd, [\t1, \t2]
753 ldr_this_cpu_armv6 \rd, \sym