about summary refs log tree commit diff
path: root/sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S')
-rw-r--r--sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S71
1 files changed, 0 insertions, 71 deletions
diff --git a/sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S b/sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S
deleted file mode 100644
index 2d2a75dff8..0000000000
--- a/sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S
+++ /dev/null
@@ -1,71 +0,0 @@
-! SPARC v9 64-bit VIS3 __mpn_sub_n -- Subtract two limb vectors of the same length > 0
-! and store difference in a third limb vector.
-!
-! Copyright (C) 2013-2017 Free Software Foundation, Inc.
-! This file is part of the GNU C Library.
-! Contributed by David S. Miller <davem@davemloft.net>
-!
-! The GNU C Library is free software; you can redistribute it and/or
-! modify it under the terms of the GNU Lesser General Public
-! License as published by the Free Software Foundation; either
-! version 2.1 of the License, or (at your option) any later version.
-!
-! The GNU C Library is distributed in the hope that it will be useful,
-! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-! Lesser General Public License for more details.
-!
-! You should have received a copy of the GNU Lesser General Public
-! License along with the GNU C Library; if not, see
-! <http://www.gnu.org/licenses/>.
-
-#include <sysdep.h>
-
-#define res_ptr	%o0
-#define s1_ptr	%o1
-#define s2_ptr	%o2
-#define sz	%o3
-#define tmp1	%g1
-#define tmp2	%g2
-#define tmp3	%g3
-#define tmp4	%o4
-
-	.register	%g2,#scratch
-	.register	%g3,#scratch
-ENTRY(__mpn_sub_n_vis3)
-	subcc	sz, 1, sz
-	be	.Lfinal_limb
-	 cmp	%g0, 1
-
-.Lloop:
-	ldx	[s2_ptr + 0x00], tmp1
-	add	s2_ptr, 0x10, s2_ptr
-	ldx	[s1_ptr + 0x00], tmp2
-	add	s1_ptr, 0x10, s1_ptr
-	ldx	[s2_ptr - 0x08], tmp3
-	add	res_ptr, 0x10, res_ptr
-	ldx	[s1_ptr - 0x08], tmp4
-	sub	sz, 2, sz
-	xnor	tmp1, %g0, tmp1
-	addxccc	tmp1, tmp2, tmp1
-	stx	tmp1, [res_ptr - 0x10]
-	xnor	tmp3, %g0, tmp3
-	addxccc	tmp3, tmp4, tmp3
-	brgz	sz, .Lloop
-	stx	tmp3, [res_ptr - 0x08]
-
-	brlz,pt	sz, .Lfinish
-	 nop
-
-.Lfinal_limb:
-	ldx	[s2_ptr + 0x00], tmp1
-	ldx	[s1_ptr + 0x00], tmp2
-	xnor	tmp1, %g0, tmp1
-	addxccc	tmp1, tmp2, tmp1
-	stx	tmp1, [res_ptr + 0x00]
-
-.Lfinish:
-	clr	%o0
-	retl
-	 movcc	%xcc, 1, %o0
-END(__mpn_sub_n_vis3)