[PATCH v1 4/4] LoongArch: Add testsuits for TLSDESC in gas and ld.
Xi Ruoyao
xry111@xry111.site
Sat Dec 2 07:44:21 GMT 2023
On Sat, 2023-12-02 at 15:38 +0800, Xi Ruoyao wrote:
> On Fri, 2023-12-01 at 17:04 +0800, Lulu Cai wrote:
> > + pcalau12i $a0,%desc_pc_hi20(var)
> > + ld.d $a1,$a0,%desc_ld_pc_lo12(var)
> > + addi.d $a0,$a0,%desc_add_pc_lo12(var)
> > + jirl $ra,$a1,%desc_call(var)
>
> Should we consider using a different link register for desc_call? Say
>
> jirl $t0,$a1,%desc_call(var)
>
> And when the TLS descriptor function returns, use "jr $t0" instead of
> "ret". The advantage would be avoiding saving $ra just because TLS
> descriptor is used.
Hmm, maybe better:
jirl $a1, $a1, %desc_call(var)
Just reuse a1 as it's clobbered anyway. Then __tlsdesc_static becomes
something like
__tlsdesc_static:
ld.d $a0, $a0, 0
jr $a1
--
Xi Ruoyao <xry111@xry111.site>
School of Aerospace Science and Technology, Xidian University
More information about the Binutils
mailing list