summaryrefslogtreecommitdiff
path: root/LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-10-09 03:36:26 +0000
committerCoprDistGit <infra@openeuler.org>2024-10-09 03:36:26 +0000
commitdb43dfdfa8bc2b938582aef3d87e43594c13ee50 (patch)
tree47b95b2f6ac8d8b7e6fa373a5bd7d661bf7234df /LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch
parentb933872de72b006230559f77acc3ccfb38a1f343 (diff)
automatic import of glibcopeneuler20.03
Diffstat (limited to 'LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch')
-rw-r--r--LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch b/LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch
new file mode 100644
index 0000000..896eb1f
--- /dev/null
+++ b/LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch
@@ -0,0 +1,67 @@
+From fb72c81f9894b23797f6e2e066532c0963f5155f Mon Sep 17 00:00:00 2001
+From: dengjianbo <dengjianbo@loongson.cn>
+Date: Wed, 13 Sep 2023 15:35:01 +0800
+Subject: [PATCH 24/29] 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.
+
+Signed-off-by: Peng Fan <fanpeng@loongson.cn>
+Signed-off-by: ticat_fp <fanpeng@loongson.cn>
+---
+ .../loongarch/lp64/multiarch/memmove-lsx.S | 20 +++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S
+index 8a936770..5eb819ef 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
+--
+2.33.0
+