[PATCH 4/7] ARM: io-acorn: fix LTO linking without CONFIG_PRINTK

From: Arnd Bergmann
Date: Tue Feb 20 2018 - 17:00:54 EST


When CONFIG_LTO is enabled, we get a link error for this file
that contains a reference to printk():

arch/arm/lib/io-acorn.o: In function `outsl':
(.text+0x38): undefined reference to `printk'

Normally the file is simply dropped, but that doesn't happen
with LTO. Making the reference conditional helps, but perhaps
a better fix would be to make sure the LTO linker drops the
entire file in the same way that we normally do.

Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
arch/arm/lib/io-acorn.S | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/lib/io-acorn.S b/arch/arm/lib/io-acorn.S
index 69719bad674d..3522a899460b 100644
--- a/arch/arm/lib/io-acorn.S
+++ b/arch/arm/lib/io-acorn.S
@@ -27,6 +27,10 @@
*/
ENTRY(insl)
ENTRY(outsl)
+#ifdef CONFIG_PRINTK
adr r0, .Liosl_warning
mov r1, lr
b printk
+#else
+ ret lr
+#endif
--
2.9.0