4.8-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Nicholas Piggin <npig...@gmail.com>

commit f87f253bac3ce4a4eb2a60a1ae604d74e65f9042 upstream.

>From 80f23935cadb ("powerpc: Convert cmp to cmpd in idle enter sequence"):

  PowerPC's "cmp" instruction has four operands. Normally people write
  "cmpw" or "cmpd" for the second cmp operand 0 or 1. But, frequently
  people forget, and write "cmp" with just three operands.

  With older binutils this is silently accepted as if this was "cmpw",
  while often "cmpd" is wanted. With newer binutils GAS will complain
  about this for 64-bit code. For 32-bit code it still silently assumes
  "cmpw" is what is meant.

In this case, cmpwi is called for, so this is just a build fix for
new toolchains.

Signed-off-by: Nicholas Piggin <npig...@gmail.com>
Signed-off-by: Michael Ellerman <m...@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 arch/powerpc/kernel/head_64.S |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -201,9 +201,9 @@ booting_thread_hwid:
  */
 _GLOBAL(book3e_start_thread)
        LOAD_REG_IMMEDIATE(r5, MSR_KERNEL)
-       cmpi    0, r3, 0
+       cmpwi   r3, 0
        beq     10f
-       cmpi    0, r3, 1
+       cmpwi   r3, 1
        beq     11f
        /* If the thread id is invalid, just exit. */
        b       13f
@@ -228,9 +228,9 @@ _GLOBAL(book3e_start_thread)
  * r3 = the thread physical id
  */
 _GLOBAL(book3e_stop_thread)
-       cmpi    0, r3, 0
+       cmpwi   r3, 0
        beq     10f
-       cmpi    0, r3, 1
+       cmpwi   r3, 1
        beq     10f
        /* If the thread id is invalid, just exit. */
        b       13f


Reply via email to