MIPS: MSA: Fix a link error on `_init_msa_upper' with older GCC
authorMaciej W. Rozycki <macro@imgtec.com>
Tue, 17 May 2016 05:12:27 +0000 (06:12 +0100)
committerSasha Levin <sasha.levin@oracle.com>
Mon, 6 Jun 2016 23:12:23 +0000 (19:12 -0400)
commitf52a1b990cc3b4d4c4f0135ea3569848dca16784
treec2d291848582e0fa50b4e122b1e7db998e5ad678
parent8f25a2f3345dcee6608b55d50b34f8c1bb782f7b
MIPS: MSA: Fix a link error on `_init_msa_upper' with older GCC

[ Upstream commit e49d38488515057dba8f0c2ba4cfde5be4a7281f ]

Fix a build regression from commit c9017757c532 ("MIPS: init upper 64b
of vector registers when MSA is first used"):

arch/mips/built-in.o: In function `enable_restore_fp_context':
traps.c:(.text+0xbb90): undefined reference to `_init_msa_upper'
traps.c:(.text+0xbb90): relocation truncated to fit: R_MIPS_26 against `_init_msa_upper'
traps.c:(.text+0xbef0): undefined reference to `_init_msa_upper'
traps.c:(.text+0xbef0): relocation truncated to fit: R_MIPS_26 against `_init_msa_upper'

to !CONFIG_CPU_HAS_MSA configurations with older GCC versions, which are
unable to figure out that calls to `_init_msa_upper' are indeed dead.
Of the many ways to tackle this failure choose the approach we have
already taken in `thread_msa_context_live'.

[ralf@linux-mips.org: Drop patch segment to junk file.]

Signed-off-by: Maciej W. Rozycki <macro@imgtec.com>
Cc: stable@vger.kernel.org # v3.16+
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/13271/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
arch/mips/include/asm/msa.h
arch/mips/kernel/traps.c