* Patch "sparc64: Add __multi3 for gcc 7.x and later." has been added to the 4.4-stable tree
@ 2017-06-08 7:33 gregkh
0 siblings, 0 replies; only message in thread
From: gregkh @ 2017-06-08 7:33 UTC (permalink / raw)
To: davem, gregkh, wbx; +Cc: stable, stable-commits
This is a note to let you know that I've just added the patch titled
sparc64: Add __multi3 for gcc 7.x and later.
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
sparc64-add-__multi3-for-gcc-7.x-and-later.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.
>From foo@baz Thu Jun 8 09:20:28 CEST 2017
From: "David S. Miller" <davem@davemloft.net>
Date: Mon, 5 Jun 2017 11:28:57 -0700
Subject: sparc64: Add __multi3 for gcc 7.x and later.
From: "David S. Miller" <davem@davemloft.net>
[ Upstream commit 1b4af13ff2cc6897557bb0b8d9e2fad4fa4d67aa ]
Reported-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
arch/sparc/lib/Makefile | 1 +
arch/sparc/lib/multi3.S | 35 +++++++++++++++++++++++++++++++++++
2 files changed, 36 insertions(+)
create mode 100644 arch/sparc/lib/multi3.S
--- a/arch/sparc/lib/Makefile
+++ b/arch/sparc/lib/Makefile
@@ -15,6 +15,7 @@ lib-$(CONFIG_SPARC32) += copy_user.o loc
lib-$(CONFIG_SPARC64) += atomic_64.o
lib-$(CONFIG_SPARC32) += lshrdi3.o ashldi3.o
lib-$(CONFIG_SPARC32) += muldi3.o bitext.o cmpdi2.o
+lib-$(CONFIG_SPARC64) += multi3.o
lib-$(CONFIG_SPARC64) += copy_page.o clear_page.o bzero.o
lib-$(CONFIG_SPARC64) += csum_copy.o csum_copy_from_user.o csum_copy_to_user.o
--- /dev/null
+++ b/arch/sparc/lib/multi3.S
@@ -0,0 +1,35 @@
+#include <linux/linkage.h>
+#include <asm/export.h>
+
+ .text
+ .align 4
+ENTRY(__multi3) /* %o0 = u, %o1 = v */
+ mov %o1, %g1
+ srl %o3, 0, %g4
+ mulx %g4, %g1, %o1
+ srlx %g1, 0x20, %g3
+ mulx %g3, %g4, %g5
+ sllx %g5, 0x20, %o5
+ srl %g1, 0, %g4
+ sub %o1, %o5, %o5
+ srlx %o5, 0x20, %o5
+ addcc %g5, %o5, %g5
+ srlx %o3, 0x20, %o5
+ mulx %g4, %o5, %g4
+ mulx %g3, %o5, %o5
+ sethi %hi(0x80000000), %g3
+ addcc %g5, %g4, %g5
+ srlx %g5, 0x20, %g5
+ add %g3, %g3, %g3
+ movcc %xcc, %g0, %g3
+ addcc %o5, %g5, %o5
+ sllx %g4, 0x20, %g4
+ add %o1, %g4, %o1
+ add %o5, %g3, %g2
+ mulx %g1, %o2, %g1
+ add %g1, %g2, %g1
+ mulx %o0, %o3, %o0
+ retl
+ add %g1, %o0, %o0
+ENDPROC(__multi3)
+EXPORT_SYMBOL(__multi3)
Patches currently in stable-queue which might be from davem@davemloft.net are
queue-4.4/sparc64-new-context-wrap.patch
queue-4.4/sparc64-add-__multi3-for-gcc-7.x-and-later.patch
queue-4.4/sparc-machine-description-indices-can-vary.patch
queue-4.4/sparc64-combine-activate_mm-and-switch_mm.patch
queue-4.4/sparc64-add-per-cpu-mm-of-secondary-contexts.patch
queue-4.4/net-bridge-start-hello-timer-only-if-device-is-up.patch
queue-4.4/sparc64-mm-fix-copy_tsb-to-correctly-copy-huge-page-tsbs.patch
queue-4.4/sparc64-reset-mm-cpumask-after-wrap.patch
queue-4.4/vxlan-fix-use-after-free-on-deletion.patch
queue-4.4/net-ethoc-enable-napi-before-poll-may-be-scheduled.patch
queue-4.4/cxgb4-avoid-enabling-napi-twice-to-the-same-queue.patch
queue-4.4/tcp-disallow-cwnd-undo-when-switching-congestion-control.patch
queue-4.4/sparc64-redefine-first-version.patch
queue-4.4/ipv6-xfrm-handle-errors-reported-by-xfrm6_find_1stfragopt.patch
queue-4.4/sparc64-delete-old-wrap-code.patch
queue-4.4/bnx2x-fix-multi-cos.patch
queue-4.4/net-ping-do-not-abuse-udp_poll.patch
queue-4.4/ipv6-fix-leak-in-ipv6_gso_segment.patch
queue-4.4/arch-sparc-support-nr_cpus-4096.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-06-08 7:34 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-08 7:33 Patch "sparc64: Add __multi3 for gcc 7.x and later." has been added to the 4.4-stable tree gregkh
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).