xref: /third_party/musl/src/ldso/riscv64/tlsdesc.s
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/musl/src/ldso/riscv64/
1570af302Sopenharmony_ci.text
2570af302Sopenharmony_ci.global __tlsdesc_static
3570af302Sopenharmony_ci.hidden __tlsdesc_static
4570af302Sopenharmony_ci.type __tlsdesc_static,%function
5570af302Sopenharmony_ci__tlsdesc_static:
6570af302Sopenharmony_ci	ld a0,8(a0)
7570af302Sopenharmony_ci	jr t0
8570af302Sopenharmony_ci
9570af302Sopenharmony_ci.global __tlsdesc_dynamic
10570af302Sopenharmony_ci.hidden __tlsdesc_dynamic
11570af302Sopenharmony_ci.type __tlsdesc_dynamic,%function
12570af302Sopenharmony_ci__tlsdesc_dynamic:
13570af302Sopenharmony_ci	add sp,sp,-16
14570af302Sopenharmony_ci	sd t1,(sp)
15570af302Sopenharmony_ci	sd t2,8(sp)
16570af302Sopenharmony_ci
17570af302Sopenharmony_ci	ld t2,-8(tp) # t2=dtv
18570af302Sopenharmony_ci
19570af302Sopenharmony_ci	ld a0,8(a0)  # a0=&{modidx,off}
20570af302Sopenharmony_ci	ld t1,8(a0)  # t1=off
21570af302Sopenharmony_ci	ld a0,(a0)   # a0=modidx
22570af302Sopenharmony_ci	sll a0,a0,3  # a0=8*modidx
23570af302Sopenharmony_ci
24570af302Sopenharmony_ci	add a0,a0,t2 # a0=dtv+8*modidx
25570af302Sopenharmony_ci	ld a0,(a0)   # a0=dtv[modidx]
26570af302Sopenharmony_ci	add a0,a0,t1 # a0=dtv[modidx]+off
27570af302Sopenharmony_ci	sub a0,a0,tp # a0=dtv[modidx]+off-tp
28570af302Sopenharmony_ci
29570af302Sopenharmony_ci	ld t1,(sp)
30570af302Sopenharmony_ci	ld t2,8(sp)
31570af302Sopenharmony_ci	add sp,sp,16
32570af302Sopenharmony_ci	jr t0
33

Indexes created Thu Nov 07 10:32:03 CST 2024