From: James Hogan Date: Wed, 18 May 2016 16:04:38 +0000 (+0100) Subject: MIPS: Fix write_gc0_* macros when writing zero X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=f03984ca4fcfb356ee0765ae49a36288e6cdb165;p=deliverable%2Flinux.git MIPS: Fix write_gc0_* macros when writing zero The versions of the __write_{32,64}bit_gc0_register() macros for when there is no virt support in the assembler use the "J" inline asm constraint to allow integer zero, but this needs to be accompanied by the "z" formatting string so that it turns into $0. Fix both macros to do this. Fixes: bad50d79255a ("MIPS: Fix VZ probe gas errors with binutils <2.24") Signed-off-by: James Hogan Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/13289/ Signed-off-by: Ralf Baechle --- diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h index 8471905f9288..044219e741cc 100644 --- a/arch/mips/include/asm/mipsregs.h +++ b/arch/mips/include/asm/mipsregs.h @@ -1773,7 +1773,7 @@ do { \ __asm__ __volatile__( \ ".set\tpush\n\t" \ ".set\tnoat\n\t" \ - "move\t$1, %0\n\t" \ + "move\t$1, %z0\n\t" \ "# mtgc0\t$1, $%1, %2\n\t" \ ".word\t(0x40610200 | %1 << 11 | %2)\n\t" \ ".set\tpop" \ @@ -1786,7 +1786,7 @@ do { \ __asm__ __volatile__( \ ".set\tpush\n\t" \ ".set\tnoat\n\t" \ - "move\t$1, %0\n\t" \ + "move\t$1, %z0\n\t" \ "# dmtgc0\t$1, $%1, %2\n\t" \ ".word\t(0x40610300 | %1 << 11 | %2)\n\t" \ ".set\tpop" \