summaryrefslogtreecommitdiff
path: root/mpi/hppa
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>1998-05-26 13:37:59 +0000
committerWerner Koch <wk@gnupg.org>1998-05-26 13:37:59 +0000
commit525b0bc632ccfef3b5d5b5829a082f5a2b6150ff (patch)
tree5ca7ba86848678c3198daadc917de67891e81798 /mpi/hppa
parent17e97734857f1032785583d760f19d0f23a431f7 (diff)
downloadlibgcrypt-525b0bc632ccfef3b5d5b5829a082f5a2b6150ff.tar.gz
add-key works
Diffstat (limited to 'mpi/hppa')
-rw-r--r--mpi/hppa/distfiles3
-rw-r--r--mpi/hppa/mpih-lshift.S (renamed from mpi/hppa/mpih-shift.S)58
-rw-r--r--mpi/hppa/mpih-rshift.S68
3 files changed, 73 insertions, 56 deletions
diff --git a/mpi/hppa/distfiles b/mpi/hppa/distfiles
index 83c59ea6..7f24205d 100644
--- a/mpi/hppa/distfiles
+++ b/mpi/hppa/distfiles
@@ -2,5 +2,6 @@ README
udiv-qrnnd.S
mpih-add1.S
mpih-sub1.S
-mpih-shift.S
+mpih-lshift.S
+mpih-rshift.S
diff --git a/mpi/hppa/mpih-shift.S b/mpi/hppa/mpih-lshift.S
index 153fbd7f..ada09f59 100644
--- a/mpi/hppa/mpih-shift.S
+++ b/mpi/hppa/mpih-lshift.S
@@ -1,6 +1,6 @@
-/* hppa rshift, lshift
- * Copyright (C) 1992, 1994 Free Software Foundation, Inc.
- * Copyright (C) 1998 Free Software Foundation, Inc.
+/* hppa lshift
+*
+ * Copyright (C) 1992, 1994, 1998 Free Software Foundation, Inc.
*
* This file is part of GNUPG.
*
@@ -17,14 +17,6 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
- *
- * Note: This code is heavily based on the GNU MP Library.
- * Actually it's the same code with only minor changes in the
- * way the data is stored; this is to support the abstraction
- * of an optional secure memory allocation which may be used
- * to avoid revealing of sensitive data due to paging etc.
- * The GNU MP Library itself is published under the LGPL;
- * however I decided to publish this code under the plain GPL.
*/
@@ -78,47 +70,3 @@ L$0004 vshd %r22,%r0,%r20
-/*******************
- * mpi_limb_t
- * mpihelp_rshift( mpi_ptr_t wp, (gr26)
- * mpi_ptr_t up, (gr25)
- * mpi_size_t usize, (gr24)
- * unsigned cnt) (gr23)
- */
-
- .code
- .export mpihelp_rshift
-mpihelp_rshift
- .proc
- .callinfo frame=64,no_calls
- .entry
-
- ldws,ma 4(0,%r25),%r22
- mtsar %r23
- addib,= -1,%r24,L$r004
- vshd %r22,%r0,%r28 ; compute carry out limb
- ldws,ma 4(0,%r25),%r29
- addib,= -1,%r24,L$r002
- vshd %r29,%r22,%r20
-
-L$roop ldws,ma 4(0,%r25),%r22
- stws,ma %r20,4(0,%r26)
- addib,= -1,%r24,L$r003
- vshd %r22,%r29,%r20
- ldws,ma 4(0,%r25),%r29
- stws,ma %r20,4(0,%r26)
- addib,<> -1,%r24,L$roop
- vshd %r29,%r22,%r20
-
-L$r002 stws,ma %r20,4(0,%r26)
- vshd %r0,%r29,%r20
- bv 0(%r2)
- stw %r20,0(0,%r26)
-L$r003 stws,ma %r20,4(0,%r26)
-L$r004 vshd %r0,%r22,%r20
- bv 0(%r2)
- stw %r20,0(0,%r26)
-
- .exit
- .procend
-
diff --git a/mpi/hppa/mpih-rshift.S b/mpi/hppa/mpih-rshift.S
new file mode 100644
index 00000000..0299d2e2
--- /dev/null
+++ b/mpi/hppa/mpih-rshift.S
@@ -0,0 +1,68 @@
+/* hppa rshift
+*
+ * Copyright (C) 1992, 1994, 1998 Free Software Foundation, Inc.
+ *
+ * This file is part of GNUPG.
+ *
+ * GNUPG is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GNUPG 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ */
+
+
+
+
+/*******************
+ * mpi_limb_t
+ * mpihelp_rshift( mpi_ptr_t wp, (gr26)
+ * mpi_ptr_t up, (gr25)
+ * mpi_size_t usize, (gr24)
+ * unsigned cnt) (gr23)
+ */
+
+ .code
+ .export mpihelp_rshift
+mpihelp_rshift
+ .proc
+ .callinfo frame=64,no_calls
+ .entry
+
+ ldws,ma 4(0,%r25),%r22
+ mtsar %r23
+ addib,= -1,%r24,L$r004
+ vshd %r22,%r0,%r28 ; compute carry out limb
+ ldws,ma 4(0,%r25),%r29
+ addib,= -1,%r24,L$r002
+ vshd %r29,%r22,%r20
+
+L$roop ldws,ma 4(0,%r25),%r22
+ stws,ma %r20,4(0,%r26)
+ addib,= -1,%r24,L$r003
+ vshd %r22,%r29,%r20
+ ldws,ma 4(0,%r25),%r29
+ stws,ma %r20,4(0,%r26)
+ addib,<> -1,%r24,L$roop
+ vshd %r29,%r22,%r20
+
+L$r002 stws,ma %r20,4(0,%r26)
+ vshd %r0,%r29,%r20
+ bv 0(%r2)
+ stw %r20,0(0,%r26)
+L$r003 stws,ma %r20,4(0,%r26)
+L$r004 vshd %r0,%r22,%r20
+ bv 0(%r2)
+ stw %r20,0(0,%r26)
+
+ .exit
+ .procend
+