diff mbox series

[hurd,commited] SET_RELHOOK: merge i386 and x86_64, and move to sysdeps/mach/hurd/x86

Message ID 20220201201057.2359927-1-samuel.thibault@ens-lyon.org
State New
Headers show
Series [hurd,commited] SET_RELHOOK: merge i386 and x86_64, and move to sysdeps/mach/hurd/x86 | expand

Commit Message

Samuel Thibault Feb. 1, 2022, 8:10 p.m. UTC
It is not Hurd-specific, but H.J. Lu wants it there.

Also, dc.a can be used to avoid hardcoding .long vs .quad and thus use
the same implementation for i386 and x86_64.
---
 sysdeps/generic/set-hooks-arch.h              |  2 +-
 .../{i386 => mach/hurd/x86}/set-hooks-arch.h  |  4 +--
 sysdeps/x86_64/set-hooks-arch.h               | 28 -------------------
 3 files changed, 3 insertions(+), 31 deletions(-)
 rename sysdeps/{i386 => mach/hurd/x86}/set-hooks-arch.h (94%)
 delete mode 100644 sysdeps/x86_64/set-hooks-arch.h
diff mbox series

Patch

diff --git a/sysdeps/generic/set-hooks-arch.h b/sysdeps/generic/set-hooks-arch.h
index 9101646d70..f04e11abfb 100644
--- a/sysdeps/generic/set-hooks-arch.h
+++ b/sysdeps/generic/set-hooks-arch.h
@@ -21,7 +21,7 @@ 
 #define _SET_HOOKS_ARCH_H
 
 /* Define SET_RELHOOK to a variant of text_set_element that records a relative
-   offset rather than an absolute address. See sysdeps/i386/set-hooks-arch.h
+   offset rather than an absolute address. See sysdeps/mach/hurd/x86/set-hooks-arch.h
    for an example.
 
 #define SET_RELHOOK(NAME, HOOK) ...
diff --git a/sysdeps/i386/set-hooks-arch.h b/sysdeps/mach/hurd/x86/set-hooks-arch.h
similarity index 94%
rename from sysdeps/i386/set-hooks-arch.h
rename to sysdeps/mach/hurd/x86/set-hooks-arch.h
index bbc7bef451..863aa76a0c 100644
--- a/sysdeps/i386/set-hooks-arch.h
+++ b/sysdeps/mach/hurd/x86/set-hooks-arch.h
@@ -1,5 +1,5 @@ 
 /* Machine-dependent macros for using symbol sets for running lists of
-   functions. i386 version.
+   functions. x86 version.
    Copyright (C) 2021-2022 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -22,7 +22,7 @@ 
 
 #define SET_RELHOOK(NAME, HOOK) \
 	asm(".section " #NAME",\"aR\"\n" \
-	    ".long "#HOOK" - .\n" \
+	    ".dc.a "#HOOK" - .\n" \
 	    ".section .text");
 
 #endif /* set_hooks_arch.h */
diff --git a/sysdeps/x86_64/set-hooks-arch.h b/sysdeps/x86_64/set-hooks-arch.h
deleted file mode 100644
index 789e46f1ad..0000000000
--- a/sysdeps/x86_64/set-hooks-arch.h
+++ /dev/null
@@ -1,28 +0,0 @@ 
-/* Machine-dependent macros for using symbol sets for running lists of
-   functions. x86-64 version.
-   Copyright (C) 2021-2022 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#ifndef _SET_HOOKS_ARCH_H
-#define _SET_HOOKS_ARCH_H
-
-#define SET_RELHOOK(NAME, HOOK) \
-	asm(".section " #NAME",\"aR\"\n" \
-	    ".quad "#HOOK" - .\n" \
-	    ".section .text");
-
-#endif /* set_hooks_arch.h */