diff options
author | dengjianbo <dengjianbo@loongson.cn> | 2023-09-13 15:35:01 +0800 |
---|---|---|
committer | caiyinyu <caiyinyu@loongson.cn> | 2023-09-15 09:07:47 +0800 |
commit | 780adf7aeab9308c02d89260df6ffa84dc2289a5 (patch) | |
tree | c389053ac54a8625a287fbf541d6c37d186715a9 | |
parent | 24279aecf34a830a744038cb922d94b5a2d9c1cb (diff) | |
download | glibc-780adf7aeab9308c02d89260df6ffa84dc2289a5.tar.gz glibc-780adf7aeab9308c02d89260df6ffa84dc2289a5.tar.xz glibc-780adf7aeab9308c02d89260df6ffa84dc2289a5.zip |
LoongArch: Change to put magic number to .rodata section
Change to put magic number to .rodata section in memmove-lsx, and use pcalau12i and %pc_lo12 with vld to get the data.
-rw-r--r-- | sysdeps/loongarch/lp64/multiarch/memmove-lsx.S | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S index 8a9367708d..5eb819ef74 100644 --- a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S +++ b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S @@ -209,13 +209,10 @@ L(al_less_16): nop -L(magic_num): - .dword 0x0706050403020100 - .dword 0x0f0e0d0c0b0a0908 L(unaligned): - pcaddi t2, -4 + pcalau12i t2, %pc_hi20(L(INDEX)) bstrins.d a1, zero, 3, 0 - vld vr8, t2, 0 + vld vr8, t2, %pc_lo12(L(INDEX)) vld vr0, a1, 0 vld vr1, a1, 16 @@ -413,13 +410,10 @@ L(back_al_less_16): vst vr1, a0, 0 jr ra -L(magic_num_2): - .dword 0x0706050403020100 - .dword 0x0f0e0d0c0b0a0908 L(back_unaligned): - pcaddi t2, -4 + pcalau12i t2, %pc_hi20(L(INDEX)) bstrins.d a4, zero, 3, 0 - vld vr8, t2, 0 + vld vr8, t2, %pc_lo12(L(INDEX)) vld vr0, a4, 0 vld vr1, a4, -16 @@ -529,6 +523,12 @@ L(back_un_less_16): jr ra END(MEMMOVE_NAME) + .section .rodata.cst16,"M",@progbits,16 + .align 4 +L(INDEX): + .dword 0x0706050403020100 + .dword 0x0f0e0d0c0b0a0908 + libc_hidden_builtin_def (MEMCPY_NAME) libc_hidden_builtin_def (MEMMOVE_NAME) #endif |