aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S
diff options
context:
space:
mode:
Diffstat (limited to 'linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S')
-rw-r--r--[-rwxr-xr-x]linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S194
1 files changed, 97 insertions, 97 deletions
diff --git a/linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S b/linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S
index 0b92453..084c109 100755..100644
--- a/linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S
+++ b/linden/indra/libgcrypt/libgcrypt-1.2.2/mpi/mips3/mpih-lshift.S
@@ -1,97 +1,97 @@
1/* mips3 lshift 1/* mips3 lshift
2 * 2 *
3 * Copyright (C) 1995, 1998, 2000, 3 * Copyright (C) 1995, 1998, 2000,
4 * 2001, 2002 Free Software Foundation, Inc. 4 * 2001, 2002 Free Software Foundation, Inc.
5 * 5 *
6 * This file is part of Libgcrypt. 6 * This file is part of Libgcrypt.
7 * 7 *
8 * Libgcrypt is free software; you can redistribute it and/or modify 8 * Libgcrypt is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License as 9 * it under the terms of the GNU Lesser General Public License as
10 * published by the Free Software Foundation; either version 2.1 of 10 * published by the Free Software Foundation; either version 2.1 of
11 * the License, or (at your option) any later version. 11 * the License, or (at your option) any later version.
12 * 12 *
13 * Libgcrypt is distributed in the hope that it will be useful, 13 * Libgcrypt is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Lesser General Public License for more details. 16 * GNU Lesser General Public License for more details.
17 * 17 *
18 * You should have received a copy of the GNU Lesser General Public 18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this program; if not, write to the Free Software 19 * License along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 20 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
21 */ 21 */
22 22
23/******************* 23/*******************
24 * mpi_limb_t 24 * mpi_limb_t
25 * _gcry_mpih_lshift( mpi_ptr_t wp, ($4) 25 * _gcry_mpih_lshift( mpi_ptr_t wp, ($4)
26 * mpi_ptr_t up, ($5) 26 * mpi_ptr_t up, ($5)
27 * mpi_size_t usize, ($6) 27 * mpi_size_t usize, ($6)
28 * unsigned cnt) ($7) 28 * unsigned cnt) ($7)
29 */ 29 */
30 30
31 .text 31 .text
32 .align 2 32 .align 2
33 .globl _gcry_mpih_lshift 33 .globl _gcry_mpih_lshift
34 .ent _gcry_mpih_lshift 34 .ent _gcry_mpih_lshift
35_gcry_mpih_lshift: 35_gcry_mpih_lshift:
36 .set noreorder 36 .set noreorder
37 .set nomacro 37 .set nomacro
38 38
39 dsll $2,$6,3 39 dsll $2,$6,3
40 daddu $5,$5,$2 # make r5 point at end of src 40 daddu $5,$5,$2 # make r5 point at end of src
41 ld $10,-8($5) # load first limb 41 ld $10,-8($5) # load first limb
42 dsubu $13,$0,$7 42 dsubu $13,$0,$7
43 daddu $4,$4,$2 # make r4 point at end of res 43 daddu $4,$4,$2 # make r4 point at end of res
44 daddiu $6,$6,-1 44 daddiu $6,$6,-1
45 and $9,$6,4-1 # number of limbs in first loop 45 and $9,$6,4-1 # number of limbs in first loop
46 beq $9,$0,.L0 # if multiple of 4 limbs, skip first loop 46 beq $9,$0,.L0 # if multiple of 4 limbs, skip first loop
47 dsrl $2,$10,$13 # compute function result 47 dsrl $2,$10,$13 # compute function result
48 48
49 dsubu $6,$6,$9 49 dsubu $6,$6,$9
50 50
51.Loop0: ld $3,-16($5) 51.Loop0: ld $3,-16($5)
52 daddiu $4,$4,-8 52 daddiu $4,$4,-8
53 daddiu $5,$5,-8 53 daddiu $5,$5,-8
54 daddiu $9,$9,-1 54 daddiu $9,$9,-1
55 dsll $11,$10,$7 55 dsll $11,$10,$7
56 dsrl $12,$3,$13 56 dsrl $12,$3,$13
57 move $10,$3 57 move $10,$3
58 or $8,$11,$12 58 or $8,$11,$12
59 bne $9,$0,.Loop0 59 bne $9,$0,.Loop0
60 sd $8,0($4) 60 sd $8,0($4)
61 61
62.L0: beq $6,$0,.Lend 62.L0: beq $6,$0,.Lend
63 nop 63 nop
64 64
65.Loop: ld $3,-16($5) 65.Loop: ld $3,-16($5)
66 daddiu $4,$4,-32 66 daddiu $4,$4,-32
67 daddiu $6,$6,-4 67 daddiu $6,$6,-4
68 dsll $11,$10,$7 68 dsll $11,$10,$7
69 dsrl $12,$3,$13 69 dsrl $12,$3,$13
70 70
71 ld $10,-24($5) 71 ld $10,-24($5)
72 dsll $14,$3,$7 72 dsll $14,$3,$7
73 or $8,$11,$12 73 or $8,$11,$12
74 sd $8,24($4) 74 sd $8,24($4)
75 dsrl $9,$10,$13 75 dsrl $9,$10,$13
76 76
77 ld $3,-32($5) 77 ld $3,-32($5)
78 dsll $11,$10,$7 78 dsll $11,$10,$7
79 or $8,$14,$9 79 or $8,$14,$9
80 sd $8,16($4) 80 sd $8,16($4)
81 dsrl $12,$3,$13 81 dsrl $12,$3,$13
82 82
83 ld $10,-40($5) 83 ld $10,-40($5)
84 dsll $14,$3,$7 84 dsll $14,$3,$7
85 or $8,$11,$12 85 or $8,$11,$12
86 sd $8,8($4) 86 sd $8,8($4)
87 dsrl $9,$10,$13 87 dsrl $9,$10,$13
88 88
89 daddiu $5,$5,-32 89 daddiu $5,$5,-32
90 or $8,$14,$9 90 or $8,$14,$9
91 bgtz $6,.Loop 91 bgtz $6,.Loop
92 sd $8,0($4) 92 sd $8,0($4)
93 93
94.Lend: dsll $8,$10,$7 94.Lend: dsll $8,$10,$7
95 j $31 95 j $31
96 sd $8,-8($4) 96 sd $8,-8($4)
97 .end _gcry_mpih_lshift 97 .end _gcry_mpih_lshift