]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
PowerPC64 sysdep.h tidy
authorAlan Modra <amodra@gmail.com>
Wed, 14 Jun 2017 01:14:03 +0000 (10:44 +0930)
committerAlan Modra <amodra@gmail.com>
Wed, 14 Jun 2017 01:14:03 +0000 (10:44 +0930)
.align on some targets takes a byte alignment, on others like powerpc,
log2 of the byte alignment.  It's a good idea to avoid .align,
particularly since x86 and powerpc are different.  This patch fixes
the occurrences of .align in powerpc64/sysdep.h, renames DOT_LABEL
since the macro doesn't have anything to do with adding dots, removes
extraneous semicolons, and fixes some formatting.

* sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
(FUNC_LABEL): Rename from DOT_LABEL.
(ENTRY_1): Use FUNC_LABEL and remove leading space from label.
Use .p2align rather than .align.
(TRACEBACK, TRACEBACK_MASK): Use .p2align rather than .align.
(ABORT_TRANSACTION): Likewise.
(ENTRY_1, ENTRY_2, END_2, LOCALENTRY): Remove unnecessary semicolons,
particularly at end.  Add semicolon at invocation as necessary.
(TRACEBACK, TRACEBACK_MASK, PSEUDO, PSEUDO_NOERRNO): Likewise.
(PSEUDO_ERRVAL, PPC64_LOAD_FUNCPTR, OPD_ENT): Likewise.
* sysdeps/powerpc/powerpc64/multiarch/strrchr-power8.S (ENTRY,
END): Adjust to suit.

ChangeLog
sysdeps/powerpc/powerpc64/multiarch/strrchr-power8.S
sysdeps/powerpc/powerpc64/sysdep.h

index 3f43ec4c6fcff9329829d07c6a0324543de22aaa..3b4693461e1a3277ff736355d95bf84629ba373d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2017-06-14  Alan Modra  <amodra@gmail.com>
+
+       * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
+       (FUNC_LABEL): Rename from DOT_LABEL.
+       (ENTRY_1): Use FUNC_LABEL and remove leading space from label.
+       Use .p2align rather than .align.
+       (TRACEBACK, TRACEBACK_MASK): Use .p2align rather than .align.
+       (ABORT_TRANSACTION): Likewise.
+       (ENTRY_1, ENTRY_2, END_2, LOCALENTRY): Remove unnecessary semicolons,
+       particularly at end.  Add semicolon at invocation as necessary.
+       (TRACEBACK, TRACEBACK_MASK, PSEUDO, PSEUDO_NOERRNO): Likewise.
+       (PSEUDO_ERRVAL, PPC64_LOAD_FUNCPTR, OPD_ENT): Likewise.
+       * sysdeps/powerpc/powerpc64/multiarch/strrchr-power8.S (ENTRY,
+       END): Adjust to suit.
+
 2017-06-14  Alan Modra  <amodra@gmail.com>
 
        * sysdeps/powerpc/powerpc64/sysdep.h: (FRAME_BACKCHAIN,
index 23365a14460bf5813e9b7eadd6461e39cff20b2e..a895dc6939410d8754fe848899ace2095661a61b 100644 (file)
@@ -21,7 +21,7 @@
 #undef ENTRY
 #define ENTRY(name)                                            \
   .section ".text";                                            \
-  ENTRY_2(__strrchr_power8)                                    \
+  ENTRY_2(__strrchr_power8);                                   \
   .align ALIGNARG(2);                                          \
   BODY_LABEL(__strrchr_power8):                                        \
   cfi_startproc;                                               \
@@ -30,7 +30,7 @@
 #undef END
 #define END(name)                                              \
   cfi_endproc;                                                 \
-  TRACEBACK(__strrchr_power8)                                  \
+  TRACEBACK(__strrchr_power8);                                 \
   END_2(__strrchr_power8)
 
 #undef libc_hidden_builtin_def
index 434732310cdc447984ed0bf9ff7099d93181858c..860420ea2d9ace32619f3a8f1ee47dfa9602400b 100644 (file)
 # define OPD_ENT(name) .quad BODY_LABEL (name), .TOC.@tocbase, 0
 #endif
 
-#define ENTRY_1(name)  \
+#define ENTRY_1(name)                          \
        .type BODY_LABEL(name),@function;       \
        .globl name;                            \
        .section ".opd","aw";                   \
-       .align 3;                               \
-name##: OPD_ENT (name);                                \
-       .previous;
+       .p2align 3;FUNC_LABEL(name):            \
+       OPD_ENT (name);                         \
+       .previous
 
-#define DOT_LABEL(X) X
+#define FUNC_LABEL(X) X
 #define BODY_LABEL(X) .LY##X
-#define ENTRY_2(name)  \
+#define ENTRY_2(name)                          \
        .type name,@function;                   \
        ENTRY_1(name)
-#define END_2(name)    \
+#define END_2(name)                            \
        .size name,.-BODY_LABEL(name);          \
-       .size BODY_LABEL(name),.-BODY_LABEL(name);
+       .size BODY_LABEL(name),.-BODY_LABEL(name)
 #define LOCALENTRY(name)
 
-#else /* _CALL_ELF */
+#else /* _CALL_ELF == 2 */
 
 /* Macro to prepare for calling via a function pointer.  */
        .macro PPC64_LOAD_FUNCPTR PTR
@@ -132,23 +132,23 @@ name##: OPD_ENT (name);                           \
        mtctr   r12
        .endm
 
-#define DOT_LABEL(X) X
+#define FUNC_LABEL(X) X
 #define BODY_LABEL(X) X
-#define ENTRY_2(name)  \
+#define ENTRY_2(name)                          \
        .globl name;                            \
-       .type name,@function;
-#define END_2(name)    \
-       .size name,.-name;
-#define LOCALENTRY(name)       \
-1:      addis  r2,r12,.TOC.-1b@ha; \
-        addi   r2,r2,.TOC.-1b@l; \
-       .localentry name,.-name;
+       .type name,@function
+#define END_2(name)                            \
+       .size name,.-name
+#define LOCALENTRY(name)                       \
+1:      addis  r2,r12,.TOC.-1b@ha;             \
+        addi   r2,r2,.TOC.-1b@l;               \
+       .localentry name,.-name
 
 #endif /* _CALL_ELF */
 
 #define ENTRY(name)    \
        .section        ".text";                \
-       ENTRY_2(name)                           \
+       ENTRY_2(name);                          \
        .align ALIGNARG(2);                     \
 BODY_LABEL(name):                              \
        cfi_startproc;                          \
@@ -167,7 +167,7 @@ BODY_LABEL(name):                           \
    past a 2^alignt boundary.  */
 #define EALIGN(name, alignt, words) \
        .section        ".text";                \
-       ENTRY_2(name)                           \
+       ENTRY_2(name);                          \
        .align ALIGNARG(alignt);                \
        EALIGN_W_##words;                       \
 BODY_LABEL(name):                              \
@@ -220,7 +220,7 @@ LT_LABEL(name): ; \
 LT_LABELSUFFIX(name,_name_start): ;\
        .ascii  stringify(name) ; \
 LT_LABELSUFFIX(name,_name_end): ; \
-       .align  2 ;
+       .p2align 2
 
 #define TRACEBACK_MASK(name,mask) \
 LT_LABEL(name): ; \
@@ -231,19 +231,19 @@ LT_LABEL(name): ; \
 LT_LABELSUFFIX(name,_name_start): ;\
        .ascii  stringify(name) ; \
 LT_LABELSUFFIX(name,_name_end): ; \
-       .align  2 ;
+       .p2align 2
 
 /* END generates Traceback tables */
 #undef END
 #define END(name) \
   cfi_endproc;                 \
-  TRACEBACK(name)              \
+  TRACEBACK(name);             \
   END_2(name)
 
 /* This form supports more informative traceback tables */
 #define END_GEN_TB(name,mask)  \
   cfi_endproc;                 \
-  TRACEBACK_MASK(name,mask)    \
+  TRACEBACK_MASK(name,mask);   \
   END_2(name)
 
 #if !IS_IN(rtld) && defined (ENABLE_LOCK_ELISION)
@@ -255,7 +255,7 @@ LT_LABELSUFFIX(name,_name_end): ; \
     beq             1f;                \
     li       11,_ABORT_SYSCALL;        \
     tabort.  11;               \
-    .align 4;                   \
+    .p2align 4;                        \
 1:
 #else
 # define ABORT_TRANSACTION
@@ -268,12 +268,12 @@ LT_LABELSUFFIX(name,_name_end): ; \
 
 /* ppc64 is always PIC */
 #undef JUMPTARGET
-#define JUMPTARGET(name) DOT_LABEL(name)
+#define JUMPTARGET(name) FUNC_LABEL(name)
 
 #define PSEUDO(name, syscall_name, args) \
-  .section ".text";    \
-  ENTRY (name) \
-  DO_CALL (SYS_ify (syscall_name));
+  .section ".text";                            \
+  ENTRY (name);                                        \
+  DO_CALL (SYS_ify (syscall_name))
 
 #ifdef SHARED
 #define TAIL_CALL_SYSCALL_ERROR \
@@ -314,9 +314,9 @@ LT_LABELSUFFIX(name,_name_end): ; \
   END (name)
 
 #define PSEUDO_NOERRNO(name, syscall_name, args) \
-  .section ".text";    \
-  ENTRY (name) \
-  DO_CALL (SYS_ify (syscall_name));
+  .section ".text";                                    \
+  ENTRY (name);                                                \
+  DO_CALL (SYS_ify (syscall_name))
 
 #define PSEUDO_RET_NOERRNO \
     blr
@@ -328,9 +328,9 @@ LT_LABELSUFFIX(name,_name_end): ; \
   END (name)
 
 #define PSEUDO_ERRVAL(name, syscall_name, args) \
-  .section ".text";    \
-  ENTRY (name) \
-  DO_CALL (SYS_ify (syscall_name));
+  .section ".text";                                    \
+  ENTRY (name);                                                \
+  DO_CALL (SYS_ify (syscall_name))
 
 #define PSEUDO_RET_ERRVAL \
     blr
@@ -346,53 +346,53 @@ LT_LABELSUFFIX(name,_name_end): ; \
 #if _CALL_ELF != 2
 
 #define PPC64_LOAD_FUNCPTR(ptr) \
-       "ld     12,0(" #ptr ");\n"                                      \
-       "ld     2,8(" #ptr ");\n"                                       \
-       "mtctr  12;\n"                                                  \
-       "ld     11,16(" #ptr ");"
+       "ld     12,0(" #ptr ")\n"                                       \
+       "ld     2,8(" #ptr ")\n"                                        \
+       "mtctr  12\n"                                                   \
+       "ld     11,16(" #ptr ")"
 
 #ifdef USE_PPC64_OVERLAPPING_OPD
-# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase;"
+# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase"
 #else
-# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase, 0;"
+# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase, 0"
 #endif
 
 #define ENTRY_1(name)  \
-       ".type   " BODY_PREFIX #name ",@function;\n"                    \
-       ".globl " #name ";\n"                                           \
-       ".pushsection \".opd\",\"aw\";\n"                               \
-       ".align  3;\n"                                                  \
+       ".type   " BODY_PREFIX #name ",@function\n"                     \
+       ".globl " #name "\n"                                            \
+       ".pushsection \".opd\",\"aw\"\n"                                \
+       ".p2align 3\n"                                                  \
 #name ":\n"                                                            \
        OPD_ENT (name) "\n"                                             \
-       ".popsection;"
+       ".popsection"
 
 #define DOT_PREFIX ""
 #define BODY_PREFIX ".LY"
 #define ENTRY_2(name)  \
-       ".type " #name ",@function;\n"                                  \
+       ".type " #name ",@function\n"                                   \
        ENTRY_1(name)
 #define END_2(name)    \
-       ".size " #name ",.-" BODY_PREFIX #name ";\n"                    \
-       ".size " BODY_PREFIX #name ",.-" BODY_PREFIX #name ";"
+       ".size " #name ",.-" BODY_PREFIX #name "\n"                     \
+       ".size " BODY_PREFIX #name ",.-" BODY_PREFIX #name
 #define LOCALENTRY(name)
 
 #else /* _CALL_ELF */
 
 #define PPC64_LOAD_FUNCPTR(ptr) \
-       "mr     12," #ptr ";\n"                                         \
-       "mtctr  12;"
+       "mr     12," #ptr "\n"                                          \
+       "mtctr  12"
 
 #define DOT_PREFIX ""
 #define BODY_PREFIX ""
 #define ENTRY_2(name)  \
-       ".type " #name ",@function;\n"                                  \
-       ".globl " #name ";"
+       ".type " #name ",@function\n"                                   \
+       ".globl " #name
 #define END_2(name)    \
-       ".size " #name ",.-" #name ";"
+       ".size " #name ",.-" #name
 #define LOCALENTRY(name)       \
-       "1: addis 2,12,.TOC.-1b@ha;\n"                                  \
-       "addi   2,2,.TOC.-1b@l;\n"                                      \
-       ".localentry " #name ",.-" #name ";"
+       "1: addis 2,12,.TOC.-1b@ha\n"                                   \
+       "addi   2,2,.TOC.-1b@l\n"                                       \
+       ".localentry " #name ",.-" #name
 
 #endif /* _CALL_ELF */