Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: Fix MSA assembly warnings

Building an MSA capable kernel with a toolchain that supports MSA
produces warnings such as this:

arch/mips/kernel/r4k_fpu.S:229: Warning: the `msa' extension requires 64-bit FPRs

This is due to ".set msa" without ".set fp=64" in the non doubleword MSA
load/store macros, since MSA requires the 64-bit FPU registers (FR=1).
Add the missing fp=64 in these macros to silence the warnings.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/13063/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

authored by

James Hogan and committed by
Ralf Baechle
92e9953c 143e93d7

+6
+6
arch/mips/include/asm/asmmacro.h
··· 235 235 .macro ld_b wd, off, base 236 236 .set push 237 237 .set mips32r2 238 + .set fp=64 238 239 .set msa 239 240 ld.b $w\wd, \off(\base) 240 241 .set pop ··· 244 243 .macro ld_h wd, off, base 245 244 .set push 246 245 .set mips32r2 246 + .set fp=64 247 247 .set msa 248 248 ld.h $w\wd, \off(\base) 249 249 .set pop ··· 253 251 .macro ld_w wd, off, base 254 252 .set push 255 253 .set mips32r2 254 + .set fp=64 256 255 .set msa 257 256 ld.w $w\wd, \off(\base) 258 257 .set pop ··· 271 268 .macro st_b wd, off, base 272 269 .set push 273 270 .set mips32r2 271 + .set fp=64 274 272 .set msa 275 273 st.b $w\wd, \off(\base) 276 274 .set pop ··· 280 276 .macro st_h wd, off, base 281 277 .set push 282 278 .set mips32r2 279 + .set fp=64 283 280 .set msa 284 281 st.h $w\wd, \off(\base) 285 282 .set pop ··· 289 284 .macro st_w wd, off, base 290 285 .set push 291 286 .set mips32r2 287 + .set fp=64 292 288 .set msa 293 289 st.w $w\wd, \off(\base) 294 290 .set pop