]> git.itanic.dy.fi Git - linux-stable/commitdiff
MIPS: set mips32r5 for virt extensions
authorNick Desaulniers <ndesaulniers@google.com>
Mon, 28 Jun 2021 21:50:26 +0000 (14:50 -0700)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Tue, 29 Jun 2021 08:23:57 +0000 (10:23 +0200)
Clang's integrated assembler only accepts these instructions when the
cpu is set to mips32r5. With this change, we can assemble
malta_defconfig with Clang via `make LLVM_IAS=1`.

Link: https://github.com/ClangBuiltLinux/linux/issues/763
Reported-by: Dmitry Golovin <dima@golovin.in>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
arch/mips/include/asm/mipsregs.h

index 9c8099a6ffed1d4650bd02d873963594575b64c5..acdf8c69220b03240b8b0184712b96a6bb4cb0f4 100644 (file)
@@ -2077,7 +2077,7 @@ _ASM_MACRO_0(tlbginvf, _ASM_INSN_IF_MIPS(0x4200000c)
 ({ int __res;                                                          \
        __asm__ __volatile__(                                           \
                ".set\tpush\n\t"                                        \
-               ".set\tmips32r2\n\t"                                    \
+               ".set\tmips32r5\n\t"                                    \
                _ASM_SET_VIRT                                           \
                "mfgc0\t%0, " #source ", %1\n\t"                        \
                ".set\tpop"                                             \
@@ -2090,7 +2090,7 @@ _ASM_MACRO_0(tlbginvf, _ASM_INSN_IF_MIPS(0x4200000c)
 ({ unsigned long long __res;                                           \
        __asm__ __volatile__(                                           \
                ".set\tpush\n\t"                                        \
-               ".set\tmips64r2\n\t"                                    \
+               ".set\tmips64r5\n\t"                                    \
                _ASM_SET_VIRT                                           \
                "dmfgc0\t%0, " #source ", %1\n\t"                       \
                ".set\tpop"                                             \
@@ -2103,7 +2103,7 @@ _ASM_MACRO_0(tlbginvf, _ASM_INSN_IF_MIPS(0x4200000c)
 do {                                                                   \
        __asm__ __volatile__(                                           \
                ".set\tpush\n\t"                                        \
-               ".set\tmips32r2\n\t"                                    \
+               ".set\tmips32r5\n\t"                                    \
                _ASM_SET_VIRT                                           \
                "mtgc0\t%z0, " #register ", %1\n\t"                     \
                ".set\tpop"                                             \
@@ -2115,7 +2115,7 @@ do {                                                                      \
 do {                                                                   \
        __asm__ __volatile__(                                           \
                ".set\tpush\n\t"                                        \
-               ".set\tmips64r2\n\t"                                    \
+               ".set\tmips64r5\n\t"                                    \
                _ASM_SET_VIRT                                           \
                "dmtgc0\t%z0, " #register ", %1\n\t"                    \
                ".set\tpop"                                             \