MIPS: LLVMLinux: Fix an 'inline asm input/output type mismatch' error.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Tue, 24 Feb 2015 15:25:10 +0000 (15:25 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 1 Apr 2015 15:21:47 +0000 (17:21 +0200)
commit20c82d93d3c284700c7749f51d4eff3eaaf3e13f
treec6b73a29a0dee81c414f3ff0329c5a2036cc6a5e
parente6baf0e0b6757082554b9fc217f1f036e9e4ee8f
MIPS: LLVMLinux: Fix an 'inline asm input/output type mismatch' error.

Replace incorrect matching constraint that caused the error with an alternative
that still has the required constraints on the inline assembly.

This is the error message reported by clang:
arch/mips/include/asm/checksum.h:285:27: error: unsupported inline asm: input with type '__be32' (aka 'unsigned int') matching output with type 'unsigned short'
          "0" (htonl(len)), "1" (htonl(proto)), "r" (sum));
                                 ^~~~~~~~~~~~

The changed code can be compiled successfully by both gcc and clang.

Signed-off-by: Daniel Sanders <daniel.sanders@imgtec.com>
Signed-off-by: Toma Tabacu <toma.tabacu@imgtec.com>
Suggested-by: Maciej W. Rozycki <macro@linux-mips.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Markos Chandras <markos.chandras@imgtec.com>
Cc: Leonid Yegoshin <Leonid.Yegoshin@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/9313/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/include/asm/checksum.h