summaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/asm/assembler.h
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2020-01-06 19:58:16 +0000
committerWill Deacon <will@kernel.org>2020-01-08 12:14:08 +0000
commit35e61c77ef386555f3df1bc2057098c6997ca10b (patch)
tree16c282466562ba9e0057223f5f11068a4ab4a538 /arch/arm64/include/asm/assembler.h
parent46cf053efec6a3a5f343fead837777efe8252a46 (diff)
downloadlinux-stable-35e61c77ef386555f3df1bc2057098c6997ca10b.tar.gz
linux-stable-35e61c77ef386555f3df1bc2057098c6997ca10b.tar.bz2
linux-stable-35e61c77ef386555f3df1bc2057098c6997ca10b.zip
arm64: asm: Add new-style position independent function annotations
As part of an effort to make the annotations in assembly code clearer and more consistent new macros have been introduced, including replacements for ENTRY() and ENDPROC(). On arm64 we have ENDPIPROC(), a custom version of ENDPROC() which is used for code that will need to run in position independent environments like EFI, it creates an alias for the function with the prefix __pi_ and then emits the standard ENDPROC. Add new-style macros to replace this which expand to the standard SYM_FUNC_*() and SYM_FUNC_ALIAS_*(), resulting in the same object code. These are added in linkage.h for consistency with where the generic assembler code has its macros. Signed-off-by: Mark Brown <broonie@kernel.org> [will: Rename 'WEAK' macro, use ';' instead of ASM_NL, deprecate ENDPIPROC] Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/include/asm/assembler.h')
-rw-r--r--arch/arm64/include/asm/assembler.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/assembler.h b/arch/arm64/include/asm/assembler.h
index b8cf7c85ffa2..4a4258f17c86 100644
--- a/arch/arm64/include/asm/assembler.h
+++ b/arch/arm64/include/asm/assembler.h
@@ -462,6 +462,7 @@ USER(\label, ic ivau, \tmp2) // invalidate I line PoU
.endm
/*
+ * Deprecated! Use SYM_FUNC_{START,START_WEAK,END}_PI instead.
* Annotate a function as position independent, i.e., safe to be called before
* the kernel virtual mapping is activated.
*/