From: Nicholas Piggin <npiggin@gmail.com>
To: linuxppc-dev@lists.ozlabs.org
Cc: Nicholas Piggin <npiggin@gmail.com>,
Alan Modra <amodra@gmail.com>,
Segher Boessenkool <segher@kernel.crashing.org>
Subject: [PATCH 1/3] powerpc/64e: convert cmpi to cmpwi in head_64.S
Date: Thu, 24 Nov 2016 00:02:07 +1100 [thread overview]
Message-ID: <20161123130209.1667-2-npiggin@gmail.com> (raw)
In-Reply-To: <20161123130209.1667-1-npiggin@gmail.com>
>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 instance the code comes directly from ISA v2.07, including the
cmp, but cmpd is correct. Backport to stable so that new toolchains can
build old kernels.
In this case, cmpwi is called for, so this is just a build fix for
new toolchians.
Stable: v3.0
Cc: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
arch/powerpc/kernel/head_64.S | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 04c546e..1f7f908 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -214,9 +214,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
@@ -241,9 +241,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
--
2.10.2
next prev parent reply other threads:[~2016-11-23 13:02 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-23 13:02 [PATCH 0/3] minor build fixes Nicholas Piggin
2016-11-23 13:02 ` Nicholas Piggin [this message]
2016-11-29 12:58 ` [1/3] powerpc/64e: convert cmpi to cmpwi in head_64.S Michael Ellerman
2016-11-23 13:02 ` [PATCH 2/3] powerpc: allow compilation on cross-endian toolchain Nicholas Piggin
2016-11-24 9:04 ` Nicholas Piggin
2016-11-26 3:00 ` Nicholas Piggin
2016-11-26 7:30 ` Michael Ellerman
2016-11-27 2:46 ` Nicholas Piggin
2017-02-02 8:08 ` Naveen N. Rao
2017-03-08 7:25 ` [2/3] " Michael Ellerman
2016-11-23 13:02 ` [PATCH 3/3] powerpc/64e: don't branch to dot symbols Nicholas Piggin
2016-11-29 12:58 ` [3/3] " Michael Ellerman
2016-11-23 23:03 ` [PATCH 0/3] minor build fixes Alan Modra
2016-11-24 1:04 ` Nicholas Piggin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161123130209.1667-2-npiggin@gmail.com \
--to=npiggin@gmail.com \
--cc=amodra@gmail.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=segher@kernel.crashing.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).