[PATCH v5 02/16] powerpc: Override __ALIGN and __ALIGN_STR macros

Sathvika Vasireddy sv at linux.ibm.com
Sat Oct 29 01:33:32 AEDT 2022


In a subsequent patch, we would want to annotate powerpc assembly functions
with SYM_FUNC_START_LOCAL macro. This macro depends on __ALIGN macro.

The default expansion of __ALIGN macro is:
        #define __ALIGN      .align 4,0x90

So, override __ALIGN and __ALIGN_STR macros to use the same alignment as
that of the existing _GLOBAL macro. Also, do not pad with 0x90, because
repeated 0x90s are not a nop or trap on powerpc.

Tested-by: Naveen N. Rao <naveen.n.rao at linux.vnet.ibm.com>
Reviewed-by: Naveen N. Rao <naveen.n.rao at linux.vnet.ibm.com>
Reviewed-by: Christophe Leroy <christophe.leroy at csgroup.eu>
Acked-by: Josh Poimboeuf <jpoimboe at kernel.org>
Signed-off-by: Sathvika Vasireddy <sv at linux.ibm.com>
---
 arch/powerpc/include/asm/linkage.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/powerpc/include/asm/linkage.h b/arch/powerpc/include/asm/linkage.h
index b71b9582e754..b88d1d2cf304 100644
--- a/arch/powerpc/include/asm/linkage.h
+++ b/arch/powerpc/include/asm/linkage.h
@@ -4,6 +4,9 @@
 
 #include <asm/types.h>
 
+#define __ALIGN		.align 2
+#define __ALIGN_STR	".align 2"
+
 #ifdef CONFIG_PPC64_ELF_ABI_V1
 #define cond_syscall(x) \
 	asm ("\t.weak " #x "\n\t.set " #x ", sys_ni_syscall\n"		\
-- 
2.31.1



More information about the Linuxppc-dev mailing list