Message ID | 20211207170129.578089-1-nathan@kernel.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | MIPS: Loongson64: Use three arguments for slti | expand |
Hello! On 07.12.2021 20:01, Nathan Chancellor wrote: > LLVM's integrated assembler does not support 'stli <reg>, <imm>': Perhaps slti (as below)? > <instantiation>:16:12: error: invalid operand for instruction > slti $12, (0x6300 | 0x0008) > ^ > arch/mips/kernel/head.S:86:2: note: while in macro instantiation > kernel_entry_setup # cpu specific setup > ^ > <instantiation>:16:12: error: invalid operand for instruction > slti $12, (0x6300 | 0x0008) > ^ > arch/mips/kernel/head.S:150:2: note: while in macro instantiation > smp_slave_setup > ^ > > To increase compatibility with LLVM's integrated assembler, use the full > form of 'stli <reg>, <reg>, <imm>', which matches the rest of Again, slti? > arch/mips/. This does not result in any change for GNU as. > > Link: https://github.com/ClangBuiltLinux/linux/issues/1526 > Reported-by: Ryutaroh Matsumoto <ryutaroh@ict.e.titech.ac.jp> > Signed-off-by: Nathan Chancellor <nathan@kernel.org> [...] MBR, Sergey
diff --git a/arch/mips/include/asm/mach-loongson64/kernel-entry-init.h b/arch/mips/include/asm/mach-loongson64/kernel-entry-init.h index 13373c5144f8..efb41b351974 100644 --- a/arch/mips/include/asm/mach-loongson64/kernel-entry-init.h +++ b/arch/mips/include/asm/mach-loongson64/kernel-entry-init.h @@ -32,7 +32,7 @@ nop /* Loongson-3A R2/R3 */ andi t0, (PRID_IMP_MASK | PRID_REV_MASK) - slti t0, (PRID_IMP_LOONGSON_64C | PRID_REV_LOONGSON3A_R2_0) + slti t0, t0, (PRID_IMP_LOONGSON_64C | PRID_REV_LOONGSON3A_R2_0) bnez t0, 2f nop 1: @@ -63,7 +63,7 @@ nop /* Loongson-3A R2/R3 */ andi t0, (PRID_IMP_MASK | PRID_REV_MASK) - slti t0, (PRID_IMP_LOONGSON_64C | PRID_REV_LOONGSON3A_R2_0) + slti t0, t0, (PRID_IMP_LOONGSON_64C | PRID_REV_LOONGSON3A_R2_0) bnez t0, 2f nop 1:
LLVM's integrated assembler does not support 'stli <reg>, <imm>': <instantiation>:16:12: error: invalid operand for instruction slti $12, (0x6300 | 0x0008) ^ arch/mips/kernel/head.S:86:2: note: while in macro instantiation kernel_entry_setup # cpu specific setup ^ <instantiation>:16:12: error: invalid operand for instruction slti $12, (0x6300 | 0x0008) ^ arch/mips/kernel/head.S:150:2: note: while in macro instantiation smp_slave_setup ^ To increase compatibility with LLVM's integrated assembler, use the full form of 'stli <reg>, <reg>, <imm>', which matches the rest of arch/mips/. This does not result in any change for GNU as. Link: https://github.com/ClangBuiltLinux/linux/issues/1526 Reported-by: Ryutaroh Matsumoto <ryutaroh@ict.e.titech.ac.jp> Signed-off-by: Nathan Chancellor <nathan@kernel.org> --- arch/mips/include/asm/mach-loongson64/kernel-entry-init.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) base-commit: 0fcfb00b28c0b7884635dacf38e46d60bf3d4eb1