summaryrefslogtreecommitdiff
path: root/LoongArch-Delete-excessively-allocated-memory.patch
blob: f7d36a6f9800ae4e3ba053ae709abcf8e5949f1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
From 44f757a6364a546359809d48c76b3debd26e77d4 Mon Sep 17 00:00:00 2001
From: caiyinyu <caiyinyu@loongson.cn>
Date: Thu, 26 Oct 2023 17:27:21 +0800
Subject: [PATCH 1/9] LoongArch: Delete excessively allocated memory.

Backported from glibc 2.39 development.
---
 sysdeps/loongarch/dl-trampoline.h | 68 +++++++++++++++----------------
 1 file changed, 34 insertions(+), 34 deletions(-)

diff --git a/sysdeps/loongarch/dl-trampoline.h b/sysdeps/loongarch/dl-trampoline.h
index 02375286f8..99fcacab76 100644
--- a/sysdeps/loongarch/dl-trampoline.h
+++ b/sysdeps/loongarch/dl-trampoline.h
@@ -19,9 +19,9 @@
 /* Assembler veneer called from the PLT header code for lazy loading.
    The PLT header passes its own args in t0-t2.  */
 #ifdef USE_LASX
-# define FRAME_SIZE (-((-9 * SZREG - 8 * SZFREG - 8 * SZXREG) & ALMASK))
+# define FRAME_SIZE (-((-9 * SZREG - 8 * SZXREG) & ALMASK))
 #elif defined USE_LSX
-# define FRAME_SIZE (-((-9 * SZREG - 8 * SZFREG - 8 * SZVREG) & ALMASK))
+# define FRAME_SIZE (-((-9 * SZREG - 8 * SZVREG) & ALMASK))
 #elif !defined __loongarch_soft_float
 # define FRAME_SIZE (-((-9 * SZREG - 8 * SZFREG) & ALMASK))
 #else
@@ -44,23 +44,23 @@ ENTRY (_dl_runtime_resolve)
 	REG_S	a7, sp, 8*SZREG
 
 #ifdef USE_LASX
-	xvst	xr0, sp, 9*SZREG + 8*SZFREG + 0*SZXREG
-	xvst	xr1, sp, 9*SZREG + 8*SZFREG + 1*SZXREG
-	xvst	xr2, sp, 9*SZREG + 8*SZFREG + 2*SZXREG
-	xvst	xr3, sp, 9*SZREG + 8*SZFREG + 3*SZXREG
-	xvst	xr4, sp, 9*SZREG + 8*SZFREG + 4*SZXREG
-	xvst	xr5, sp, 9*SZREG + 8*SZFREG + 5*SZXREG
-	xvst	xr6, sp, 9*SZREG + 8*SZFREG + 6*SZXREG
-	xvst	xr7, sp, 9*SZREG + 8*SZFREG + 7*SZXREG
+	xvst	xr0, sp, 9*SZREG + 0*SZXREG
+	xvst	xr1, sp, 9*SZREG + 1*SZXREG
+	xvst	xr2, sp, 9*SZREG + 2*SZXREG
+	xvst	xr3, sp, 9*SZREG + 3*SZXREG
+	xvst	xr4, sp, 9*SZREG + 4*SZXREG
+	xvst	xr5, sp, 9*SZREG + 5*SZXREG
+	xvst	xr6, sp, 9*SZREG + 6*SZXREG
+	xvst	xr7, sp, 9*SZREG + 7*SZXREG
 #elif defined USE_LSX
-	vst	vr0, sp, 9*SZREG + 8*SZFREG + 0*SZVREG
-	vst	vr1, sp, 9*SZREG + 8*SZFREG + 1*SZVREG
-	vst	vr2, sp, 9*SZREG + 8*SZFREG + 2*SZVREG
-	vst	vr3, sp, 9*SZREG + 8*SZFREG + 3*SZVREG
-	vst	vr4, sp, 9*SZREG + 8*SZFREG + 4*SZVREG
-	vst	vr5, sp, 9*SZREG + 8*SZFREG + 5*SZVREG
-	vst	vr6, sp, 9*SZREG + 8*SZFREG + 6*SZVREG
-	vst	vr7, sp, 9*SZREG + 8*SZFREG + 7*SZVREG
+	vst	vr0, sp, 9*SZREG + 0*SZVREG
+	vst	vr1, sp, 9*SZREG + 1*SZVREG
+	vst	vr2, sp, 9*SZREG + 2*SZVREG
+	vst	vr3, sp, 9*SZREG + 3*SZVREG
+	vst	vr4, sp, 9*SZREG + 4*SZVREG
+	vst	vr5, sp, 9*SZREG + 5*SZVREG
+	vst	vr6, sp, 9*SZREG + 6*SZVREG
+	vst	vr7, sp, 9*SZREG + 7*SZVREG
 #elif !defined __loongarch_soft_float
 	FREG_S	fa0, sp, 9*SZREG + 0*SZFREG
 	FREG_S	fa1, sp, 9*SZREG + 1*SZFREG
@@ -92,23 +92,23 @@ ENTRY (_dl_runtime_resolve)
 	REG_L	a7, sp, 8*SZREG
 
 #ifdef USE_LASX
-	xvld	xr0, sp, 9*SZREG + 8*SZFREG + 0*SZXREG
-	xvld	xr1, sp, 9*SZREG + 8*SZFREG + 1*SZXREG
-	xvld	xr2, sp, 9*SZREG + 8*SZFREG + 2*SZXREG
-	xvld	xr3, sp, 9*SZREG + 8*SZFREG + 3*SZXREG
-	xvld	xr4, sp, 9*SZREG + 8*SZFREG + 4*SZXREG
-	xvld	xr5, sp, 9*SZREG + 8*SZFREG + 5*SZXREG
-	xvld	xr6, sp, 9*SZREG + 8*SZFREG + 6*SZXREG
-	xvld	xr7, sp, 9*SZREG + 8*SZFREG + 7*SZXREG
+	xvld	xr0, sp, 9*SZREG + 0*SZXREG
+	xvld	xr1, sp, 9*SZREG + 1*SZXREG
+	xvld	xr2, sp, 9*SZREG + 2*SZXREG
+	xvld	xr3, sp, 9*SZREG + 3*SZXREG
+	xvld	xr4, sp, 9*SZREG + 4*SZXREG
+	xvld	xr5, sp, 9*SZREG + 5*SZXREG
+	xvld	xr6, sp, 9*SZREG + 6*SZXREG
+	xvld	xr7, sp, 9*SZREG + 7*SZXREG
 #elif defined USE_LSX
-	vld	vr0, sp, 9*SZREG + 8*SZFREG + 0*SZVREG
-	vld	vr1, sp, 9*SZREG + 8*SZFREG + 1*SZVREG
-	vld	vr2, sp, 9*SZREG + 8*SZFREG + 2*SZVREG
-	vld	vr3, sp, 9*SZREG + 8*SZFREG + 3*SZVREG
-	vld	vr4, sp, 9*SZREG + 8*SZFREG + 4*SZVREG
-	vld	vr5, sp, 9*SZREG + 8*SZFREG + 5*SZVREG
-	vld	vr6, sp, 9*SZREG + 8*SZFREG + 6*SZVREG
-	vld	vr7, sp, 9*SZREG + 8*SZFREG + 7*SZVREG
+	vld	vr0, sp, 9*SZREG + 0*SZVREG
+	vld	vr1, sp, 9*SZREG + 1*SZVREG
+	vld	vr2, sp, 9*SZREG + 2*SZVREG
+	vld	vr3, sp, 9*SZREG + 3*SZVREG
+	vld	vr4, sp, 9*SZREG + 4*SZVREG
+	vld	vr5, sp, 9*SZREG + 5*SZVREG
+	vld	vr6, sp, 9*SZREG + 6*SZVREG
+	vld	vr7, sp, 9*SZREG + 7*SZVREG
 #elif !defined __loongarch_soft_float
 	FREG_L	fa0, sp, 9*SZREG + 0*SZFREG
 	FREG_L	fa1, sp, 9*SZREG + 1*SZFREG
-- 
2.33.0