aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/mips/ksigaction.h4
-rw-r--r--arch/mips64/ksigaction.h4
-rw-r--r--arch/mipsn32/ksigaction.h4
-rw-r--r--arch/sh/ksigaction.h4
-rw-r--r--arch/x32/ksigaction.h4
-rw-r--r--arch/x86_64/ksigaction.h4
-rw-r--r--src/internal/ksigaction.h4
-rw-r--r--src/signal/aarch64/restore.s2
-rw-r--r--src/signal/arm/restore.s2
-rw-r--r--src/signal/i386/restore.s2
-rw-r--r--src/signal/microblaze/restore.s2
-rw-r--r--src/signal/mips/restore.s2
-rw-r--r--src/signal/mips64/restore.s2
-rw-r--r--src/signal/mipsn32/restore.s2
-rw-r--r--src/signal/powerpc/restore.s2
-rw-r--r--src/signal/powerpc64/restore.s2
-rw-r--r--src/signal/restore.c6
-rw-r--r--src/signal/s390x/restore.s2
-rw-r--r--src/signal/sh/restore.s2
-rw-r--r--src/signal/x32/restore.s1
-rw-r--r--src/signal/x86_64/restore.s1
21 files changed, 49 insertions, 9 deletions
diff --git a/arch/mips/ksigaction.h b/arch/mips/ksigaction.h
index 3127f7c..63fdfab 100644
--- a/arch/mips/ksigaction.h
+++ b/arch/mips/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
unsigned flags;
void (*handler)(int);
@@ -8,4 +10,4 @@ struct k_sigaction {
void (*restorer)();
};
-void __restore(), __restore_rt();
+hidden void __restore(), __restore_rt();
diff --git a/arch/mips64/ksigaction.h b/arch/mips64/ksigaction.h
index 55ba18e..c16e473 100644
--- a/arch/mips64/ksigaction.h
+++ b/arch/mips64/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
unsigned flags;
void (*handler)(int);
@@ -5,4 +7,4 @@ struct k_sigaction {
void (*restorer)();
};
-void __restore(), __restore_rt();
+hidden void __restore(), __restore_rt();
diff --git a/arch/mipsn32/ksigaction.h b/arch/mipsn32/ksigaction.h
index 9969e3b..b565f1f 100644
--- a/arch/mipsn32/ksigaction.h
+++ b/arch/mipsn32/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
unsigned flags;
void (*handler)(int);
@@ -5,4 +7,4 @@ struct k_sigaction {
void (*restorer)();
};
-void __restore(), __restore_rt();
+hidden void __restore(), __restore_rt();
diff --git a/arch/sh/ksigaction.h b/arch/sh/ksigaction.h
index 0c652be..714ae61 100644
--- a/arch/sh/ksigaction.h
+++ b/arch/sh/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
void (*handler)(int);
unsigned long flags;
@@ -5,4 +7,4 @@ struct k_sigaction {
unsigned mask[2];
};
-extern unsigned char __restore[], __restore_rt[];
+extern hidden unsigned char __restore[], __restore_rt[];
diff --git a/arch/x32/ksigaction.h b/arch/x32/ksigaction.h
index 7743c5c..c40e356 100644
--- a/arch/x32/ksigaction.h
+++ b/arch/x32/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
void (*handler)(int);
unsigned long flags;
@@ -5,5 +7,5 @@ struct k_sigaction {
unsigned mask[2];
};
-void __restore_rt();
+hidden void __restore_rt();
#define __restore __restore_rt
diff --git a/arch/x86_64/ksigaction.h b/arch/x86_64/ksigaction.h
index 7743c5c..c40e356 100644
--- a/arch/x86_64/ksigaction.h
+++ b/arch/x86_64/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
struct k_sigaction {
void (*handler)(int);
unsigned long flags;
@@ -5,5 +7,5 @@ struct k_sigaction {
unsigned mask[2];
};
-void __restore_rt();
+hidden void __restore_rt();
#define __restore __restore_rt
diff --git a/src/internal/ksigaction.h b/src/internal/ksigaction.h
index 1d8d964..8ebd593 100644
--- a/src/internal/ksigaction.h
+++ b/src/internal/ksigaction.h
@@ -1,3 +1,5 @@
+#include <features.h>
+
/* This is the structure used for the rt_sigaction syscall on most archs,
* but it can be overridden by a file with the same name in the top-level
* arch dir for a given arch, if necessary. */
@@ -8,4 +10,4 @@ struct k_sigaction {
unsigned mask[2];
};
-void __restore(), __restore_rt();
+hidden void __restore(), __restore_rt();
diff --git a/src/signal/aarch64/restore.s b/src/signal/aarch64/restore.s
index d3d0243..d4e5fcf 100644
--- a/src/signal/aarch64/restore.s
+++ b/src/signal/aarch64/restore.s
@@ -1,7 +1,9 @@
.global __restore
+.hidden __restore
.type __restore,%function
__restore:
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,%function
__restore_rt:
mov x8,#139 // SYS_rt_sigreturn
diff --git a/src/signal/arm/restore.s b/src/signal/arm/restore.s
index 22fb1a5..fb086d9 100644
--- a/src/signal/arm/restore.s
+++ b/src/signal/arm/restore.s
@@ -1,12 +1,14 @@
.syntax unified
.global __restore
+.hidden __restore
.type __restore,%function
__restore:
mov r7,#119
swi 0x0
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,%function
__restore_rt:
mov r7,#173
diff --git a/src/signal/i386/restore.s b/src/signal/i386/restore.s
index a30b69c..ccc9430 100644
--- a/src/signal/i386/restore.s
+++ b/src/signal/i386/restore.s
@@ -1,4 +1,5 @@
.global __restore
+.hidden __restore
.type __restore,@function
__restore:
popl %eax
@@ -6,6 +7,7 @@ __restore:
int $0x80
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,@function
__restore_rt:
movl $173, %eax
diff --git a/src/signal/microblaze/restore.s b/src/signal/microblaze/restore.s
index fe4f5a0..b3c9f57 100644
--- a/src/signal/microblaze/restore.s
+++ b/src/signal/microblaze/restore.s
@@ -1,10 +1,12 @@
.global __restore
+.hidden __restore
.type __restore,@function
__restore:
ori r12, r0, 119
brki r14, 0x8
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,@function
__restore_rt:
ori r12, r0, 173
diff --git a/src/signal/mips/restore.s b/src/signal/mips/restore.s
index 5c22dd4..b6dadce 100644
--- a/src/signal/mips/restore.s
+++ b/src/signal/mips/restore.s
@@ -1,12 +1,14 @@
.set noreorder
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,@function
__restore_rt:
li $2, 4193
syscall
.global __restore
+.hidden __restore
.type __restore,@function
__restore:
li $2, 4119
diff --git a/src/signal/mips64/restore.s b/src/signal/mips64/restore.s
index e898836..401f8e7 100644
--- a/src/signal/mips64/restore.s
+++ b/src/signal/mips64/restore.s
@@ -1,6 +1,8 @@
.set noreorder
.global __restore_rt
.global __restore
+.hidden __restore_rt
+.hidden __restore
.type __restore_rt,@function
.type __restore,@function
__restore_rt:
diff --git a/src/signal/mipsn32/restore.s b/src/signal/mipsn32/restore.s
index 0d1c1c5..4cd4e1b 100644
--- a/src/signal/mipsn32/restore.s
+++ b/src/signal/mipsn32/restore.s
@@ -1,6 +1,8 @@
.set noreorder
.global __restore_rt
.global __restore
+.hidden __restore_rt
+.hidden __restore
.type __restore_rt,@function
.type __restore,@function
__restore_rt:
diff --git a/src/signal/powerpc/restore.s b/src/signal/powerpc/restore.s
index 4d41c27..29c8afd 100644
--- a/src/signal/powerpc/restore.s
+++ b/src/signal/powerpc/restore.s
@@ -1,10 +1,12 @@
.global __restore
+ .hidden __restore
.type __restore,%function
__restore:
li 0, 119 #__NR_sigreturn
sc
.global __restore_rt
+ .hidden __restore_rt
.type __restore_rt,%function
__restore_rt:
li 0, 172 # __NR_rt_sigreturn
diff --git a/src/signal/powerpc64/restore.s b/src/signal/powerpc64/restore.s
index 4d41c27..29c8afd 100644
--- a/src/signal/powerpc64/restore.s
+++ b/src/signal/powerpc64/restore.s
@@ -1,10 +1,12 @@
.global __restore
+ .hidden __restore
.type __restore,%function
__restore:
li 0, 119 #__NR_sigreturn
sc
.global __restore_rt
+ .hidden __restore_rt
.type __restore_rt,%function
__restore_rt:
li 0, 172 # __NR_rt_sigreturn
diff --git a/src/signal/restore.c b/src/signal/restore.c
index 873b867..5ec4f5d 100644
--- a/src/signal/restore.c
+++ b/src/signal/restore.c
@@ -1,10 +1,12 @@
+#include <features.h>
+
/* These functions will not work, but suffice for targets where the
* kernel sigaction structure does not actually use sa_restorer. */
-void __restore()
+hidden void __restore()
{
}
-void __restore_rt()
+hidden void __restore_rt()
{
}
diff --git a/src/signal/s390x/restore.s b/src/signal/s390x/restore.s
index 79beb68..88e33db 100644
--- a/src/signal/s390x/restore.s
+++ b/src/signal/s390x/restore.s
@@ -1,9 +1,11 @@
.global __restore
+ .hidden __restore
.type __restore,%function
__restore:
svc 119 #__NR_sigreturn
.global __restore_rt
+ .hidden __restore_rt
.type __restore_rt,%function
__restore_rt:
svc 173 # __NR_rt_sigreturn
diff --git a/src/signal/sh/restore.s b/src/signal/sh/restore.s
index d5df8e1..3a92199 100644
--- a/src/signal/sh/restore.s
+++ b/src/signal/sh/restore.s
@@ -1,4 +1,5 @@
.global __restore
+.hidden __restore
__restore:
mov #119, r3 !__NR_sigreturn
trapa #31
@@ -10,6 +11,7 @@ __restore:
or r0, r0
.global __restore_rt
+.hidden __restore_rt
__restore_rt:
mov #100, r3 !__NR_rt_sigreturn
add #73, r3
diff --git a/src/signal/x32/restore.s b/src/signal/x32/restore.s
index 2f06e78..1117446 100644
--- a/src/signal/x32/restore.s
+++ b/src/signal/x32/restore.s
@@ -1,5 +1,6 @@
nop
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,@function
__restore_rt:
mov $0x40000201, %rax /* SYS_rt_sigreturn */
diff --git a/src/signal/x86_64/restore.s b/src/signal/x86_64/restore.s
index b5c6e37..27d6cf3 100644
--- a/src/signal/x86_64/restore.s
+++ b/src/signal/x86_64/restore.s
@@ -1,5 +1,6 @@
nop
.global __restore_rt
+.hidden __restore_rt
.type __restore_rt,@function
__restore_rt:
mov $15, %rax