about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSergey Bugaev <bugaevc@gmail.com>2023-04-03 14:56:20 +0300
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-04-10 20:42:28 +0200
commit645da826bba8c37d834403a56dc94203052c2cee (patch)
tree24dde8e9235b31a455c4a349db375e2775a1ae87
parent892f702827434553eeac63850048ddea7bf596c4 (diff)
downloadglibc-645da826bba8c37d834403a56dc94203052c2cee.tar.gz
glibc-645da826bba8c37d834403a56dc94203052c2cee.tar.xz
glibc-645da826bba8c37d834403a56dc94203052c2cee.zip
hurd: Do not declare local variables volatile
These are just regular local variables that are not accessed in any
funny ways, not even though a pointer. There's absolutely no reason to
declare them volatile. It only ends up hurting the quality of the
generated machine code.

If anything, it would make sense to decalre sigsp as *pointing* to
volatile memory (volatile void *sigsp), but evidently that's not needed
either.

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-Id: <20230403115621.258636-2-bugaevc@gmail.com>
-rw-r--r--hurd/trampoline.c2
-rw-r--r--sysdeps/mach/hurd/i386/trampoline.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/hurd/trampoline.c b/hurd/trampoline.c
index 5bd8dec919..1447b13fe6 100644
--- a/hurd/trampoline.c
+++ b/hurd/trampoline.c
@@ -29,7 +29,7 @@ struct sigcontext *
 _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action,
                         __sighandler_t handler,
                         int signo, struct hurd_signal_detail *detail,
-                        volatile int rpc_wait,
+                        int rpc_wait,
                         struct machine_thread_all_state *state)
 {
 #error "Need to write sysdeps/mach/hurd/MACHINE/trampoline.c"
diff --git a/sysdeps/mach/hurd/i386/trampoline.c b/sysdeps/mach/hurd/i386/trampoline.c
index ab67fb9cd2..9cd60b9c8f 100644
--- a/sysdeps/mach/hurd/i386/trampoline.c
+++ b/sysdeps/mach/hurd/i386/trampoline.c
@@ -83,13 +83,13 @@ struct sigcontext *
 _hurd_setup_sighandler (struct hurd_sigstate *ss, const struct sigaction *action,
 			__sighandler_t handler,
 			int signo, struct hurd_signal_detail *detail,
-			volatile int rpc_wait,
+			int rpc_wait,
 			struct machine_thread_all_state *state)
 {
   void trampoline (void);
   void rpc_wait_trampoline (void);
   void firewall (void);
-  void *volatile sigsp;
+  void *sigsp;
   struct sigcontext *scp;
   struct
     {