Home | History | Annotate | Line # | Download | only in mips
      1  1.1  christos #include "mips_arch.h"
      2  1.1  christos 
      3  1.1  christos .text
      4  1.1  christos .set	noat
      5  1.1  christos #if !defined(__mips_eabi) && (!defined(__vxworks) || defined(__pic__))
      6  1.1  christos .option	pic2
      7  1.1  christos #endif
      8  1.1  christos 
      9  1.1  christos .align	5
     10  1.1  christos .globl	sha256_block_data_order
     11  1.1  christos .ent	sha256_block_data_order
     12  1.1  christos sha256_block_data_order:
     13  1.1  christos 	.frame	$29,192,$31
     14  1.1  christos 	.mask	0xc0ff0000,-8
     15  1.1  christos 	.set	noreorder
     16  1.1  christos 	dsubu $29,192
     17  1.1  christos 	sd	$31,192-1*8($29)
     18  1.1  christos 	sd	$30,192-2*8($29)
     19  1.1  christos 	sd	$23,192-3*8($29)
     20  1.1  christos 	sd	$22,192-4*8($29)
     21  1.1  christos 	sd	$21,192-5*8($29)
     22  1.1  christos 	sd	$20,192-6*8($29)
     23  1.1  christos 	sd	$19,192-7*8($29)
     24  1.1  christos 	sd	$18,192-8*8($29)
     25  1.1  christos 	sd	$17,192-9*8($29)
     26  1.1  christos 	sd	$16,192-10*8($29)
     27  1.1  christos 	dsll $23,$6,6
     28  1.1  christos 	.cplocal	$6
     29  1.1  christos 	.cpsetup	$25,$0,sha256_block_data_order
     30  1.1  christos 	.set	reorder
     31  1.1  christos 	dla	$6,K256		# PIC-ified 'load address'
     32  1.1  christos 
     33  1.1  christos 	lw	$1,0*4($4)		# load context
     34  1.1  christos 	lw	$2,1*4($4)
     35  1.1  christos 	lw	$3,2*4($4)
     36  1.1  christos 	lw	$7,3*4($4)
     37  1.1  christos 	lw	$24,4*4($4)
     38  1.1  christos 	lw	$25,5*4($4)
     39  1.1  christos 	lw	$30,6*4($4)
     40  1.1  christos 	lw	$31,7*4($4)
     41  1.1  christos 
     42  1.1  christos 	daddu $23,$5		# pointer to the end of input
     43  1.1  christos 	sd	$23,16*4($29)
     44  1.1  christos 	b	.Loop
     45  1.1  christos 
     46  1.1  christos .align	5
     47  1.1  christos .Loop:
     48  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
     49  1.1  christos 	lw	$8,($5)
     50  1.1  christos #else
     51  1.1  christos 	lwl	$8,3($5)
     52  1.1  christos 	lwr	$8,0($5)
     53  1.1  christos #endif
     54  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
     55  1.1  christos 	lw	$9,4($5)
     56  1.1  christos #else
     57  1.1  christos 	lwl	$9,7($5)
     58  1.1  christos 	lwr	$9,4($5)
     59  1.1  christos #endif
     60  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
     61  1.1  christos 	wsbh	$8,$8		# byte swap(0)
     62  1.1  christos 	rotr	$8,$8,16
     63  1.1  christos #else
     64  1.1  christos 	srl	$13,$8,24		# byte swap(0)
     65  1.1  christos 	srl	$14,$8,8
     66  1.1  christos 	andi	$15,$8,0xFF00
     67  1.1  christos 	sll	$8,$8,24
     68  1.1  christos 	andi	$14,0xFF00
     69  1.1  christos 	sll	$15,$15,8
     70  1.1  christos 	or	$8,$13
     71  1.1  christos 	or	$14,$15
     72  1.1  christos 	or	$8,$14
     73  1.1  christos #endif
     74  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
     75  1.1  christos 	xor	$15,$25,$30			# 0
     76  1.1  christos 	rotr	$13,$24,6
     77  1.1  christos 	addu	$12,$8,$31
     78  1.1  christos 	rotr	$14,$24,11
     79  1.1  christos 	and	$15,$24
     80  1.1  christos 	rotr	$31,$24,25
     81  1.1  christos 	xor	$13,$14
     82  1.1  christos 	rotr	$14,$1,2
     83  1.1  christos 	xor	$15,$30			# Ch(e,f,g)
     84  1.1  christos 	xor	$13,$31			# Sigma1(e)
     85  1.1  christos 
     86  1.1  christos 	rotr	$31,$1,13
     87  1.1  christos 	addu	$12,$15
     88  1.1  christos 	lw	$15,0($6)		# K[0]
     89  1.1  christos 	xor	$31,$14
     90  1.1  christos 	rotr	$14,$1,22
     91  1.1  christos 	addu	$12,$13
     92  1.1  christos 	and	$13,$2,$3
     93  1.1  christos 	xor	$31,$14			# Sigma0(a)
     94  1.1  christos 	xor	$14,$2,$3
     95  1.1  christos #else
     96  1.1  christos 	addu	$12,$8,$31			# 0
     97  1.1  christos 	srl	$31,$24,6
     98  1.1  christos 	xor	$15,$25,$30
     99  1.1  christos 	sll	$14,$24,7
    100  1.1  christos 	and	$15,$24
    101  1.1  christos 	srl	$13,$24,11
    102  1.1  christos 	xor	$31,$14
    103  1.1  christos 	sll	$14,$24,21
    104  1.1  christos 	xor	$31,$13
    105  1.1  christos 	srl	$13,$24,25
    106  1.1  christos 	xor	$31,$14
    107  1.1  christos 	sll	$14,$24,26
    108  1.1  christos 	xor	$31,$13
    109  1.1  christos 	xor	$15,$30			# Ch(e,f,g)
    110  1.1  christos 	xor	$13,$14,$31			# Sigma1(e)
    111  1.1  christos 
    112  1.1  christos 	srl	$31,$1,2
    113  1.1  christos 	addu	$12,$15
    114  1.1  christos 	lw	$15,0($6)		# K[0]
    115  1.1  christos 	sll	$14,$1,10
    116  1.1  christos 	addu	$12,$13
    117  1.1  christos 	srl	$13,$1,13
    118  1.1  christos 	xor	$31,$14
    119  1.1  christos 	sll	$14,$1,19
    120  1.1  christos 	xor	$31,$13
    121  1.1  christos 	srl	$13,$1,22
    122  1.1  christos 	xor	$31,$14
    123  1.1  christos 	sll	$14,$1,30
    124  1.1  christos 	xor	$31,$13
    125  1.1  christos 	and	$13,$2,$3
    126  1.1  christos 	xor	$31,$14			# Sigma0(a)
    127  1.1  christos 	xor	$14,$2,$3
    128  1.1  christos #endif
    129  1.1  christos 	sw	$8,0($29)	# offload to ring buffer
    130  1.1  christos 	addu	$31,$13
    131  1.1  christos 	and	$14,$1
    132  1.1  christos 	addu	$12,$15			# +=K[0]
    133  1.1  christos 	addu	$31,$14			# +=Maj(a,b,c)
    134  1.1  christos 	addu	$7,$12
    135  1.1  christos 	addu	$31,$12
    136  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    137  1.1  christos 	lw	$10,8($5)
    138  1.1  christos #else
    139  1.1  christos 	lwl	$10,11($5)
    140  1.1  christos 	lwr	$10,8($5)
    141  1.1  christos #endif
    142  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    143  1.1  christos 	wsbh	$9,$9		# byte swap(1)
    144  1.1  christos 	rotr	$9,$9,16
    145  1.1  christos #else
    146  1.1  christos 	srl	$14,$9,24		# byte swap(1)
    147  1.1  christos 	srl	$15,$9,8
    148  1.1  christos 	andi	$16,$9,0xFF00
    149  1.1  christos 	sll	$9,$9,24
    150  1.1  christos 	andi	$15,0xFF00
    151  1.1  christos 	sll	$16,$16,8
    152  1.1  christos 	or	$9,$14
    153  1.1  christos 	or	$15,$16
    154  1.1  christos 	or	$9,$15
    155  1.1  christos #endif
    156  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    157  1.1  christos 	xor	$16,$24,$25			# 1
    158  1.1  christos 	rotr	$14,$7,6
    159  1.1  christos 	addu	$13,$9,$30
    160  1.1  christos 	rotr	$15,$7,11
    161  1.1  christos 	and	$16,$7
    162  1.1  christos 	rotr	$30,$7,25
    163  1.1  christos 	xor	$14,$15
    164  1.1  christos 	rotr	$15,$31,2
    165  1.1  christos 	xor	$16,$25			# Ch(e,f,g)
    166  1.1  christos 	xor	$14,$30			# Sigma1(e)
    167  1.1  christos 
    168  1.1  christos 	rotr	$30,$31,13
    169  1.1  christos 	addu	$13,$16
    170  1.1  christos 	lw	$16,4($6)		# K[1]
    171  1.1  christos 	xor	$30,$15
    172  1.1  christos 	rotr	$15,$31,22
    173  1.1  christos 	addu	$13,$14
    174  1.1  christos 	and	$14,$1,$2
    175  1.1  christos 	xor	$30,$15			# Sigma0(a)
    176  1.1  christos 	xor	$15,$1,$2
    177  1.1  christos #else
    178  1.1  christos 	addu	$13,$9,$30			# 1
    179  1.1  christos 	srl	$30,$7,6
    180  1.1  christos 	xor	$16,$24,$25
    181  1.1  christos 	sll	$15,$7,7
    182  1.1  christos 	and	$16,$7
    183  1.1  christos 	srl	$14,$7,11
    184  1.1  christos 	xor	$30,$15
    185  1.1  christos 	sll	$15,$7,21
    186  1.1  christos 	xor	$30,$14
    187  1.1  christos 	srl	$14,$7,25
    188  1.1  christos 	xor	$30,$15
    189  1.1  christos 	sll	$15,$7,26
    190  1.1  christos 	xor	$30,$14
    191  1.1  christos 	xor	$16,$25			# Ch(e,f,g)
    192  1.1  christos 	xor	$14,$15,$30			# Sigma1(e)
    193  1.1  christos 
    194  1.1  christos 	srl	$30,$31,2
    195  1.1  christos 	addu	$13,$16
    196  1.1  christos 	lw	$16,4($6)		# K[1]
    197  1.1  christos 	sll	$15,$31,10
    198  1.1  christos 	addu	$13,$14
    199  1.1  christos 	srl	$14,$31,13
    200  1.1  christos 	xor	$30,$15
    201  1.1  christos 	sll	$15,$31,19
    202  1.1  christos 	xor	$30,$14
    203  1.1  christos 	srl	$14,$31,22
    204  1.1  christos 	xor	$30,$15
    205  1.1  christos 	sll	$15,$31,30
    206  1.1  christos 	xor	$30,$14
    207  1.1  christos 	and	$14,$1,$2
    208  1.1  christos 	xor	$30,$15			# Sigma0(a)
    209  1.1  christos 	xor	$15,$1,$2
    210  1.1  christos #endif
    211  1.1  christos 	sw	$9,4($29)	# offload to ring buffer
    212  1.1  christos 	addu	$30,$14
    213  1.1  christos 	and	$15,$31
    214  1.1  christos 	addu	$13,$16			# +=K[1]
    215  1.1  christos 	addu	$30,$15			# +=Maj(a,b,c)
    216  1.1  christos 	addu	$3,$13
    217  1.1  christos 	addu	$30,$13
    218  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    219  1.1  christos 	lw	$11,12($5)
    220  1.1  christos #else
    221  1.1  christos 	lwl	$11,15($5)
    222  1.1  christos 	lwr	$11,12($5)
    223  1.1  christos #endif
    224  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    225  1.1  christos 	wsbh	$10,$10		# byte swap(2)
    226  1.1  christos 	rotr	$10,$10,16
    227  1.1  christos #else
    228  1.1  christos 	srl	$15,$10,24		# byte swap(2)
    229  1.1  christos 	srl	$16,$10,8
    230  1.1  christos 	andi	$17,$10,0xFF00
    231  1.1  christos 	sll	$10,$10,24
    232  1.1  christos 	andi	$16,0xFF00
    233  1.1  christos 	sll	$17,$17,8
    234  1.1  christos 	or	$10,$15
    235  1.1  christos 	or	$16,$17
    236  1.1  christos 	or	$10,$16
    237  1.1  christos #endif
    238  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    239  1.1  christos 	xor	$17,$7,$24			# 2
    240  1.1  christos 	rotr	$15,$3,6
    241  1.1  christos 	addu	$14,$10,$25
    242  1.1  christos 	rotr	$16,$3,11
    243  1.1  christos 	and	$17,$3
    244  1.1  christos 	rotr	$25,$3,25
    245  1.1  christos 	xor	$15,$16
    246  1.1  christos 	rotr	$16,$30,2
    247  1.1  christos 	xor	$17,$24			# Ch(e,f,g)
    248  1.1  christos 	xor	$15,$25			# Sigma1(e)
    249  1.1  christos 
    250  1.1  christos 	rotr	$25,$30,13
    251  1.1  christos 	addu	$14,$17
    252  1.1  christos 	lw	$17,8($6)		# K[2]
    253  1.1  christos 	xor	$25,$16
    254  1.1  christos 	rotr	$16,$30,22
    255  1.1  christos 	addu	$14,$15
    256  1.1  christos 	and	$15,$31,$1
    257  1.1  christos 	xor	$25,$16			# Sigma0(a)
    258  1.1  christos 	xor	$16,$31,$1
    259  1.1  christos #else
    260  1.1  christos 	addu	$14,$10,$25			# 2
    261  1.1  christos 	srl	$25,$3,6
    262  1.1  christos 	xor	$17,$7,$24
    263  1.1  christos 	sll	$16,$3,7
    264  1.1  christos 	and	$17,$3
    265  1.1  christos 	srl	$15,$3,11
    266  1.1  christos 	xor	$25,$16
    267  1.1  christos 	sll	$16,$3,21
    268  1.1  christos 	xor	$25,$15
    269  1.1  christos 	srl	$15,$3,25
    270  1.1  christos 	xor	$25,$16
    271  1.1  christos 	sll	$16,$3,26
    272  1.1  christos 	xor	$25,$15
    273  1.1  christos 	xor	$17,$24			# Ch(e,f,g)
    274  1.1  christos 	xor	$15,$16,$25			# Sigma1(e)
    275  1.1  christos 
    276  1.1  christos 	srl	$25,$30,2
    277  1.1  christos 	addu	$14,$17
    278  1.1  christos 	lw	$17,8($6)		# K[2]
    279  1.1  christos 	sll	$16,$30,10
    280  1.1  christos 	addu	$14,$15
    281  1.1  christos 	srl	$15,$30,13
    282  1.1  christos 	xor	$25,$16
    283  1.1  christos 	sll	$16,$30,19
    284  1.1  christos 	xor	$25,$15
    285  1.1  christos 	srl	$15,$30,22
    286  1.1  christos 	xor	$25,$16
    287  1.1  christos 	sll	$16,$30,30
    288  1.1  christos 	xor	$25,$15
    289  1.1  christos 	and	$15,$31,$1
    290  1.1  christos 	xor	$25,$16			# Sigma0(a)
    291  1.1  christos 	xor	$16,$31,$1
    292  1.1  christos #endif
    293  1.1  christos 	sw	$10,8($29)	# offload to ring buffer
    294  1.1  christos 	addu	$25,$15
    295  1.1  christos 	and	$16,$30
    296  1.1  christos 	addu	$14,$17			# +=K[2]
    297  1.1  christos 	addu	$25,$16			# +=Maj(a,b,c)
    298  1.1  christos 	addu	$2,$14
    299  1.1  christos 	addu	$25,$14
    300  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    301  1.1  christos 	lw	$12,16($5)
    302  1.1  christos #else
    303  1.1  christos 	lwl	$12,19($5)
    304  1.1  christos 	lwr	$12,16($5)
    305  1.1  christos #endif
    306  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    307  1.1  christos 	wsbh	$11,$11		# byte swap(3)
    308  1.1  christos 	rotr	$11,$11,16
    309  1.1  christos #else
    310  1.1  christos 	srl	$16,$11,24		# byte swap(3)
    311  1.1  christos 	srl	$17,$11,8
    312  1.1  christos 	andi	$18,$11,0xFF00
    313  1.1  christos 	sll	$11,$11,24
    314  1.1  christos 	andi	$17,0xFF00
    315  1.1  christos 	sll	$18,$18,8
    316  1.1  christos 	or	$11,$16
    317  1.1  christos 	or	$17,$18
    318  1.1  christos 	or	$11,$17
    319  1.1  christos #endif
    320  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    321  1.1  christos 	xor	$18,$3,$7			# 3
    322  1.1  christos 	rotr	$16,$2,6
    323  1.1  christos 	addu	$15,$11,$24
    324  1.1  christos 	rotr	$17,$2,11
    325  1.1  christos 	and	$18,$2
    326  1.1  christos 	rotr	$24,$2,25
    327  1.1  christos 	xor	$16,$17
    328  1.1  christos 	rotr	$17,$25,2
    329  1.1  christos 	xor	$18,$7			# Ch(e,f,g)
    330  1.1  christos 	xor	$16,$24			# Sigma1(e)
    331  1.1  christos 
    332  1.1  christos 	rotr	$24,$25,13
    333  1.1  christos 	addu	$15,$18
    334  1.1  christos 	lw	$18,12($6)		# K[3]
    335  1.1  christos 	xor	$24,$17
    336  1.1  christos 	rotr	$17,$25,22
    337  1.1  christos 	addu	$15,$16
    338  1.1  christos 	and	$16,$30,$31
    339  1.1  christos 	xor	$24,$17			# Sigma0(a)
    340  1.1  christos 	xor	$17,$30,$31
    341  1.1  christos #else
    342  1.1  christos 	addu	$15,$11,$24			# 3
    343  1.1  christos 	srl	$24,$2,6
    344  1.1  christos 	xor	$18,$3,$7
    345  1.1  christos 	sll	$17,$2,7
    346  1.1  christos 	and	$18,$2
    347  1.1  christos 	srl	$16,$2,11
    348  1.1  christos 	xor	$24,$17
    349  1.1  christos 	sll	$17,$2,21
    350  1.1  christos 	xor	$24,$16
    351  1.1  christos 	srl	$16,$2,25
    352  1.1  christos 	xor	$24,$17
    353  1.1  christos 	sll	$17,$2,26
    354  1.1  christos 	xor	$24,$16
    355  1.1  christos 	xor	$18,$7			# Ch(e,f,g)
    356  1.1  christos 	xor	$16,$17,$24			# Sigma1(e)
    357  1.1  christos 
    358  1.1  christos 	srl	$24,$25,2
    359  1.1  christos 	addu	$15,$18
    360  1.1  christos 	lw	$18,12($6)		# K[3]
    361  1.1  christos 	sll	$17,$25,10
    362  1.1  christos 	addu	$15,$16
    363  1.1  christos 	srl	$16,$25,13
    364  1.1  christos 	xor	$24,$17
    365  1.1  christos 	sll	$17,$25,19
    366  1.1  christos 	xor	$24,$16
    367  1.1  christos 	srl	$16,$25,22
    368  1.1  christos 	xor	$24,$17
    369  1.1  christos 	sll	$17,$25,30
    370  1.1  christos 	xor	$24,$16
    371  1.1  christos 	and	$16,$30,$31
    372  1.1  christos 	xor	$24,$17			# Sigma0(a)
    373  1.1  christos 	xor	$17,$30,$31
    374  1.1  christos #endif
    375  1.1  christos 	sw	$11,12($29)	# offload to ring buffer
    376  1.1  christos 	addu	$24,$16
    377  1.1  christos 	and	$17,$25
    378  1.1  christos 	addu	$15,$18			# +=K[3]
    379  1.1  christos 	addu	$24,$17			# +=Maj(a,b,c)
    380  1.1  christos 	addu	$1,$15
    381  1.1  christos 	addu	$24,$15
    382  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    383  1.1  christos 	lw	$13,20($5)
    384  1.1  christos #else
    385  1.1  christos 	lwl	$13,23($5)
    386  1.1  christos 	lwr	$13,20($5)
    387  1.1  christos #endif
    388  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    389  1.1  christos 	wsbh	$12,$12		# byte swap(4)
    390  1.1  christos 	rotr	$12,$12,16
    391  1.1  christos #else
    392  1.1  christos 	srl	$17,$12,24		# byte swap(4)
    393  1.1  christos 	srl	$18,$12,8
    394  1.1  christos 	andi	$19,$12,0xFF00
    395  1.1  christos 	sll	$12,$12,24
    396  1.1  christos 	andi	$18,0xFF00
    397  1.1  christos 	sll	$19,$19,8
    398  1.1  christos 	or	$12,$17
    399  1.1  christos 	or	$18,$19
    400  1.1  christos 	or	$12,$18
    401  1.1  christos #endif
    402  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    403  1.1  christos 	xor	$19,$2,$3			# 4
    404  1.1  christos 	rotr	$17,$1,6
    405  1.1  christos 	addu	$16,$12,$7
    406  1.1  christos 	rotr	$18,$1,11
    407  1.1  christos 	and	$19,$1
    408  1.1  christos 	rotr	$7,$1,25
    409  1.1  christos 	xor	$17,$18
    410  1.1  christos 	rotr	$18,$24,2
    411  1.1  christos 	xor	$19,$3			# Ch(e,f,g)
    412  1.1  christos 	xor	$17,$7			# Sigma1(e)
    413  1.1  christos 
    414  1.1  christos 	rotr	$7,$24,13
    415  1.1  christos 	addu	$16,$19
    416  1.1  christos 	lw	$19,16($6)		# K[4]
    417  1.1  christos 	xor	$7,$18
    418  1.1  christos 	rotr	$18,$24,22
    419  1.1  christos 	addu	$16,$17
    420  1.1  christos 	and	$17,$25,$30
    421  1.1  christos 	xor	$7,$18			# Sigma0(a)
    422  1.1  christos 	xor	$18,$25,$30
    423  1.1  christos #else
    424  1.1  christos 	addu	$16,$12,$7			# 4
    425  1.1  christos 	srl	$7,$1,6
    426  1.1  christos 	xor	$19,$2,$3
    427  1.1  christos 	sll	$18,$1,7
    428  1.1  christos 	and	$19,$1
    429  1.1  christos 	srl	$17,$1,11
    430  1.1  christos 	xor	$7,$18
    431  1.1  christos 	sll	$18,$1,21
    432  1.1  christos 	xor	$7,$17
    433  1.1  christos 	srl	$17,$1,25
    434  1.1  christos 	xor	$7,$18
    435  1.1  christos 	sll	$18,$1,26
    436  1.1  christos 	xor	$7,$17
    437  1.1  christos 	xor	$19,$3			# Ch(e,f,g)
    438  1.1  christos 	xor	$17,$18,$7			# Sigma1(e)
    439  1.1  christos 
    440  1.1  christos 	srl	$7,$24,2
    441  1.1  christos 	addu	$16,$19
    442  1.1  christos 	lw	$19,16($6)		# K[4]
    443  1.1  christos 	sll	$18,$24,10
    444  1.1  christos 	addu	$16,$17
    445  1.1  christos 	srl	$17,$24,13
    446  1.1  christos 	xor	$7,$18
    447  1.1  christos 	sll	$18,$24,19
    448  1.1  christos 	xor	$7,$17
    449  1.1  christos 	srl	$17,$24,22
    450  1.1  christos 	xor	$7,$18
    451  1.1  christos 	sll	$18,$24,30
    452  1.1  christos 	xor	$7,$17
    453  1.1  christos 	and	$17,$25,$30
    454  1.1  christos 	xor	$7,$18			# Sigma0(a)
    455  1.1  christos 	xor	$18,$25,$30
    456  1.1  christos #endif
    457  1.1  christos 	sw	$12,16($29)	# offload to ring buffer
    458  1.1  christos 	addu	$7,$17
    459  1.1  christos 	and	$18,$24
    460  1.1  christos 	addu	$16,$19			# +=K[4]
    461  1.1  christos 	addu	$7,$18			# +=Maj(a,b,c)
    462  1.1  christos 	addu	$31,$16
    463  1.1  christos 	addu	$7,$16
    464  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    465  1.1  christos 	lw	$14,24($5)
    466  1.1  christos #else
    467  1.1  christos 	lwl	$14,27($5)
    468  1.1  christos 	lwr	$14,24($5)
    469  1.1  christos #endif
    470  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    471  1.1  christos 	wsbh	$13,$13		# byte swap(5)
    472  1.1  christos 	rotr	$13,$13,16
    473  1.1  christos #else
    474  1.1  christos 	srl	$18,$13,24		# byte swap(5)
    475  1.1  christos 	srl	$19,$13,8
    476  1.1  christos 	andi	$20,$13,0xFF00
    477  1.1  christos 	sll	$13,$13,24
    478  1.1  christos 	andi	$19,0xFF00
    479  1.1  christos 	sll	$20,$20,8
    480  1.1  christos 	or	$13,$18
    481  1.1  christos 	or	$19,$20
    482  1.1  christos 	or	$13,$19
    483  1.1  christos #endif
    484  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    485  1.1  christos 	xor	$20,$1,$2			# 5
    486  1.1  christos 	rotr	$18,$31,6
    487  1.1  christos 	addu	$17,$13,$3
    488  1.1  christos 	rotr	$19,$31,11
    489  1.1  christos 	and	$20,$31
    490  1.1  christos 	rotr	$3,$31,25
    491  1.1  christos 	xor	$18,$19
    492  1.1  christos 	rotr	$19,$7,2
    493  1.1  christos 	xor	$20,$2			# Ch(e,f,g)
    494  1.1  christos 	xor	$18,$3			# Sigma1(e)
    495  1.1  christos 
    496  1.1  christos 	rotr	$3,$7,13
    497  1.1  christos 	addu	$17,$20
    498  1.1  christos 	lw	$20,20($6)		# K[5]
    499  1.1  christos 	xor	$3,$19
    500  1.1  christos 	rotr	$19,$7,22
    501  1.1  christos 	addu	$17,$18
    502  1.1  christos 	and	$18,$24,$25
    503  1.1  christos 	xor	$3,$19			# Sigma0(a)
    504  1.1  christos 	xor	$19,$24,$25
    505  1.1  christos #else
    506  1.1  christos 	addu	$17,$13,$3			# 5
    507  1.1  christos 	srl	$3,$31,6
    508  1.1  christos 	xor	$20,$1,$2
    509  1.1  christos 	sll	$19,$31,7
    510  1.1  christos 	and	$20,$31
    511  1.1  christos 	srl	$18,$31,11
    512  1.1  christos 	xor	$3,$19
    513  1.1  christos 	sll	$19,$31,21
    514  1.1  christos 	xor	$3,$18
    515  1.1  christos 	srl	$18,$31,25
    516  1.1  christos 	xor	$3,$19
    517  1.1  christos 	sll	$19,$31,26
    518  1.1  christos 	xor	$3,$18
    519  1.1  christos 	xor	$20,$2			# Ch(e,f,g)
    520  1.1  christos 	xor	$18,$19,$3			# Sigma1(e)
    521  1.1  christos 
    522  1.1  christos 	srl	$3,$7,2
    523  1.1  christos 	addu	$17,$20
    524  1.1  christos 	lw	$20,20($6)		# K[5]
    525  1.1  christos 	sll	$19,$7,10
    526  1.1  christos 	addu	$17,$18
    527  1.1  christos 	srl	$18,$7,13
    528  1.1  christos 	xor	$3,$19
    529  1.1  christos 	sll	$19,$7,19
    530  1.1  christos 	xor	$3,$18
    531  1.1  christos 	srl	$18,$7,22
    532  1.1  christos 	xor	$3,$19
    533  1.1  christos 	sll	$19,$7,30
    534  1.1  christos 	xor	$3,$18
    535  1.1  christos 	and	$18,$24,$25
    536  1.1  christos 	xor	$3,$19			# Sigma0(a)
    537  1.1  christos 	xor	$19,$24,$25
    538  1.1  christos #endif
    539  1.1  christos 	sw	$13,20($29)	# offload to ring buffer
    540  1.1  christos 	addu	$3,$18
    541  1.1  christos 	and	$19,$7
    542  1.1  christos 	addu	$17,$20			# +=K[5]
    543  1.1  christos 	addu	$3,$19			# +=Maj(a,b,c)
    544  1.1  christos 	addu	$30,$17
    545  1.1  christos 	addu	$3,$17
    546  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    547  1.1  christos 	lw	$15,28($5)
    548  1.1  christos #else
    549  1.1  christos 	lwl	$15,31($5)
    550  1.1  christos 	lwr	$15,28($5)
    551  1.1  christos #endif
    552  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    553  1.1  christos 	wsbh	$14,$14		# byte swap(6)
    554  1.1  christos 	rotr	$14,$14,16
    555  1.1  christos #else
    556  1.1  christos 	srl	$19,$14,24		# byte swap(6)
    557  1.1  christos 	srl	$20,$14,8
    558  1.1  christos 	andi	$21,$14,0xFF00
    559  1.1  christos 	sll	$14,$14,24
    560  1.1  christos 	andi	$20,0xFF00
    561  1.1  christos 	sll	$21,$21,8
    562  1.1  christos 	or	$14,$19
    563  1.1  christos 	or	$20,$21
    564  1.1  christos 	or	$14,$20
    565  1.1  christos #endif
    566  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    567  1.1  christos 	xor	$21,$31,$1			# 6
    568  1.1  christos 	rotr	$19,$30,6
    569  1.1  christos 	addu	$18,$14,$2
    570  1.1  christos 	rotr	$20,$30,11
    571  1.1  christos 	and	$21,$30
    572  1.1  christos 	rotr	$2,$30,25
    573  1.1  christos 	xor	$19,$20
    574  1.1  christos 	rotr	$20,$3,2
    575  1.1  christos 	xor	$21,$1			# Ch(e,f,g)
    576  1.1  christos 	xor	$19,$2			# Sigma1(e)
    577  1.1  christos 
    578  1.1  christos 	rotr	$2,$3,13
    579  1.1  christos 	addu	$18,$21
    580  1.1  christos 	lw	$21,24($6)		# K[6]
    581  1.1  christos 	xor	$2,$20
    582  1.1  christos 	rotr	$20,$3,22
    583  1.1  christos 	addu	$18,$19
    584  1.1  christos 	and	$19,$7,$24
    585  1.1  christos 	xor	$2,$20			# Sigma0(a)
    586  1.1  christos 	xor	$20,$7,$24
    587  1.1  christos #else
    588  1.1  christos 	addu	$18,$14,$2			# 6
    589  1.1  christos 	srl	$2,$30,6
    590  1.1  christos 	xor	$21,$31,$1
    591  1.1  christos 	sll	$20,$30,7
    592  1.1  christos 	and	$21,$30
    593  1.1  christos 	srl	$19,$30,11
    594  1.1  christos 	xor	$2,$20
    595  1.1  christos 	sll	$20,$30,21
    596  1.1  christos 	xor	$2,$19
    597  1.1  christos 	srl	$19,$30,25
    598  1.1  christos 	xor	$2,$20
    599  1.1  christos 	sll	$20,$30,26
    600  1.1  christos 	xor	$2,$19
    601  1.1  christos 	xor	$21,$1			# Ch(e,f,g)
    602  1.1  christos 	xor	$19,$20,$2			# Sigma1(e)
    603  1.1  christos 
    604  1.1  christos 	srl	$2,$3,2
    605  1.1  christos 	addu	$18,$21
    606  1.1  christos 	lw	$21,24($6)		# K[6]
    607  1.1  christos 	sll	$20,$3,10
    608  1.1  christos 	addu	$18,$19
    609  1.1  christos 	srl	$19,$3,13
    610  1.1  christos 	xor	$2,$20
    611  1.1  christos 	sll	$20,$3,19
    612  1.1  christos 	xor	$2,$19
    613  1.1  christos 	srl	$19,$3,22
    614  1.1  christos 	xor	$2,$20
    615  1.1  christos 	sll	$20,$3,30
    616  1.1  christos 	xor	$2,$19
    617  1.1  christos 	and	$19,$7,$24
    618  1.1  christos 	xor	$2,$20			# Sigma0(a)
    619  1.1  christos 	xor	$20,$7,$24
    620  1.1  christos #endif
    621  1.1  christos 	sw	$14,24($29)	# offload to ring buffer
    622  1.1  christos 	addu	$2,$19
    623  1.1  christos 	and	$20,$3
    624  1.1  christos 	addu	$18,$21			# +=K[6]
    625  1.1  christos 	addu	$2,$20			# +=Maj(a,b,c)
    626  1.1  christos 	addu	$25,$18
    627  1.1  christos 	addu	$2,$18
    628  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    629  1.1  christos 	lw	$16,32($5)
    630  1.1  christos #else
    631  1.1  christos 	lwl	$16,35($5)
    632  1.1  christos 	lwr	$16,32($5)
    633  1.1  christos #endif
    634  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    635  1.1  christos 	wsbh	$15,$15		# byte swap(7)
    636  1.1  christos 	rotr	$15,$15,16
    637  1.1  christos #else
    638  1.1  christos 	srl	$20,$15,24		# byte swap(7)
    639  1.1  christos 	srl	$21,$15,8
    640  1.1  christos 	andi	$22,$15,0xFF00
    641  1.1  christos 	sll	$15,$15,24
    642  1.1  christos 	andi	$21,0xFF00
    643  1.1  christos 	sll	$22,$22,8
    644  1.1  christos 	or	$15,$20
    645  1.1  christos 	or	$21,$22
    646  1.1  christos 	or	$15,$21
    647  1.1  christos #endif
    648  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    649  1.1  christos 	xor	$22,$30,$31			# 7
    650  1.1  christos 	rotr	$20,$25,6
    651  1.1  christos 	addu	$19,$15,$1
    652  1.1  christos 	rotr	$21,$25,11
    653  1.1  christos 	and	$22,$25
    654  1.1  christos 	rotr	$1,$25,25
    655  1.1  christos 	xor	$20,$21
    656  1.1  christos 	rotr	$21,$2,2
    657  1.1  christos 	xor	$22,$31			# Ch(e,f,g)
    658  1.1  christos 	xor	$20,$1			# Sigma1(e)
    659  1.1  christos 
    660  1.1  christos 	rotr	$1,$2,13
    661  1.1  christos 	addu	$19,$22
    662  1.1  christos 	lw	$22,28($6)		# K[7]
    663  1.1  christos 	xor	$1,$21
    664  1.1  christos 	rotr	$21,$2,22
    665  1.1  christos 	addu	$19,$20
    666  1.1  christos 	and	$20,$3,$7
    667  1.1  christos 	xor	$1,$21			# Sigma0(a)
    668  1.1  christos 	xor	$21,$3,$7
    669  1.1  christos #else
    670  1.1  christos 	addu	$19,$15,$1			# 7
    671  1.1  christos 	srl	$1,$25,6
    672  1.1  christos 	xor	$22,$30,$31
    673  1.1  christos 	sll	$21,$25,7
    674  1.1  christos 	and	$22,$25
    675  1.1  christos 	srl	$20,$25,11
    676  1.1  christos 	xor	$1,$21
    677  1.1  christos 	sll	$21,$25,21
    678  1.1  christos 	xor	$1,$20
    679  1.1  christos 	srl	$20,$25,25
    680  1.1  christos 	xor	$1,$21
    681  1.1  christos 	sll	$21,$25,26
    682  1.1  christos 	xor	$1,$20
    683  1.1  christos 	xor	$22,$31			# Ch(e,f,g)
    684  1.1  christos 	xor	$20,$21,$1			# Sigma1(e)
    685  1.1  christos 
    686  1.1  christos 	srl	$1,$2,2
    687  1.1  christos 	addu	$19,$22
    688  1.1  christos 	lw	$22,28($6)		# K[7]
    689  1.1  christos 	sll	$21,$2,10
    690  1.1  christos 	addu	$19,$20
    691  1.1  christos 	srl	$20,$2,13
    692  1.1  christos 	xor	$1,$21
    693  1.1  christos 	sll	$21,$2,19
    694  1.1  christos 	xor	$1,$20
    695  1.1  christos 	srl	$20,$2,22
    696  1.1  christos 	xor	$1,$21
    697  1.1  christos 	sll	$21,$2,30
    698  1.1  christos 	xor	$1,$20
    699  1.1  christos 	and	$20,$3,$7
    700  1.1  christos 	xor	$1,$21			# Sigma0(a)
    701  1.1  christos 	xor	$21,$3,$7
    702  1.1  christos #endif
    703  1.1  christos 	sw	$15,28($29)	# offload to ring buffer
    704  1.1  christos 	addu	$1,$20
    705  1.1  christos 	and	$21,$2
    706  1.1  christos 	addu	$19,$22			# +=K[7]
    707  1.1  christos 	addu	$1,$21			# +=Maj(a,b,c)
    708  1.1  christos 	addu	$24,$19
    709  1.1  christos 	addu	$1,$19
    710  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    711  1.1  christos 	lw	$17,36($5)
    712  1.1  christos #else
    713  1.1  christos 	lwl	$17,39($5)
    714  1.1  christos 	lwr	$17,36($5)
    715  1.1  christos #endif
    716  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    717  1.1  christos 	wsbh	$16,$16		# byte swap(8)
    718  1.1  christos 	rotr	$16,$16,16
    719  1.1  christos #else
    720  1.1  christos 	srl	$21,$16,24		# byte swap(8)
    721  1.1  christos 	srl	$22,$16,8
    722  1.1  christos 	andi	$23,$16,0xFF00
    723  1.1  christos 	sll	$16,$16,24
    724  1.1  christos 	andi	$22,0xFF00
    725  1.1  christos 	sll	$23,$23,8
    726  1.1  christos 	or	$16,$21
    727  1.1  christos 	or	$22,$23
    728  1.1  christos 	or	$16,$22
    729  1.1  christos #endif
    730  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    731  1.1  christos 	xor	$23,$25,$30			# 8
    732  1.1  christos 	rotr	$21,$24,6
    733  1.1  christos 	addu	$20,$16,$31
    734  1.1  christos 	rotr	$22,$24,11
    735  1.1  christos 	and	$23,$24
    736  1.1  christos 	rotr	$31,$24,25
    737  1.1  christos 	xor	$21,$22
    738  1.1  christos 	rotr	$22,$1,2
    739  1.1  christos 	xor	$23,$30			# Ch(e,f,g)
    740  1.1  christos 	xor	$21,$31			# Sigma1(e)
    741  1.1  christos 
    742  1.1  christos 	rotr	$31,$1,13
    743  1.1  christos 	addu	$20,$23
    744  1.1  christos 	lw	$23,32($6)		# K[8]
    745  1.1  christos 	xor	$31,$22
    746  1.1  christos 	rotr	$22,$1,22
    747  1.1  christos 	addu	$20,$21
    748  1.1  christos 	and	$21,$2,$3
    749  1.1  christos 	xor	$31,$22			# Sigma0(a)
    750  1.1  christos 	xor	$22,$2,$3
    751  1.1  christos #else
    752  1.1  christos 	addu	$20,$16,$31			# 8
    753  1.1  christos 	srl	$31,$24,6
    754  1.1  christos 	xor	$23,$25,$30
    755  1.1  christos 	sll	$22,$24,7
    756  1.1  christos 	and	$23,$24
    757  1.1  christos 	srl	$21,$24,11
    758  1.1  christos 	xor	$31,$22
    759  1.1  christos 	sll	$22,$24,21
    760  1.1  christos 	xor	$31,$21
    761  1.1  christos 	srl	$21,$24,25
    762  1.1  christos 	xor	$31,$22
    763  1.1  christos 	sll	$22,$24,26
    764  1.1  christos 	xor	$31,$21
    765  1.1  christos 	xor	$23,$30			# Ch(e,f,g)
    766  1.1  christos 	xor	$21,$22,$31			# Sigma1(e)
    767  1.1  christos 
    768  1.1  christos 	srl	$31,$1,2
    769  1.1  christos 	addu	$20,$23
    770  1.1  christos 	lw	$23,32($6)		# K[8]
    771  1.1  christos 	sll	$22,$1,10
    772  1.1  christos 	addu	$20,$21
    773  1.1  christos 	srl	$21,$1,13
    774  1.1  christos 	xor	$31,$22
    775  1.1  christos 	sll	$22,$1,19
    776  1.1  christos 	xor	$31,$21
    777  1.1  christos 	srl	$21,$1,22
    778  1.1  christos 	xor	$31,$22
    779  1.1  christos 	sll	$22,$1,30
    780  1.1  christos 	xor	$31,$21
    781  1.1  christos 	and	$21,$2,$3
    782  1.1  christos 	xor	$31,$22			# Sigma0(a)
    783  1.1  christos 	xor	$22,$2,$3
    784  1.1  christos #endif
    785  1.1  christos 	sw	$16,32($29)	# offload to ring buffer
    786  1.1  christos 	addu	$31,$21
    787  1.1  christos 	and	$22,$1
    788  1.1  christos 	addu	$20,$23			# +=K[8]
    789  1.1  christos 	addu	$31,$22			# +=Maj(a,b,c)
    790  1.1  christos 	addu	$7,$20
    791  1.1  christos 	addu	$31,$20
    792  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    793  1.1  christos 	lw	$18,40($5)
    794  1.1  christos #else
    795  1.1  christos 	lwl	$18,43($5)
    796  1.1  christos 	lwr	$18,40($5)
    797  1.1  christos #endif
    798  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    799  1.1  christos 	wsbh	$17,$17		# byte swap(9)
    800  1.1  christos 	rotr	$17,$17,16
    801  1.1  christos #else
    802  1.1  christos 	srl	$22,$17,24		# byte swap(9)
    803  1.1  christos 	srl	$23,$17,8
    804  1.1  christos 	andi	$8,$17,0xFF00
    805  1.1  christos 	sll	$17,$17,24
    806  1.1  christos 	andi	$23,0xFF00
    807  1.1  christos 	sll	$8,$8,8
    808  1.1  christos 	or	$17,$22
    809  1.1  christos 	or	$23,$8
    810  1.1  christos 	or	$17,$23
    811  1.1  christos #endif
    812  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    813  1.1  christos 	xor	$8,$24,$25			# 9
    814  1.1  christos 	rotr	$22,$7,6
    815  1.1  christos 	addu	$21,$17,$30
    816  1.1  christos 	rotr	$23,$7,11
    817  1.1  christos 	and	$8,$7
    818  1.1  christos 	rotr	$30,$7,25
    819  1.1  christos 	xor	$22,$23
    820  1.1  christos 	rotr	$23,$31,2
    821  1.1  christos 	xor	$8,$25			# Ch(e,f,g)
    822  1.1  christos 	xor	$22,$30			# Sigma1(e)
    823  1.1  christos 
    824  1.1  christos 	rotr	$30,$31,13
    825  1.1  christos 	addu	$21,$8
    826  1.1  christos 	lw	$8,36($6)		# K[9]
    827  1.1  christos 	xor	$30,$23
    828  1.1  christos 	rotr	$23,$31,22
    829  1.1  christos 	addu	$21,$22
    830  1.1  christos 	and	$22,$1,$2
    831  1.1  christos 	xor	$30,$23			# Sigma0(a)
    832  1.1  christos 	xor	$23,$1,$2
    833  1.1  christos #else
    834  1.1  christos 	addu	$21,$17,$30			# 9
    835  1.1  christos 	srl	$30,$7,6
    836  1.1  christos 	xor	$8,$24,$25
    837  1.1  christos 	sll	$23,$7,7
    838  1.1  christos 	and	$8,$7
    839  1.1  christos 	srl	$22,$7,11
    840  1.1  christos 	xor	$30,$23
    841  1.1  christos 	sll	$23,$7,21
    842  1.1  christos 	xor	$30,$22
    843  1.1  christos 	srl	$22,$7,25
    844  1.1  christos 	xor	$30,$23
    845  1.1  christos 	sll	$23,$7,26
    846  1.1  christos 	xor	$30,$22
    847  1.1  christos 	xor	$8,$25			# Ch(e,f,g)
    848  1.1  christos 	xor	$22,$23,$30			# Sigma1(e)
    849  1.1  christos 
    850  1.1  christos 	srl	$30,$31,2
    851  1.1  christos 	addu	$21,$8
    852  1.1  christos 	lw	$8,36($6)		# K[9]
    853  1.1  christos 	sll	$23,$31,10
    854  1.1  christos 	addu	$21,$22
    855  1.1  christos 	srl	$22,$31,13
    856  1.1  christos 	xor	$30,$23
    857  1.1  christos 	sll	$23,$31,19
    858  1.1  christos 	xor	$30,$22
    859  1.1  christos 	srl	$22,$31,22
    860  1.1  christos 	xor	$30,$23
    861  1.1  christos 	sll	$23,$31,30
    862  1.1  christos 	xor	$30,$22
    863  1.1  christos 	and	$22,$1,$2
    864  1.1  christos 	xor	$30,$23			# Sigma0(a)
    865  1.1  christos 	xor	$23,$1,$2
    866  1.1  christos #endif
    867  1.1  christos 	sw	$17,36($29)	# offload to ring buffer
    868  1.1  christos 	addu	$30,$22
    869  1.1  christos 	and	$23,$31
    870  1.1  christos 	addu	$21,$8			# +=K[9]
    871  1.1  christos 	addu	$30,$23			# +=Maj(a,b,c)
    872  1.1  christos 	addu	$3,$21
    873  1.1  christos 	addu	$30,$21
    874  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    875  1.1  christos 	lw	$19,44($5)
    876  1.1  christos #else
    877  1.1  christos 	lwl	$19,47($5)
    878  1.1  christos 	lwr	$19,44($5)
    879  1.1  christos #endif
    880  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    881  1.1  christos 	wsbh	$18,$18		# byte swap(10)
    882  1.1  christos 	rotr	$18,$18,16
    883  1.1  christos #else
    884  1.1  christos 	srl	$23,$18,24		# byte swap(10)
    885  1.1  christos 	srl	$8,$18,8
    886  1.1  christos 	andi	$9,$18,0xFF00
    887  1.1  christos 	sll	$18,$18,24
    888  1.1  christos 	andi	$8,0xFF00
    889  1.1  christos 	sll	$9,$9,8
    890  1.1  christos 	or	$18,$23
    891  1.1  christos 	or	$8,$9
    892  1.1  christos 	or	$18,$8
    893  1.1  christos #endif
    894  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    895  1.1  christos 	xor	$9,$7,$24			# 10
    896  1.1  christos 	rotr	$23,$3,6
    897  1.1  christos 	addu	$22,$18,$25
    898  1.1  christos 	rotr	$8,$3,11
    899  1.1  christos 	and	$9,$3
    900  1.1  christos 	rotr	$25,$3,25
    901  1.1  christos 	xor	$23,$8
    902  1.1  christos 	rotr	$8,$30,2
    903  1.1  christos 	xor	$9,$24			# Ch(e,f,g)
    904  1.1  christos 	xor	$23,$25			# Sigma1(e)
    905  1.1  christos 
    906  1.1  christos 	rotr	$25,$30,13
    907  1.1  christos 	addu	$22,$9
    908  1.1  christos 	lw	$9,40($6)		# K[10]
    909  1.1  christos 	xor	$25,$8
    910  1.1  christos 	rotr	$8,$30,22
    911  1.1  christos 	addu	$22,$23
    912  1.1  christos 	and	$23,$31,$1
    913  1.1  christos 	xor	$25,$8			# Sigma0(a)
    914  1.1  christos 	xor	$8,$31,$1
    915  1.1  christos #else
    916  1.1  christos 	addu	$22,$18,$25			# 10
    917  1.1  christos 	srl	$25,$3,6
    918  1.1  christos 	xor	$9,$7,$24
    919  1.1  christos 	sll	$8,$3,7
    920  1.1  christos 	and	$9,$3
    921  1.1  christos 	srl	$23,$3,11
    922  1.1  christos 	xor	$25,$8
    923  1.1  christos 	sll	$8,$3,21
    924  1.1  christos 	xor	$25,$23
    925  1.1  christos 	srl	$23,$3,25
    926  1.1  christos 	xor	$25,$8
    927  1.1  christos 	sll	$8,$3,26
    928  1.1  christos 	xor	$25,$23
    929  1.1  christos 	xor	$9,$24			# Ch(e,f,g)
    930  1.1  christos 	xor	$23,$8,$25			# Sigma1(e)
    931  1.1  christos 
    932  1.1  christos 	srl	$25,$30,2
    933  1.1  christos 	addu	$22,$9
    934  1.1  christos 	lw	$9,40($6)		# K[10]
    935  1.1  christos 	sll	$8,$30,10
    936  1.1  christos 	addu	$22,$23
    937  1.1  christos 	srl	$23,$30,13
    938  1.1  christos 	xor	$25,$8
    939  1.1  christos 	sll	$8,$30,19
    940  1.1  christos 	xor	$25,$23
    941  1.1  christos 	srl	$23,$30,22
    942  1.1  christos 	xor	$25,$8
    943  1.1  christos 	sll	$8,$30,30
    944  1.1  christos 	xor	$25,$23
    945  1.1  christos 	and	$23,$31,$1
    946  1.1  christos 	xor	$25,$8			# Sigma0(a)
    947  1.1  christos 	xor	$8,$31,$1
    948  1.1  christos #endif
    949  1.1  christos 	sw	$18,40($29)	# offload to ring buffer
    950  1.1  christos 	addu	$25,$23
    951  1.1  christos 	and	$8,$30
    952  1.1  christos 	addu	$22,$9			# +=K[10]
    953  1.1  christos 	addu	$25,$8			# +=Maj(a,b,c)
    954  1.1  christos 	addu	$2,$22
    955  1.1  christos 	addu	$25,$22
    956  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
    957  1.1  christos 	lw	$20,48($5)
    958  1.1  christos #else
    959  1.1  christos 	lwl	$20,51($5)
    960  1.1  christos 	lwr	$20,48($5)
    961  1.1  christos #endif
    962  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    963  1.1  christos 	wsbh	$19,$19		# byte swap(11)
    964  1.1  christos 	rotr	$19,$19,16
    965  1.1  christos #else
    966  1.1  christos 	srl	$8,$19,24		# byte swap(11)
    967  1.1  christos 	srl	$9,$19,8
    968  1.1  christos 	andi	$10,$19,0xFF00
    969  1.1  christos 	sll	$19,$19,24
    970  1.1  christos 	andi	$9,0xFF00
    971  1.1  christos 	sll	$10,$10,8
    972  1.1  christos 	or	$19,$8
    973  1.1  christos 	or	$9,$10
    974  1.1  christos 	or	$19,$9
    975  1.1  christos #endif
    976  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
    977  1.1  christos 	xor	$10,$3,$7			# 11
    978  1.1  christos 	rotr	$8,$2,6
    979  1.1  christos 	addu	$23,$19,$24
    980  1.1  christos 	rotr	$9,$2,11
    981  1.1  christos 	and	$10,$2
    982  1.1  christos 	rotr	$24,$2,25
    983  1.1  christos 	xor	$8,$9
    984  1.1  christos 	rotr	$9,$25,2
    985  1.1  christos 	xor	$10,$7			# Ch(e,f,g)
    986  1.1  christos 	xor	$8,$24			# Sigma1(e)
    987  1.1  christos 
    988  1.1  christos 	rotr	$24,$25,13
    989  1.1  christos 	addu	$23,$10
    990  1.1  christos 	lw	$10,44($6)		# K[11]
    991  1.1  christos 	xor	$24,$9
    992  1.1  christos 	rotr	$9,$25,22
    993  1.1  christos 	addu	$23,$8
    994  1.1  christos 	and	$8,$30,$31
    995  1.1  christos 	xor	$24,$9			# Sigma0(a)
    996  1.1  christos 	xor	$9,$30,$31
    997  1.1  christos #else
    998  1.1  christos 	addu	$23,$19,$24			# 11
    999  1.1  christos 	srl	$24,$2,6
   1000  1.1  christos 	xor	$10,$3,$7
   1001  1.1  christos 	sll	$9,$2,7
   1002  1.1  christos 	and	$10,$2
   1003  1.1  christos 	srl	$8,$2,11
   1004  1.1  christos 	xor	$24,$9
   1005  1.1  christos 	sll	$9,$2,21
   1006  1.1  christos 	xor	$24,$8
   1007  1.1  christos 	srl	$8,$2,25
   1008  1.1  christos 	xor	$24,$9
   1009  1.1  christos 	sll	$9,$2,26
   1010  1.1  christos 	xor	$24,$8
   1011  1.1  christos 	xor	$10,$7			# Ch(e,f,g)
   1012  1.1  christos 	xor	$8,$9,$24			# Sigma1(e)
   1013  1.1  christos 
   1014  1.1  christos 	srl	$24,$25,2
   1015  1.1  christos 	addu	$23,$10
   1016  1.1  christos 	lw	$10,44($6)		# K[11]
   1017  1.1  christos 	sll	$9,$25,10
   1018  1.1  christos 	addu	$23,$8
   1019  1.1  christos 	srl	$8,$25,13
   1020  1.1  christos 	xor	$24,$9
   1021  1.1  christos 	sll	$9,$25,19
   1022  1.1  christos 	xor	$24,$8
   1023  1.1  christos 	srl	$8,$25,22
   1024  1.1  christos 	xor	$24,$9
   1025  1.1  christos 	sll	$9,$25,30
   1026  1.1  christos 	xor	$24,$8
   1027  1.1  christos 	and	$8,$30,$31
   1028  1.1  christos 	xor	$24,$9			# Sigma0(a)
   1029  1.1  christos 	xor	$9,$30,$31
   1030  1.1  christos #endif
   1031  1.1  christos 	sw	$19,44($29)	# offload to ring buffer
   1032  1.1  christos 	addu	$24,$8
   1033  1.1  christos 	and	$9,$25
   1034  1.1  christos 	addu	$23,$10			# +=K[11]
   1035  1.1  christos 	addu	$24,$9			# +=Maj(a,b,c)
   1036  1.1  christos 	addu	$1,$23
   1037  1.1  christos 	addu	$24,$23
   1038  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
   1039  1.1  christos 	lw	$21,52($5)
   1040  1.1  christos #else
   1041  1.1  christos 	lwl	$21,55($5)
   1042  1.1  christos 	lwr	$21,52($5)
   1043  1.1  christos #endif
   1044  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1045  1.1  christos 	wsbh	$20,$20		# byte swap(12)
   1046  1.1  christos 	rotr	$20,$20,16
   1047  1.1  christos #else
   1048  1.1  christos 	srl	$9,$20,24		# byte swap(12)
   1049  1.1  christos 	srl	$10,$20,8
   1050  1.1  christos 	andi	$11,$20,0xFF00
   1051  1.1  christos 	sll	$20,$20,24
   1052  1.1  christos 	andi	$10,0xFF00
   1053  1.1  christos 	sll	$11,$11,8
   1054  1.1  christos 	or	$20,$9
   1055  1.1  christos 	or	$10,$11
   1056  1.1  christos 	or	$20,$10
   1057  1.1  christos #endif
   1058  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1059  1.1  christos 	xor	$11,$2,$3			# 12
   1060  1.1  christos 	rotr	$9,$1,6
   1061  1.1  christos 	addu	$8,$20,$7
   1062  1.1  christos 	rotr	$10,$1,11
   1063  1.1  christos 	and	$11,$1
   1064  1.1  christos 	rotr	$7,$1,25
   1065  1.1  christos 	xor	$9,$10
   1066  1.1  christos 	rotr	$10,$24,2
   1067  1.1  christos 	xor	$11,$3			# Ch(e,f,g)
   1068  1.1  christos 	xor	$9,$7			# Sigma1(e)
   1069  1.1  christos 
   1070  1.1  christos 	rotr	$7,$24,13
   1071  1.1  christos 	addu	$8,$11
   1072  1.1  christos 	lw	$11,48($6)		# K[12]
   1073  1.1  christos 	xor	$7,$10
   1074  1.1  christos 	rotr	$10,$24,22
   1075  1.1  christos 	addu	$8,$9
   1076  1.1  christos 	and	$9,$25,$30
   1077  1.1  christos 	xor	$7,$10			# Sigma0(a)
   1078  1.1  christos 	xor	$10,$25,$30
   1079  1.1  christos #else
   1080  1.1  christos 	addu	$8,$20,$7			# 12
   1081  1.1  christos 	srl	$7,$1,6
   1082  1.1  christos 	xor	$11,$2,$3
   1083  1.1  christos 	sll	$10,$1,7
   1084  1.1  christos 	and	$11,$1
   1085  1.1  christos 	srl	$9,$1,11
   1086  1.1  christos 	xor	$7,$10
   1087  1.1  christos 	sll	$10,$1,21
   1088  1.1  christos 	xor	$7,$9
   1089  1.1  christos 	srl	$9,$1,25
   1090  1.1  christos 	xor	$7,$10
   1091  1.1  christos 	sll	$10,$1,26
   1092  1.1  christos 	xor	$7,$9
   1093  1.1  christos 	xor	$11,$3			# Ch(e,f,g)
   1094  1.1  christos 	xor	$9,$10,$7			# Sigma1(e)
   1095  1.1  christos 
   1096  1.1  christos 	srl	$7,$24,2
   1097  1.1  christos 	addu	$8,$11
   1098  1.1  christos 	lw	$11,48($6)		# K[12]
   1099  1.1  christos 	sll	$10,$24,10
   1100  1.1  christos 	addu	$8,$9
   1101  1.1  christos 	srl	$9,$24,13
   1102  1.1  christos 	xor	$7,$10
   1103  1.1  christos 	sll	$10,$24,19
   1104  1.1  christos 	xor	$7,$9
   1105  1.1  christos 	srl	$9,$24,22
   1106  1.1  christos 	xor	$7,$10
   1107  1.1  christos 	sll	$10,$24,30
   1108  1.1  christos 	xor	$7,$9
   1109  1.1  christos 	and	$9,$25,$30
   1110  1.1  christos 	xor	$7,$10			# Sigma0(a)
   1111  1.1  christos 	xor	$10,$25,$30
   1112  1.1  christos #endif
   1113  1.1  christos 	sw	$20,48($29)	# offload to ring buffer
   1114  1.1  christos 	addu	$7,$9
   1115  1.1  christos 	and	$10,$24
   1116  1.1  christos 	addu	$8,$11			# +=K[12]
   1117  1.1  christos 	addu	$7,$10			# +=Maj(a,b,c)
   1118  1.1  christos 	addu	$31,$8
   1119  1.1  christos 	addu	$7,$8
   1120  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
   1121  1.1  christos 	lw	$22,56($5)
   1122  1.1  christos #else
   1123  1.1  christos 	lwl	$22,59($5)
   1124  1.1  christos 	lwr	$22,56($5)
   1125  1.1  christos #endif
   1126  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1127  1.1  christos 	wsbh	$21,$21		# byte swap(13)
   1128  1.1  christos 	rotr	$21,$21,16
   1129  1.1  christos #else
   1130  1.1  christos 	srl	$10,$21,24		# byte swap(13)
   1131  1.1  christos 	srl	$11,$21,8
   1132  1.1  christos 	andi	$12,$21,0xFF00
   1133  1.1  christos 	sll	$21,$21,24
   1134  1.1  christos 	andi	$11,0xFF00
   1135  1.1  christos 	sll	$12,$12,8
   1136  1.1  christos 	or	$21,$10
   1137  1.1  christos 	or	$11,$12
   1138  1.1  christos 	or	$21,$11
   1139  1.1  christos #endif
   1140  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1141  1.1  christos 	xor	$12,$1,$2			# 13
   1142  1.1  christos 	rotr	$10,$31,6
   1143  1.1  christos 	addu	$9,$21,$3
   1144  1.1  christos 	rotr	$11,$31,11
   1145  1.1  christos 	and	$12,$31
   1146  1.1  christos 	rotr	$3,$31,25
   1147  1.1  christos 	xor	$10,$11
   1148  1.1  christos 	rotr	$11,$7,2
   1149  1.1  christos 	xor	$12,$2			# Ch(e,f,g)
   1150  1.1  christos 	xor	$10,$3			# Sigma1(e)
   1151  1.1  christos 
   1152  1.1  christos 	rotr	$3,$7,13
   1153  1.1  christos 	addu	$9,$12
   1154  1.1  christos 	lw	$12,52($6)		# K[13]
   1155  1.1  christos 	xor	$3,$11
   1156  1.1  christos 	rotr	$11,$7,22
   1157  1.1  christos 	addu	$9,$10
   1158  1.1  christos 	and	$10,$24,$25
   1159  1.1  christos 	xor	$3,$11			# Sigma0(a)
   1160  1.1  christos 	xor	$11,$24,$25
   1161  1.1  christos #else
   1162  1.1  christos 	addu	$9,$21,$3			# 13
   1163  1.1  christos 	srl	$3,$31,6
   1164  1.1  christos 	xor	$12,$1,$2
   1165  1.1  christos 	sll	$11,$31,7
   1166  1.1  christos 	and	$12,$31
   1167  1.1  christos 	srl	$10,$31,11
   1168  1.1  christos 	xor	$3,$11
   1169  1.1  christos 	sll	$11,$31,21
   1170  1.1  christos 	xor	$3,$10
   1171  1.1  christos 	srl	$10,$31,25
   1172  1.1  christos 	xor	$3,$11
   1173  1.1  christos 	sll	$11,$31,26
   1174  1.1  christos 	xor	$3,$10
   1175  1.1  christos 	xor	$12,$2			# Ch(e,f,g)
   1176  1.1  christos 	xor	$10,$11,$3			# Sigma1(e)
   1177  1.1  christos 
   1178  1.1  christos 	srl	$3,$7,2
   1179  1.1  christos 	addu	$9,$12
   1180  1.1  christos 	lw	$12,52($6)		# K[13]
   1181  1.1  christos 	sll	$11,$7,10
   1182  1.1  christos 	addu	$9,$10
   1183  1.1  christos 	srl	$10,$7,13
   1184  1.1  christos 	xor	$3,$11
   1185  1.1  christos 	sll	$11,$7,19
   1186  1.1  christos 	xor	$3,$10
   1187  1.1  christos 	srl	$10,$7,22
   1188  1.1  christos 	xor	$3,$11
   1189  1.1  christos 	sll	$11,$7,30
   1190  1.1  christos 	xor	$3,$10
   1191  1.1  christos 	and	$10,$24,$25
   1192  1.1  christos 	xor	$3,$11			# Sigma0(a)
   1193  1.1  christos 	xor	$11,$24,$25
   1194  1.1  christos #endif
   1195  1.1  christos 	sw	$21,52($29)	# offload to ring buffer
   1196  1.1  christos 	addu	$3,$10
   1197  1.1  christos 	and	$11,$7
   1198  1.1  christos 	addu	$9,$12			# +=K[13]
   1199  1.1  christos 	addu	$3,$11			# +=Maj(a,b,c)
   1200  1.1  christos 	addu	$30,$9
   1201  1.1  christos 	addu	$3,$9
   1202  1.1  christos 	lw	$8,0($29)	# prefetch from ring buffer
   1203  1.1  christos #if defined(_MIPS_ARCH_MIPS32R6) || defined(_MIPS_ARCH_MIPS64R6)
   1204  1.1  christos 	lw	$23,60($5)
   1205  1.1  christos #else
   1206  1.1  christos 	lwl	$23,63($5)
   1207  1.1  christos 	lwr	$23,60($5)
   1208  1.1  christos #endif
   1209  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1210  1.1  christos 	wsbh	$22,$22		# byte swap(14)
   1211  1.1  christos 	rotr	$22,$22,16
   1212  1.1  christos #else
   1213  1.1  christos 	srl	$11,$22,24		# byte swap(14)
   1214  1.1  christos 	srl	$12,$22,8
   1215  1.1  christos 	andi	$13,$22,0xFF00
   1216  1.1  christos 	sll	$22,$22,24
   1217  1.1  christos 	andi	$12,0xFF00
   1218  1.1  christos 	sll	$13,$13,8
   1219  1.1  christos 	or	$22,$11
   1220  1.1  christos 	or	$12,$13
   1221  1.1  christos 	or	$22,$12
   1222  1.1  christos #endif
   1223  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1224  1.1  christos 	xor	$13,$31,$1			# 14
   1225  1.1  christos 	rotr	$11,$30,6
   1226  1.1  christos 	addu	$10,$22,$2
   1227  1.1  christos 	rotr	$12,$30,11
   1228  1.1  christos 	and	$13,$30
   1229  1.1  christos 	rotr	$2,$30,25
   1230  1.1  christos 	xor	$11,$12
   1231  1.1  christos 	rotr	$12,$3,2
   1232  1.1  christos 	xor	$13,$1			# Ch(e,f,g)
   1233  1.1  christos 	xor	$11,$2			# Sigma1(e)
   1234  1.1  christos 
   1235  1.1  christos 	rotr	$2,$3,13
   1236  1.1  christos 	addu	$10,$13
   1237  1.1  christos 	lw	$13,56($6)		# K[14]
   1238  1.1  christos 	xor	$2,$12
   1239  1.1  christos 	rotr	$12,$3,22
   1240  1.1  christos 	addu	$10,$11
   1241  1.1  christos 	and	$11,$7,$24
   1242  1.1  christos 	xor	$2,$12			# Sigma0(a)
   1243  1.1  christos 	xor	$12,$7,$24
   1244  1.1  christos #else
   1245  1.1  christos 	addu	$10,$22,$2			# 14
   1246  1.1  christos 	srl	$2,$30,6
   1247  1.1  christos 	xor	$13,$31,$1
   1248  1.1  christos 	sll	$12,$30,7
   1249  1.1  christos 	and	$13,$30
   1250  1.1  christos 	srl	$11,$30,11
   1251  1.1  christos 	xor	$2,$12
   1252  1.1  christos 	sll	$12,$30,21
   1253  1.1  christos 	xor	$2,$11
   1254  1.1  christos 	srl	$11,$30,25
   1255  1.1  christos 	xor	$2,$12
   1256  1.1  christos 	sll	$12,$30,26
   1257  1.1  christos 	xor	$2,$11
   1258  1.1  christos 	xor	$13,$1			# Ch(e,f,g)
   1259  1.1  christos 	xor	$11,$12,$2			# Sigma1(e)
   1260  1.1  christos 
   1261  1.1  christos 	srl	$2,$3,2
   1262  1.1  christos 	addu	$10,$13
   1263  1.1  christos 	lw	$13,56($6)		# K[14]
   1264  1.1  christos 	sll	$12,$3,10
   1265  1.1  christos 	addu	$10,$11
   1266  1.1  christos 	srl	$11,$3,13
   1267  1.1  christos 	xor	$2,$12
   1268  1.1  christos 	sll	$12,$3,19
   1269  1.1  christos 	xor	$2,$11
   1270  1.1  christos 	srl	$11,$3,22
   1271  1.1  christos 	xor	$2,$12
   1272  1.1  christos 	sll	$12,$3,30
   1273  1.1  christos 	xor	$2,$11
   1274  1.1  christos 	and	$11,$7,$24
   1275  1.1  christos 	xor	$2,$12			# Sigma0(a)
   1276  1.1  christos 	xor	$12,$7,$24
   1277  1.1  christos #endif
   1278  1.1  christos 	sw	$22,56($29)	# offload to ring buffer
   1279  1.1  christos 	addu	$2,$11
   1280  1.1  christos 	and	$12,$3
   1281  1.1  christos 	addu	$10,$13			# +=K[14]
   1282  1.1  christos 	addu	$2,$12			# +=Maj(a,b,c)
   1283  1.1  christos 	addu	$25,$10
   1284  1.1  christos 	addu	$2,$10
   1285  1.1  christos 	lw	$9,4($29)	# prefetch from ring buffer
   1286  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1287  1.1  christos 	wsbh	$23,$23		# byte swap(15)
   1288  1.1  christos 	rotr	$23,$23,16
   1289  1.1  christos #else
   1290  1.1  christos 	srl	$12,$23,24		# byte swap(15)
   1291  1.1  christos 	srl	$13,$23,8
   1292  1.1  christos 	andi	$14,$23,0xFF00
   1293  1.1  christos 	sll	$23,$23,24
   1294  1.1  christos 	andi	$13,0xFF00
   1295  1.1  christos 	sll	$14,$14,8
   1296  1.1  christos 	or	$23,$12
   1297  1.1  christos 	or	$13,$14
   1298  1.1  christos 	or	$23,$13
   1299  1.1  christos #endif
   1300  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1301  1.1  christos 	xor	$14,$30,$31			# 15
   1302  1.1  christos 	rotr	$12,$25,6
   1303  1.1  christos 	addu	$11,$23,$1
   1304  1.1  christos 	rotr	$13,$25,11
   1305  1.1  christos 	and	$14,$25
   1306  1.1  christos 	rotr	$1,$25,25
   1307  1.1  christos 	xor	$12,$13
   1308  1.1  christos 	rotr	$13,$2,2
   1309  1.1  christos 	xor	$14,$31			# Ch(e,f,g)
   1310  1.1  christos 	xor	$12,$1			# Sigma1(e)
   1311  1.1  christos 
   1312  1.1  christos 	rotr	$1,$2,13
   1313  1.1  christos 	addu	$11,$14
   1314  1.1  christos 	lw	$14,60($6)		# K[15]
   1315  1.1  christos 	xor	$1,$13
   1316  1.1  christos 	rotr	$13,$2,22
   1317  1.1  christos 	addu	$11,$12
   1318  1.1  christos 	and	$12,$3,$7
   1319  1.1  christos 	xor	$1,$13			# Sigma0(a)
   1320  1.1  christos 	xor	$13,$3,$7
   1321  1.1  christos #else
   1322  1.1  christos 	addu	$11,$23,$1			# 15
   1323  1.1  christos 	srl	$1,$25,6
   1324  1.1  christos 	xor	$14,$30,$31
   1325  1.1  christos 	sll	$13,$25,7
   1326  1.1  christos 	and	$14,$25
   1327  1.1  christos 	srl	$12,$25,11
   1328  1.1  christos 	xor	$1,$13
   1329  1.1  christos 	sll	$13,$25,21
   1330  1.1  christos 	xor	$1,$12
   1331  1.1  christos 	srl	$12,$25,25
   1332  1.1  christos 	xor	$1,$13
   1333  1.1  christos 	sll	$13,$25,26
   1334  1.1  christos 	xor	$1,$12
   1335  1.1  christos 	xor	$14,$31			# Ch(e,f,g)
   1336  1.1  christos 	xor	$12,$13,$1			# Sigma1(e)
   1337  1.1  christos 
   1338  1.1  christos 	srl	$1,$2,2
   1339  1.1  christos 	addu	$11,$14
   1340  1.1  christos 	lw	$14,60($6)		# K[15]
   1341  1.1  christos 	sll	$13,$2,10
   1342  1.1  christos 	addu	$11,$12
   1343  1.1  christos 	srl	$12,$2,13
   1344  1.1  christos 	xor	$1,$13
   1345  1.1  christos 	sll	$13,$2,19
   1346  1.1  christos 	xor	$1,$12
   1347  1.1  christos 	srl	$12,$2,22
   1348  1.1  christos 	xor	$1,$13
   1349  1.1  christos 	sll	$13,$2,30
   1350  1.1  christos 	xor	$1,$12
   1351  1.1  christos 	and	$12,$3,$7
   1352  1.1  christos 	xor	$1,$13			# Sigma0(a)
   1353  1.1  christos 	xor	$13,$3,$7
   1354  1.1  christos #endif
   1355  1.1  christos 	sw	$23,60($29)	# offload to ring buffer
   1356  1.1  christos 	addu	$1,$12
   1357  1.1  christos 	and	$13,$2
   1358  1.1  christos 	addu	$11,$14			# +=K[15]
   1359  1.1  christos 	addu	$1,$13			# +=Maj(a,b,c)
   1360  1.1  christos 	addu	$24,$11
   1361  1.1  christos 	addu	$1,$11
   1362  1.1  christos 	lw	$10,8($29)	# prefetch from ring buffer
   1363  1.1  christos 	b	.L16_xx
   1364  1.1  christos .align	4
   1365  1.1  christos .L16_xx:
   1366  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1367  1.1  christos 	srl	$14,$9,3		# Xupdate(16)
   1368  1.1  christos 	rotr	$12,$9,7
   1369  1.1  christos 	addu	$8,$17			# +=X[i+9]
   1370  1.1  christos 	xor	$14,$12
   1371  1.1  christos 	rotr	$12,$9,18
   1372  1.1  christos 
   1373  1.1  christos 	srl	$15,$22,10
   1374  1.1  christos 	rotr	$13,$22,17
   1375  1.1  christos 	xor	$14,$12			# sigma0(X[i+1])
   1376  1.1  christos 	rotr	$12,$22,19
   1377  1.1  christos 	xor	$15,$13
   1378  1.1  christos 	addu	$8,$14
   1379  1.1  christos #else
   1380  1.1  christos 	srl	$14,$9,3		# Xupdate(16)
   1381  1.1  christos 	addu	$8,$17			# +=X[i+9]
   1382  1.1  christos 	sll	$13,$9,14
   1383  1.1  christos 	srl	$12,$9,7
   1384  1.1  christos 	xor	$14,$13
   1385  1.1  christos 	sll	$13,11
   1386  1.1  christos 	xor	$14,$12
   1387  1.1  christos 	srl	$12,$9,18
   1388  1.1  christos 	xor	$14,$13
   1389  1.1  christos 
   1390  1.1  christos 	srl	$15,$22,10
   1391  1.1  christos 	xor	$14,$12			# sigma0(X[i+1])
   1392  1.1  christos 	sll	$13,$22,13
   1393  1.1  christos 	addu	$8,$14
   1394  1.1  christos 	srl	$12,$22,17
   1395  1.1  christos 	xor	$15,$13
   1396  1.1  christos 	sll	$13,2
   1397  1.1  christos 	xor	$15,$12
   1398  1.1  christos 	srl	$12,$22,19
   1399  1.1  christos 	xor	$15,$13
   1400  1.1  christos #endif
   1401  1.1  christos 	xor	$15,$12			# sigma1(X[i+14])
   1402  1.1  christos 	addu	$8,$15
   1403  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1404  1.1  christos 	xor	$15,$25,$30			# 16
   1405  1.1  christos 	rotr	$13,$24,6
   1406  1.1  christos 	addu	$12,$8,$31
   1407  1.1  christos 	rotr	$14,$24,11
   1408  1.1  christos 	and	$15,$24
   1409  1.1  christos 	rotr	$31,$24,25
   1410  1.1  christos 	xor	$13,$14
   1411  1.1  christos 	rotr	$14,$1,2
   1412  1.1  christos 	xor	$15,$30			# Ch(e,f,g)
   1413  1.1  christos 	xor	$13,$31			# Sigma1(e)
   1414  1.1  christos 
   1415  1.1  christos 	rotr	$31,$1,13
   1416  1.1  christos 	addu	$12,$15
   1417  1.1  christos 	lw	$15,64($6)		# K[16]
   1418  1.1  christos 	xor	$31,$14
   1419  1.1  christos 	rotr	$14,$1,22
   1420  1.1  christos 	addu	$12,$13
   1421  1.1  christos 	and	$13,$2,$3
   1422  1.1  christos 	xor	$31,$14			# Sigma0(a)
   1423  1.1  christos 	xor	$14,$2,$3
   1424  1.1  christos #else
   1425  1.1  christos 	addu	$12,$8,$31			# 16
   1426  1.1  christos 	srl	$31,$24,6
   1427  1.1  christos 	xor	$15,$25,$30
   1428  1.1  christos 	sll	$14,$24,7
   1429  1.1  christos 	and	$15,$24
   1430  1.1  christos 	srl	$13,$24,11
   1431  1.1  christos 	xor	$31,$14
   1432  1.1  christos 	sll	$14,$24,21
   1433  1.1  christos 	xor	$31,$13
   1434  1.1  christos 	srl	$13,$24,25
   1435  1.1  christos 	xor	$31,$14
   1436  1.1  christos 	sll	$14,$24,26
   1437  1.1  christos 	xor	$31,$13
   1438  1.1  christos 	xor	$15,$30			# Ch(e,f,g)
   1439  1.1  christos 	xor	$13,$14,$31			# Sigma1(e)
   1440  1.1  christos 
   1441  1.1  christos 	srl	$31,$1,2
   1442  1.1  christos 	addu	$12,$15
   1443  1.1  christos 	lw	$15,64($6)		# K[16]
   1444  1.1  christos 	sll	$14,$1,10
   1445  1.1  christos 	addu	$12,$13
   1446  1.1  christos 	srl	$13,$1,13
   1447  1.1  christos 	xor	$31,$14
   1448  1.1  christos 	sll	$14,$1,19
   1449  1.1  christos 	xor	$31,$13
   1450  1.1  christos 	srl	$13,$1,22
   1451  1.1  christos 	xor	$31,$14
   1452  1.1  christos 	sll	$14,$1,30
   1453  1.1  christos 	xor	$31,$13
   1454  1.1  christos 	and	$13,$2,$3
   1455  1.1  christos 	xor	$31,$14			# Sigma0(a)
   1456  1.1  christos 	xor	$14,$2,$3
   1457  1.1  christos #endif
   1458  1.1  christos 	sw	$8,0($29)	# offload to ring buffer
   1459  1.1  christos 	addu	$31,$13
   1460  1.1  christos 	and	$14,$1
   1461  1.1  christos 	addu	$12,$15			# +=K[16]
   1462  1.1  christos 	addu	$31,$14			# +=Maj(a,b,c)
   1463  1.1  christos 	addu	$7,$12
   1464  1.1  christos 	addu	$31,$12
   1465  1.1  christos 	lw	$11,12($29)	# prefetch from ring buffer
   1466  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1467  1.1  christos 	srl	$15,$10,3		# Xupdate(17)
   1468  1.1  christos 	rotr	$13,$10,7
   1469  1.1  christos 	addu	$9,$18			# +=X[i+9]
   1470  1.1  christos 	xor	$15,$13
   1471  1.1  christos 	rotr	$13,$10,18
   1472  1.1  christos 
   1473  1.1  christos 	srl	$16,$23,10
   1474  1.1  christos 	rotr	$14,$23,17
   1475  1.1  christos 	xor	$15,$13			# sigma0(X[i+1])
   1476  1.1  christos 	rotr	$13,$23,19
   1477  1.1  christos 	xor	$16,$14
   1478  1.1  christos 	addu	$9,$15
   1479  1.1  christos #else
   1480  1.1  christos 	srl	$15,$10,3		# Xupdate(17)
   1481  1.1  christos 	addu	$9,$18			# +=X[i+9]
   1482  1.1  christos 	sll	$14,$10,14
   1483  1.1  christos 	srl	$13,$10,7
   1484  1.1  christos 	xor	$15,$14
   1485  1.1  christos 	sll	$14,11
   1486  1.1  christos 	xor	$15,$13
   1487  1.1  christos 	srl	$13,$10,18
   1488  1.1  christos 	xor	$15,$14
   1489  1.1  christos 
   1490  1.1  christos 	srl	$16,$23,10
   1491  1.1  christos 	xor	$15,$13			# sigma0(X[i+1])
   1492  1.1  christos 	sll	$14,$23,13
   1493  1.1  christos 	addu	$9,$15
   1494  1.1  christos 	srl	$13,$23,17
   1495  1.1  christos 	xor	$16,$14
   1496  1.1  christos 	sll	$14,2
   1497  1.1  christos 	xor	$16,$13
   1498  1.1  christos 	srl	$13,$23,19
   1499  1.1  christos 	xor	$16,$14
   1500  1.1  christos #endif
   1501  1.1  christos 	xor	$16,$13			# sigma1(X[i+14])
   1502  1.1  christos 	addu	$9,$16
   1503  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1504  1.1  christos 	xor	$16,$24,$25			# 17
   1505  1.1  christos 	rotr	$14,$7,6
   1506  1.1  christos 	addu	$13,$9,$30
   1507  1.1  christos 	rotr	$15,$7,11
   1508  1.1  christos 	and	$16,$7
   1509  1.1  christos 	rotr	$30,$7,25
   1510  1.1  christos 	xor	$14,$15
   1511  1.1  christos 	rotr	$15,$31,2
   1512  1.1  christos 	xor	$16,$25			# Ch(e,f,g)
   1513  1.1  christos 	xor	$14,$30			# Sigma1(e)
   1514  1.1  christos 
   1515  1.1  christos 	rotr	$30,$31,13
   1516  1.1  christos 	addu	$13,$16
   1517  1.1  christos 	lw	$16,68($6)		# K[17]
   1518  1.1  christos 	xor	$30,$15
   1519  1.1  christos 	rotr	$15,$31,22
   1520  1.1  christos 	addu	$13,$14
   1521  1.1  christos 	and	$14,$1,$2
   1522  1.1  christos 	xor	$30,$15			# Sigma0(a)
   1523  1.1  christos 	xor	$15,$1,$2
   1524  1.1  christos #else
   1525  1.1  christos 	addu	$13,$9,$30			# 17
   1526  1.1  christos 	srl	$30,$7,6
   1527  1.1  christos 	xor	$16,$24,$25
   1528  1.1  christos 	sll	$15,$7,7
   1529  1.1  christos 	and	$16,$7
   1530  1.1  christos 	srl	$14,$7,11
   1531  1.1  christos 	xor	$30,$15
   1532  1.1  christos 	sll	$15,$7,21
   1533  1.1  christos 	xor	$30,$14
   1534  1.1  christos 	srl	$14,$7,25
   1535  1.1  christos 	xor	$30,$15
   1536  1.1  christos 	sll	$15,$7,26
   1537  1.1  christos 	xor	$30,$14
   1538  1.1  christos 	xor	$16,$25			# Ch(e,f,g)
   1539  1.1  christos 	xor	$14,$15,$30			# Sigma1(e)
   1540  1.1  christos 
   1541  1.1  christos 	srl	$30,$31,2
   1542  1.1  christos 	addu	$13,$16
   1543  1.1  christos 	lw	$16,68($6)		# K[17]
   1544  1.1  christos 	sll	$15,$31,10
   1545  1.1  christos 	addu	$13,$14
   1546  1.1  christos 	srl	$14,$31,13
   1547  1.1  christos 	xor	$30,$15
   1548  1.1  christos 	sll	$15,$31,19
   1549  1.1  christos 	xor	$30,$14
   1550  1.1  christos 	srl	$14,$31,22
   1551  1.1  christos 	xor	$30,$15
   1552  1.1  christos 	sll	$15,$31,30
   1553  1.1  christos 	xor	$30,$14
   1554  1.1  christos 	and	$14,$1,$2
   1555  1.1  christos 	xor	$30,$15			# Sigma0(a)
   1556  1.1  christos 	xor	$15,$1,$2
   1557  1.1  christos #endif
   1558  1.1  christos 	sw	$9,4($29)	# offload to ring buffer
   1559  1.1  christos 	addu	$30,$14
   1560  1.1  christos 	and	$15,$31
   1561  1.1  christos 	addu	$13,$16			# +=K[17]
   1562  1.1  christos 	addu	$30,$15			# +=Maj(a,b,c)
   1563  1.1  christos 	addu	$3,$13
   1564  1.1  christos 	addu	$30,$13
   1565  1.1  christos 	lw	$12,16($29)	# prefetch from ring buffer
   1566  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1567  1.1  christos 	srl	$16,$11,3		# Xupdate(18)
   1568  1.1  christos 	rotr	$14,$11,7
   1569  1.1  christos 	addu	$10,$19			# +=X[i+9]
   1570  1.1  christos 	xor	$16,$14
   1571  1.1  christos 	rotr	$14,$11,18
   1572  1.1  christos 
   1573  1.1  christos 	srl	$17,$8,10
   1574  1.1  christos 	rotr	$15,$8,17
   1575  1.1  christos 	xor	$16,$14			# sigma0(X[i+1])
   1576  1.1  christos 	rotr	$14,$8,19
   1577  1.1  christos 	xor	$17,$15
   1578  1.1  christos 	addu	$10,$16
   1579  1.1  christos #else
   1580  1.1  christos 	srl	$16,$11,3		# Xupdate(18)
   1581  1.1  christos 	addu	$10,$19			# +=X[i+9]
   1582  1.1  christos 	sll	$15,$11,14
   1583  1.1  christos 	srl	$14,$11,7
   1584  1.1  christos 	xor	$16,$15
   1585  1.1  christos 	sll	$15,11
   1586  1.1  christos 	xor	$16,$14
   1587  1.1  christos 	srl	$14,$11,18
   1588  1.1  christos 	xor	$16,$15
   1589  1.1  christos 
   1590  1.1  christos 	srl	$17,$8,10
   1591  1.1  christos 	xor	$16,$14			# sigma0(X[i+1])
   1592  1.1  christos 	sll	$15,$8,13
   1593  1.1  christos 	addu	$10,$16
   1594  1.1  christos 	srl	$14,$8,17
   1595  1.1  christos 	xor	$17,$15
   1596  1.1  christos 	sll	$15,2
   1597  1.1  christos 	xor	$17,$14
   1598  1.1  christos 	srl	$14,$8,19
   1599  1.1  christos 	xor	$17,$15
   1600  1.1  christos #endif
   1601  1.1  christos 	xor	$17,$14			# sigma1(X[i+14])
   1602  1.1  christos 	addu	$10,$17
   1603  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1604  1.1  christos 	xor	$17,$7,$24			# 18
   1605  1.1  christos 	rotr	$15,$3,6
   1606  1.1  christos 	addu	$14,$10,$25
   1607  1.1  christos 	rotr	$16,$3,11
   1608  1.1  christos 	and	$17,$3
   1609  1.1  christos 	rotr	$25,$3,25
   1610  1.1  christos 	xor	$15,$16
   1611  1.1  christos 	rotr	$16,$30,2
   1612  1.1  christos 	xor	$17,$24			# Ch(e,f,g)
   1613  1.1  christos 	xor	$15,$25			# Sigma1(e)
   1614  1.1  christos 
   1615  1.1  christos 	rotr	$25,$30,13
   1616  1.1  christos 	addu	$14,$17
   1617  1.1  christos 	lw	$17,72($6)		# K[18]
   1618  1.1  christos 	xor	$25,$16
   1619  1.1  christos 	rotr	$16,$30,22
   1620  1.1  christos 	addu	$14,$15
   1621  1.1  christos 	and	$15,$31,$1
   1622  1.1  christos 	xor	$25,$16			# Sigma0(a)
   1623  1.1  christos 	xor	$16,$31,$1
   1624  1.1  christos #else
   1625  1.1  christos 	addu	$14,$10,$25			# 18
   1626  1.1  christos 	srl	$25,$3,6
   1627  1.1  christos 	xor	$17,$7,$24
   1628  1.1  christos 	sll	$16,$3,7
   1629  1.1  christos 	and	$17,$3
   1630  1.1  christos 	srl	$15,$3,11
   1631  1.1  christos 	xor	$25,$16
   1632  1.1  christos 	sll	$16,$3,21
   1633  1.1  christos 	xor	$25,$15
   1634  1.1  christos 	srl	$15,$3,25
   1635  1.1  christos 	xor	$25,$16
   1636  1.1  christos 	sll	$16,$3,26
   1637  1.1  christos 	xor	$25,$15
   1638  1.1  christos 	xor	$17,$24			# Ch(e,f,g)
   1639  1.1  christos 	xor	$15,$16,$25			# Sigma1(e)
   1640  1.1  christos 
   1641  1.1  christos 	srl	$25,$30,2
   1642  1.1  christos 	addu	$14,$17
   1643  1.1  christos 	lw	$17,72($6)		# K[18]
   1644  1.1  christos 	sll	$16,$30,10
   1645  1.1  christos 	addu	$14,$15
   1646  1.1  christos 	srl	$15,$30,13
   1647  1.1  christos 	xor	$25,$16
   1648  1.1  christos 	sll	$16,$30,19
   1649  1.1  christos 	xor	$25,$15
   1650  1.1  christos 	srl	$15,$30,22
   1651  1.1  christos 	xor	$25,$16
   1652  1.1  christos 	sll	$16,$30,30
   1653  1.1  christos 	xor	$25,$15
   1654  1.1  christos 	and	$15,$31,$1
   1655  1.1  christos 	xor	$25,$16			# Sigma0(a)
   1656  1.1  christos 	xor	$16,$31,$1
   1657  1.1  christos #endif
   1658  1.1  christos 	sw	$10,8($29)	# offload to ring buffer
   1659  1.1  christos 	addu	$25,$15
   1660  1.1  christos 	and	$16,$30
   1661  1.1  christos 	addu	$14,$17			# +=K[18]
   1662  1.1  christos 	addu	$25,$16			# +=Maj(a,b,c)
   1663  1.1  christos 	addu	$2,$14
   1664  1.1  christos 	addu	$25,$14
   1665  1.1  christos 	lw	$13,20($29)	# prefetch from ring buffer
   1666  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1667  1.1  christos 	srl	$17,$12,3		# Xupdate(19)
   1668  1.1  christos 	rotr	$15,$12,7
   1669  1.1  christos 	addu	$11,$20			# +=X[i+9]
   1670  1.1  christos 	xor	$17,$15
   1671  1.1  christos 	rotr	$15,$12,18
   1672  1.1  christos 
   1673  1.1  christos 	srl	$18,$9,10
   1674  1.1  christos 	rotr	$16,$9,17
   1675  1.1  christos 	xor	$17,$15			# sigma0(X[i+1])
   1676  1.1  christos 	rotr	$15,$9,19
   1677  1.1  christos 	xor	$18,$16
   1678  1.1  christos 	addu	$11,$17
   1679  1.1  christos #else
   1680  1.1  christos 	srl	$17,$12,3		# Xupdate(19)
   1681  1.1  christos 	addu	$11,$20			# +=X[i+9]
   1682  1.1  christos 	sll	$16,$12,14
   1683  1.1  christos 	srl	$15,$12,7
   1684  1.1  christos 	xor	$17,$16
   1685  1.1  christos 	sll	$16,11
   1686  1.1  christos 	xor	$17,$15
   1687  1.1  christos 	srl	$15,$12,18
   1688  1.1  christos 	xor	$17,$16
   1689  1.1  christos 
   1690  1.1  christos 	srl	$18,$9,10
   1691  1.1  christos 	xor	$17,$15			# sigma0(X[i+1])
   1692  1.1  christos 	sll	$16,$9,13
   1693  1.1  christos 	addu	$11,$17
   1694  1.1  christos 	srl	$15,$9,17
   1695  1.1  christos 	xor	$18,$16
   1696  1.1  christos 	sll	$16,2
   1697  1.1  christos 	xor	$18,$15
   1698  1.1  christos 	srl	$15,$9,19
   1699  1.1  christos 	xor	$18,$16
   1700  1.1  christos #endif
   1701  1.1  christos 	xor	$18,$15			# sigma1(X[i+14])
   1702  1.1  christos 	addu	$11,$18
   1703  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1704  1.1  christos 	xor	$18,$3,$7			# 19
   1705  1.1  christos 	rotr	$16,$2,6
   1706  1.1  christos 	addu	$15,$11,$24
   1707  1.1  christos 	rotr	$17,$2,11
   1708  1.1  christos 	and	$18,$2
   1709  1.1  christos 	rotr	$24,$2,25
   1710  1.1  christos 	xor	$16,$17
   1711  1.1  christos 	rotr	$17,$25,2
   1712  1.1  christos 	xor	$18,$7			# Ch(e,f,g)
   1713  1.1  christos 	xor	$16,$24			# Sigma1(e)
   1714  1.1  christos 
   1715  1.1  christos 	rotr	$24,$25,13
   1716  1.1  christos 	addu	$15,$18
   1717  1.1  christos 	lw	$18,76($6)		# K[19]
   1718  1.1  christos 	xor	$24,$17
   1719  1.1  christos 	rotr	$17,$25,22
   1720  1.1  christos 	addu	$15,$16
   1721  1.1  christos 	and	$16,$30,$31
   1722  1.1  christos 	xor	$24,$17			# Sigma0(a)
   1723  1.1  christos 	xor	$17,$30,$31
   1724  1.1  christos #else
   1725  1.1  christos 	addu	$15,$11,$24			# 19
   1726  1.1  christos 	srl	$24,$2,6
   1727  1.1  christos 	xor	$18,$3,$7
   1728  1.1  christos 	sll	$17,$2,7
   1729  1.1  christos 	and	$18,$2
   1730  1.1  christos 	srl	$16,$2,11
   1731  1.1  christos 	xor	$24,$17
   1732  1.1  christos 	sll	$17,$2,21
   1733  1.1  christos 	xor	$24,$16
   1734  1.1  christos 	srl	$16,$2,25
   1735  1.1  christos 	xor	$24,$17
   1736  1.1  christos 	sll	$17,$2,26
   1737  1.1  christos 	xor	$24,$16
   1738  1.1  christos 	xor	$18,$7			# Ch(e,f,g)
   1739  1.1  christos 	xor	$16,$17,$24			# Sigma1(e)
   1740  1.1  christos 
   1741  1.1  christos 	srl	$24,$25,2
   1742  1.1  christos 	addu	$15,$18
   1743  1.1  christos 	lw	$18,76($6)		# K[19]
   1744  1.1  christos 	sll	$17,$25,10
   1745  1.1  christos 	addu	$15,$16
   1746  1.1  christos 	srl	$16,$25,13
   1747  1.1  christos 	xor	$24,$17
   1748  1.1  christos 	sll	$17,$25,19
   1749  1.1  christos 	xor	$24,$16
   1750  1.1  christos 	srl	$16,$25,22
   1751  1.1  christos 	xor	$24,$17
   1752  1.1  christos 	sll	$17,$25,30
   1753  1.1  christos 	xor	$24,$16
   1754  1.1  christos 	and	$16,$30,$31
   1755  1.1  christos 	xor	$24,$17			# Sigma0(a)
   1756  1.1  christos 	xor	$17,$30,$31
   1757  1.1  christos #endif
   1758  1.1  christos 	sw	$11,12($29)	# offload to ring buffer
   1759  1.1  christos 	addu	$24,$16
   1760  1.1  christos 	and	$17,$25
   1761  1.1  christos 	addu	$15,$18			# +=K[19]
   1762  1.1  christos 	addu	$24,$17			# +=Maj(a,b,c)
   1763  1.1  christos 	addu	$1,$15
   1764  1.1  christos 	addu	$24,$15
   1765  1.1  christos 	lw	$14,24($29)	# prefetch from ring buffer
   1766  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1767  1.1  christos 	srl	$18,$13,3		# Xupdate(20)
   1768  1.1  christos 	rotr	$16,$13,7
   1769  1.1  christos 	addu	$12,$21			# +=X[i+9]
   1770  1.1  christos 	xor	$18,$16
   1771  1.1  christos 	rotr	$16,$13,18
   1772  1.1  christos 
   1773  1.1  christos 	srl	$19,$10,10
   1774  1.1  christos 	rotr	$17,$10,17
   1775  1.1  christos 	xor	$18,$16			# sigma0(X[i+1])
   1776  1.1  christos 	rotr	$16,$10,19
   1777  1.1  christos 	xor	$19,$17
   1778  1.1  christos 	addu	$12,$18
   1779  1.1  christos #else
   1780  1.1  christos 	srl	$18,$13,3		# Xupdate(20)
   1781  1.1  christos 	addu	$12,$21			# +=X[i+9]
   1782  1.1  christos 	sll	$17,$13,14
   1783  1.1  christos 	srl	$16,$13,7
   1784  1.1  christos 	xor	$18,$17
   1785  1.1  christos 	sll	$17,11
   1786  1.1  christos 	xor	$18,$16
   1787  1.1  christos 	srl	$16,$13,18
   1788  1.1  christos 	xor	$18,$17
   1789  1.1  christos 
   1790  1.1  christos 	srl	$19,$10,10
   1791  1.1  christos 	xor	$18,$16			# sigma0(X[i+1])
   1792  1.1  christos 	sll	$17,$10,13
   1793  1.1  christos 	addu	$12,$18
   1794  1.1  christos 	srl	$16,$10,17
   1795  1.1  christos 	xor	$19,$17
   1796  1.1  christos 	sll	$17,2
   1797  1.1  christos 	xor	$19,$16
   1798  1.1  christos 	srl	$16,$10,19
   1799  1.1  christos 	xor	$19,$17
   1800  1.1  christos #endif
   1801  1.1  christos 	xor	$19,$16			# sigma1(X[i+14])
   1802  1.1  christos 	addu	$12,$19
   1803  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1804  1.1  christos 	xor	$19,$2,$3			# 20
   1805  1.1  christos 	rotr	$17,$1,6
   1806  1.1  christos 	addu	$16,$12,$7
   1807  1.1  christos 	rotr	$18,$1,11
   1808  1.1  christos 	and	$19,$1
   1809  1.1  christos 	rotr	$7,$1,25
   1810  1.1  christos 	xor	$17,$18
   1811  1.1  christos 	rotr	$18,$24,2
   1812  1.1  christos 	xor	$19,$3			# Ch(e,f,g)
   1813  1.1  christos 	xor	$17,$7			# Sigma1(e)
   1814  1.1  christos 
   1815  1.1  christos 	rotr	$7,$24,13
   1816  1.1  christos 	addu	$16,$19
   1817  1.1  christos 	lw	$19,80($6)		# K[20]
   1818  1.1  christos 	xor	$7,$18
   1819  1.1  christos 	rotr	$18,$24,22
   1820  1.1  christos 	addu	$16,$17
   1821  1.1  christos 	and	$17,$25,$30
   1822  1.1  christos 	xor	$7,$18			# Sigma0(a)
   1823  1.1  christos 	xor	$18,$25,$30
   1824  1.1  christos #else
   1825  1.1  christos 	addu	$16,$12,$7			# 20
   1826  1.1  christos 	srl	$7,$1,6
   1827  1.1  christos 	xor	$19,$2,$3
   1828  1.1  christos 	sll	$18,$1,7
   1829  1.1  christos 	and	$19,$1
   1830  1.1  christos 	srl	$17,$1,11
   1831  1.1  christos 	xor	$7,$18
   1832  1.1  christos 	sll	$18,$1,21
   1833  1.1  christos 	xor	$7,$17
   1834  1.1  christos 	srl	$17,$1,25
   1835  1.1  christos 	xor	$7,$18
   1836  1.1  christos 	sll	$18,$1,26
   1837  1.1  christos 	xor	$7,$17
   1838  1.1  christos 	xor	$19,$3			# Ch(e,f,g)
   1839  1.1  christos 	xor	$17,$18,$7			# Sigma1(e)
   1840  1.1  christos 
   1841  1.1  christos 	srl	$7,$24,2
   1842  1.1  christos 	addu	$16,$19
   1843  1.1  christos 	lw	$19,80($6)		# K[20]
   1844  1.1  christos 	sll	$18,$24,10
   1845  1.1  christos 	addu	$16,$17
   1846  1.1  christos 	srl	$17,$24,13
   1847  1.1  christos 	xor	$7,$18
   1848  1.1  christos 	sll	$18,$24,19
   1849  1.1  christos 	xor	$7,$17
   1850  1.1  christos 	srl	$17,$24,22
   1851  1.1  christos 	xor	$7,$18
   1852  1.1  christos 	sll	$18,$24,30
   1853  1.1  christos 	xor	$7,$17
   1854  1.1  christos 	and	$17,$25,$30
   1855  1.1  christos 	xor	$7,$18			# Sigma0(a)
   1856  1.1  christos 	xor	$18,$25,$30
   1857  1.1  christos #endif
   1858  1.1  christos 	sw	$12,16($29)	# offload to ring buffer
   1859  1.1  christos 	addu	$7,$17
   1860  1.1  christos 	and	$18,$24
   1861  1.1  christos 	addu	$16,$19			# +=K[20]
   1862  1.1  christos 	addu	$7,$18			# +=Maj(a,b,c)
   1863  1.1  christos 	addu	$31,$16
   1864  1.1  christos 	addu	$7,$16
   1865  1.1  christos 	lw	$15,28($29)	# prefetch from ring buffer
   1866  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1867  1.1  christos 	srl	$19,$14,3		# Xupdate(21)
   1868  1.1  christos 	rotr	$17,$14,7
   1869  1.1  christos 	addu	$13,$22			# +=X[i+9]
   1870  1.1  christos 	xor	$19,$17
   1871  1.1  christos 	rotr	$17,$14,18
   1872  1.1  christos 
   1873  1.1  christos 	srl	$20,$11,10
   1874  1.1  christos 	rotr	$18,$11,17
   1875  1.1  christos 	xor	$19,$17			# sigma0(X[i+1])
   1876  1.1  christos 	rotr	$17,$11,19
   1877  1.1  christos 	xor	$20,$18
   1878  1.1  christos 	addu	$13,$19
   1879  1.1  christos #else
   1880  1.1  christos 	srl	$19,$14,3		# Xupdate(21)
   1881  1.1  christos 	addu	$13,$22			# +=X[i+9]
   1882  1.1  christos 	sll	$18,$14,14
   1883  1.1  christos 	srl	$17,$14,7
   1884  1.1  christos 	xor	$19,$18
   1885  1.1  christos 	sll	$18,11
   1886  1.1  christos 	xor	$19,$17
   1887  1.1  christos 	srl	$17,$14,18
   1888  1.1  christos 	xor	$19,$18
   1889  1.1  christos 
   1890  1.1  christos 	srl	$20,$11,10
   1891  1.1  christos 	xor	$19,$17			# sigma0(X[i+1])
   1892  1.1  christos 	sll	$18,$11,13
   1893  1.1  christos 	addu	$13,$19
   1894  1.1  christos 	srl	$17,$11,17
   1895  1.1  christos 	xor	$20,$18
   1896  1.1  christos 	sll	$18,2
   1897  1.1  christos 	xor	$20,$17
   1898  1.1  christos 	srl	$17,$11,19
   1899  1.1  christos 	xor	$20,$18
   1900  1.1  christos #endif
   1901  1.1  christos 	xor	$20,$17			# sigma1(X[i+14])
   1902  1.1  christos 	addu	$13,$20
   1903  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1904  1.1  christos 	xor	$20,$1,$2			# 21
   1905  1.1  christos 	rotr	$18,$31,6
   1906  1.1  christos 	addu	$17,$13,$3
   1907  1.1  christos 	rotr	$19,$31,11
   1908  1.1  christos 	and	$20,$31
   1909  1.1  christos 	rotr	$3,$31,25
   1910  1.1  christos 	xor	$18,$19
   1911  1.1  christos 	rotr	$19,$7,2
   1912  1.1  christos 	xor	$20,$2			# Ch(e,f,g)
   1913  1.1  christos 	xor	$18,$3			# Sigma1(e)
   1914  1.1  christos 
   1915  1.1  christos 	rotr	$3,$7,13
   1916  1.1  christos 	addu	$17,$20
   1917  1.1  christos 	lw	$20,84($6)		# K[21]
   1918  1.1  christos 	xor	$3,$19
   1919  1.1  christos 	rotr	$19,$7,22
   1920  1.1  christos 	addu	$17,$18
   1921  1.1  christos 	and	$18,$24,$25
   1922  1.1  christos 	xor	$3,$19			# Sigma0(a)
   1923  1.1  christos 	xor	$19,$24,$25
   1924  1.1  christos #else
   1925  1.1  christos 	addu	$17,$13,$3			# 21
   1926  1.1  christos 	srl	$3,$31,6
   1927  1.1  christos 	xor	$20,$1,$2
   1928  1.1  christos 	sll	$19,$31,7
   1929  1.1  christos 	and	$20,$31
   1930  1.1  christos 	srl	$18,$31,11
   1931  1.1  christos 	xor	$3,$19
   1932  1.1  christos 	sll	$19,$31,21
   1933  1.1  christos 	xor	$3,$18
   1934  1.1  christos 	srl	$18,$31,25
   1935  1.1  christos 	xor	$3,$19
   1936  1.1  christos 	sll	$19,$31,26
   1937  1.1  christos 	xor	$3,$18
   1938  1.1  christos 	xor	$20,$2			# Ch(e,f,g)
   1939  1.1  christos 	xor	$18,$19,$3			# Sigma1(e)
   1940  1.1  christos 
   1941  1.1  christos 	srl	$3,$7,2
   1942  1.1  christos 	addu	$17,$20
   1943  1.1  christos 	lw	$20,84($6)		# K[21]
   1944  1.1  christos 	sll	$19,$7,10
   1945  1.1  christos 	addu	$17,$18
   1946  1.1  christos 	srl	$18,$7,13
   1947  1.1  christos 	xor	$3,$19
   1948  1.1  christos 	sll	$19,$7,19
   1949  1.1  christos 	xor	$3,$18
   1950  1.1  christos 	srl	$18,$7,22
   1951  1.1  christos 	xor	$3,$19
   1952  1.1  christos 	sll	$19,$7,30
   1953  1.1  christos 	xor	$3,$18
   1954  1.1  christos 	and	$18,$24,$25
   1955  1.1  christos 	xor	$3,$19			# Sigma0(a)
   1956  1.1  christos 	xor	$19,$24,$25
   1957  1.1  christos #endif
   1958  1.1  christos 	sw	$13,20($29)	# offload to ring buffer
   1959  1.1  christos 	addu	$3,$18
   1960  1.1  christos 	and	$19,$7
   1961  1.1  christos 	addu	$17,$20			# +=K[21]
   1962  1.1  christos 	addu	$3,$19			# +=Maj(a,b,c)
   1963  1.1  christos 	addu	$30,$17
   1964  1.1  christos 	addu	$3,$17
   1965  1.1  christos 	lw	$16,32($29)	# prefetch from ring buffer
   1966  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   1967  1.1  christos 	srl	$20,$15,3		# Xupdate(22)
   1968  1.1  christos 	rotr	$18,$15,7
   1969  1.1  christos 	addu	$14,$23			# +=X[i+9]
   1970  1.1  christos 	xor	$20,$18
   1971  1.1  christos 	rotr	$18,$15,18
   1972  1.1  christos 
   1973  1.1  christos 	srl	$21,$12,10
   1974  1.1  christos 	rotr	$19,$12,17
   1975  1.1  christos 	xor	$20,$18			# sigma0(X[i+1])
   1976  1.1  christos 	rotr	$18,$12,19
   1977  1.1  christos 	xor	$21,$19
   1978  1.1  christos 	addu	$14,$20
   1979  1.1  christos #else
   1980  1.1  christos 	srl	$20,$15,3		# Xupdate(22)
   1981  1.1  christos 	addu	$14,$23			# +=X[i+9]
   1982  1.1  christos 	sll	$19,$15,14
   1983  1.1  christos 	srl	$18,$15,7
   1984  1.1  christos 	xor	$20,$19
   1985  1.1  christos 	sll	$19,11
   1986  1.1  christos 	xor	$20,$18
   1987  1.1  christos 	srl	$18,$15,18
   1988  1.1  christos 	xor	$20,$19
   1989  1.1  christos 
   1990  1.1  christos 	srl	$21,$12,10
   1991  1.1  christos 	xor	$20,$18			# sigma0(X[i+1])
   1992  1.1  christos 	sll	$19,$12,13
   1993  1.1  christos 	addu	$14,$20
   1994  1.1  christos 	srl	$18,$12,17
   1995  1.1  christos 	xor	$21,$19
   1996  1.1  christos 	sll	$19,2
   1997  1.1  christos 	xor	$21,$18
   1998  1.1  christos 	srl	$18,$12,19
   1999  1.1  christos 	xor	$21,$19
   2000  1.1  christos #endif
   2001  1.1  christos 	xor	$21,$18			# sigma1(X[i+14])
   2002  1.1  christos 	addu	$14,$21
   2003  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2004  1.1  christos 	xor	$21,$31,$1			# 22
   2005  1.1  christos 	rotr	$19,$30,6
   2006  1.1  christos 	addu	$18,$14,$2
   2007  1.1  christos 	rotr	$20,$30,11
   2008  1.1  christos 	and	$21,$30
   2009  1.1  christos 	rotr	$2,$30,25
   2010  1.1  christos 	xor	$19,$20
   2011  1.1  christos 	rotr	$20,$3,2
   2012  1.1  christos 	xor	$21,$1			# Ch(e,f,g)
   2013  1.1  christos 	xor	$19,$2			# Sigma1(e)
   2014  1.1  christos 
   2015  1.1  christos 	rotr	$2,$3,13
   2016  1.1  christos 	addu	$18,$21
   2017  1.1  christos 	lw	$21,88($6)		# K[22]
   2018  1.1  christos 	xor	$2,$20
   2019  1.1  christos 	rotr	$20,$3,22
   2020  1.1  christos 	addu	$18,$19
   2021  1.1  christos 	and	$19,$7,$24
   2022  1.1  christos 	xor	$2,$20			# Sigma0(a)
   2023  1.1  christos 	xor	$20,$7,$24
   2024  1.1  christos #else
   2025  1.1  christos 	addu	$18,$14,$2			# 22
   2026  1.1  christos 	srl	$2,$30,6
   2027  1.1  christos 	xor	$21,$31,$1
   2028  1.1  christos 	sll	$20,$30,7
   2029  1.1  christos 	and	$21,$30
   2030  1.1  christos 	srl	$19,$30,11
   2031  1.1  christos 	xor	$2,$20
   2032  1.1  christos 	sll	$20,$30,21
   2033  1.1  christos 	xor	$2,$19
   2034  1.1  christos 	srl	$19,$30,25
   2035  1.1  christos 	xor	$2,$20
   2036  1.1  christos 	sll	$20,$30,26
   2037  1.1  christos 	xor	$2,$19
   2038  1.1  christos 	xor	$21,$1			# Ch(e,f,g)
   2039  1.1  christos 	xor	$19,$20,$2			# Sigma1(e)
   2040  1.1  christos 
   2041  1.1  christos 	srl	$2,$3,2
   2042  1.1  christos 	addu	$18,$21
   2043  1.1  christos 	lw	$21,88($6)		# K[22]
   2044  1.1  christos 	sll	$20,$3,10
   2045  1.1  christos 	addu	$18,$19
   2046  1.1  christos 	srl	$19,$3,13
   2047  1.1  christos 	xor	$2,$20
   2048  1.1  christos 	sll	$20,$3,19
   2049  1.1  christos 	xor	$2,$19
   2050  1.1  christos 	srl	$19,$3,22
   2051  1.1  christos 	xor	$2,$20
   2052  1.1  christos 	sll	$20,$3,30
   2053  1.1  christos 	xor	$2,$19
   2054  1.1  christos 	and	$19,$7,$24
   2055  1.1  christos 	xor	$2,$20			# Sigma0(a)
   2056  1.1  christos 	xor	$20,$7,$24
   2057  1.1  christos #endif
   2058  1.1  christos 	sw	$14,24($29)	# offload to ring buffer
   2059  1.1  christos 	addu	$2,$19
   2060  1.1  christos 	and	$20,$3
   2061  1.1  christos 	addu	$18,$21			# +=K[22]
   2062  1.1  christos 	addu	$2,$20			# +=Maj(a,b,c)
   2063  1.1  christos 	addu	$25,$18
   2064  1.1  christos 	addu	$2,$18
   2065  1.1  christos 	lw	$17,36($29)	# prefetch from ring buffer
   2066  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2067  1.1  christos 	srl	$21,$16,3		# Xupdate(23)
   2068  1.1  christos 	rotr	$19,$16,7
   2069  1.1  christos 	addu	$15,$8			# +=X[i+9]
   2070  1.1  christos 	xor	$21,$19
   2071  1.1  christos 	rotr	$19,$16,18
   2072  1.1  christos 
   2073  1.1  christos 	srl	$22,$13,10
   2074  1.1  christos 	rotr	$20,$13,17
   2075  1.1  christos 	xor	$21,$19			# sigma0(X[i+1])
   2076  1.1  christos 	rotr	$19,$13,19
   2077  1.1  christos 	xor	$22,$20
   2078  1.1  christos 	addu	$15,$21
   2079  1.1  christos #else
   2080  1.1  christos 	srl	$21,$16,3		# Xupdate(23)
   2081  1.1  christos 	addu	$15,$8			# +=X[i+9]
   2082  1.1  christos 	sll	$20,$16,14
   2083  1.1  christos 	srl	$19,$16,7
   2084  1.1  christos 	xor	$21,$20
   2085  1.1  christos 	sll	$20,11
   2086  1.1  christos 	xor	$21,$19
   2087  1.1  christos 	srl	$19,$16,18
   2088  1.1  christos 	xor	$21,$20
   2089  1.1  christos 
   2090  1.1  christos 	srl	$22,$13,10
   2091  1.1  christos 	xor	$21,$19			# sigma0(X[i+1])
   2092  1.1  christos 	sll	$20,$13,13
   2093  1.1  christos 	addu	$15,$21
   2094  1.1  christos 	srl	$19,$13,17
   2095  1.1  christos 	xor	$22,$20
   2096  1.1  christos 	sll	$20,2
   2097  1.1  christos 	xor	$22,$19
   2098  1.1  christos 	srl	$19,$13,19
   2099  1.1  christos 	xor	$22,$20
   2100  1.1  christos #endif
   2101  1.1  christos 	xor	$22,$19			# sigma1(X[i+14])
   2102  1.1  christos 	addu	$15,$22
   2103  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2104  1.1  christos 	xor	$22,$30,$31			# 23
   2105  1.1  christos 	rotr	$20,$25,6
   2106  1.1  christos 	addu	$19,$15,$1
   2107  1.1  christos 	rotr	$21,$25,11
   2108  1.1  christos 	and	$22,$25
   2109  1.1  christos 	rotr	$1,$25,25
   2110  1.1  christos 	xor	$20,$21
   2111  1.1  christos 	rotr	$21,$2,2
   2112  1.1  christos 	xor	$22,$31			# Ch(e,f,g)
   2113  1.1  christos 	xor	$20,$1			# Sigma1(e)
   2114  1.1  christos 
   2115  1.1  christos 	rotr	$1,$2,13
   2116  1.1  christos 	addu	$19,$22
   2117  1.1  christos 	lw	$22,92($6)		# K[23]
   2118  1.1  christos 	xor	$1,$21
   2119  1.1  christos 	rotr	$21,$2,22
   2120  1.1  christos 	addu	$19,$20
   2121  1.1  christos 	and	$20,$3,$7
   2122  1.1  christos 	xor	$1,$21			# Sigma0(a)
   2123  1.1  christos 	xor	$21,$3,$7
   2124  1.1  christos #else
   2125  1.1  christos 	addu	$19,$15,$1			# 23
   2126  1.1  christos 	srl	$1,$25,6
   2127  1.1  christos 	xor	$22,$30,$31
   2128  1.1  christos 	sll	$21,$25,7
   2129  1.1  christos 	and	$22,$25
   2130  1.1  christos 	srl	$20,$25,11
   2131  1.1  christos 	xor	$1,$21
   2132  1.1  christos 	sll	$21,$25,21
   2133  1.1  christos 	xor	$1,$20
   2134  1.1  christos 	srl	$20,$25,25
   2135  1.1  christos 	xor	$1,$21
   2136  1.1  christos 	sll	$21,$25,26
   2137  1.1  christos 	xor	$1,$20
   2138  1.1  christos 	xor	$22,$31			# Ch(e,f,g)
   2139  1.1  christos 	xor	$20,$21,$1			# Sigma1(e)
   2140  1.1  christos 
   2141  1.1  christos 	srl	$1,$2,2
   2142  1.1  christos 	addu	$19,$22
   2143  1.1  christos 	lw	$22,92($6)		# K[23]
   2144  1.1  christos 	sll	$21,$2,10
   2145  1.1  christos 	addu	$19,$20
   2146  1.1  christos 	srl	$20,$2,13
   2147  1.1  christos 	xor	$1,$21
   2148  1.1  christos 	sll	$21,$2,19
   2149  1.1  christos 	xor	$1,$20
   2150  1.1  christos 	srl	$20,$2,22
   2151  1.1  christos 	xor	$1,$21
   2152  1.1  christos 	sll	$21,$2,30
   2153  1.1  christos 	xor	$1,$20
   2154  1.1  christos 	and	$20,$3,$7
   2155  1.1  christos 	xor	$1,$21			# Sigma0(a)
   2156  1.1  christos 	xor	$21,$3,$7
   2157  1.1  christos #endif
   2158  1.1  christos 	sw	$15,28($29)	# offload to ring buffer
   2159  1.1  christos 	addu	$1,$20
   2160  1.1  christos 	and	$21,$2
   2161  1.1  christos 	addu	$19,$22			# +=K[23]
   2162  1.1  christos 	addu	$1,$21			# +=Maj(a,b,c)
   2163  1.1  christos 	addu	$24,$19
   2164  1.1  christos 	addu	$1,$19
   2165  1.1  christos 	lw	$18,40($29)	# prefetch from ring buffer
   2166  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2167  1.1  christos 	srl	$22,$17,3		# Xupdate(24)
   2168  1.1  christos 	rotr	$20,$17,7
   2169  1.1  christos 	addu	$16,$9			# +=X[i+9]
   2170  1.1  christos 	xor	$22,$20
   2171  1.1  christos 	rotr	$20,$17,18
   2172  1.1  christos 
   2173  1.1  christos 	srl	$23,$14,10
   2174  1.1  christos 	rotr	$21,$14,17
   2175  1.1  christos 	xor	$22,$20			# sigma0(X[i+1])
   2176  1.1  christos 	rotr	$20,$14,19
   2177  1.1  christos 	xor	$23,$21
   2178  1.1  christos 	addu	$16,$22
   2179  1.1  christos #else
   2180  1.1  christos 	srl	$22,$17,3		# Xupdate(24)
   2181  1.1  christos 	addu	$16,$9			# +=X[i+9]
   2182  1.1  christos 	sll	$21,$17,14
   2183  1.1  christos 	srl	$20,$17,7
   2184  1.1  christos 	xor	$22,$21
   2185  1.1  christos 	sll	$21,11
   2186  1.1  christos 	xor	$22,$20
   2187  1.1  christos 	srl	$20,$17,18
   2188  1.1  christos 	xor	$22,$21
   2189  1.1  christos 
   2190  1.1  christos 	srl	$23,$14,10
   2191  1.1  christos 	xor	$22,$20			# sigma0(X[i+1])
   2192  1.1  christos 	sll	$21,$14,13
   2193  1.1  christos 	addu	$16,$22
   2194  1.1  christos 	srl	$20,$14,17
   2195  1.1  christos 	xor	$23,$21
   2196  1.1  christos 	sll	$21,2
   2197  1.1  christos 	xor	$23,$20
   2198  1.1  christos 	srl	$20,$14,19
   2199  1.1  christos 	xor	$23,$21
   2200  1.1  christos #endif
   2201  1.1  christos 	xor	$23,$20			# sigma1(X[i+14])
   2202  1.1  christos 	addu	$16,$23
   2203  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2204  1.1  christos 	xor	$23,$25,$30			# 24
   2205  1.1  christos 	rotr	$21,$24,6
   2206  1.1  christos 	addu	$20,$16,$31
   2207  1.1  christos 	rotr	$22,$24,11
   2208  1.1  christos 	and	$23,$24
   2209  1.1  christos 	rotr	$31,$24,25
   2210  1.1  christos 	xor	$21,$22
   2211  1.1  christos 	rotr	$22,$1,2
   2212  1.1  christos 	xor	$23,$30			# Ch(e,f,g)
   2213  1.1  christos 	xor	$21,$31			# Sigma1(e)
   2214  1.1  christos 
   2215  1.1  christos 	rotr	$31,$1,13
   2216  1.1  christos 	addu	$20,$23
   2217  1.1  christos 	lw	$23,96($6)		# K[24]
   2218  1.1  christos 	xor	$31,$22
   2219  1.1  christos 	rotr	$22,$1,22
   2220  1.1  christos 	addu	$20,$21
   2221  1.1  christos 	and	$21,$2,$3
   2222  1.1  christos 	xor	$31,$22			# Sigma0(a)
   2223  1.1  christos 	xor	$22,$2,$3
   2224  1.1  christos #else
   2225  1.1  christos 	addu	$20,$16,$31			# 24
   2226  1.1  christos 	srl	$31,$24,6
   2227  1.1  christos 	xor	$23,$25,$30
   2228  1.1  christos 	sll	$22,$24,7
   2229  1.1  christos 	and	$23,$24
   2230  1.1  christos 	srl	$21,$24,11
   2231  1.1  christos 	xor	$31,$22
   2232  1.1  christos 	sll	$22,$24,21
   2233  1.1  christos 	xor	$31,$21
   2234  1.1  christos 	srl	$21,$24,25
   2235  1.1  christos 	xor	$31,$22
   2236  1.1  christos 	sll	$22,$24,26
   2237  1.1  christos 	xor	$31,$21
   2238  1.1  christos 	xor	$23,$30			# Ch(e,f,g)
   2239  1.1  christos 	xor	$21,$22,$31			# Sigma1(e)
   2240  1.1  christos 
   2241  1.1  christos 	srl	$31,$1,2
   2242  1.1  christos 	addu	$20,$23
   2243  1.1  christos 	lw	$23,96($6)		# K[24]
   2244  1.1  christos 	sll	$22,$1,10
   2245  1.1  christos 	addu	$20,$21
   2246  1.1  christos 	srl	$21,$1,13
   2247  1.1  christos 	xor	$31,$22
   2248  1.1  christos 	sll	$22,$1,19
   2249  1.1  christos 	xor	$31,$21
   2250  1.1  christos 	srl	$21,$1,22
   2251  1.1  christos 	xor	$31,$22
   2252  1.1  christos 	sll	$22,$1,30
   2253  1.1  christos 	xor	$31,$21
   2254  1.1  christos 	and	$21,$2,$3
   2255  1.1  christos 	xor	$31,$22			# Sigma0(a)
   2256  1.1  christos 	xor	$22,$2,$3
   2257  1.1  christos #endif
   2258  1.1  christos 	sw	$16,32($29)	# offload to ring buffer
   2259  1.1  christos 	addu	$31,$21
   2260  1.1  christos 	and	$22,$1
   2261  1.1  christos 	addu	$20,$23			# +=K[24]
   2262  1.1  christos 	addu	$31,$22			# +=Maj(a,b,c)
   2263  1.1  christos 	addu	$7,$20
   2264  1.1  christos 	addu	$31,$20
   2265  1.1  christos 	lw	$19,44($29)	# prefetch from ring buffer
   2266  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2267  1.1  christos 	srl	$23,$18,3		# Xupdate(25)
   2268  1.1  christos 	rotr	$21,$18,7
   2269  1.1  christos 	addu	$17,$10			# +=X[i+9]
   2270  1.1  christos 	xor	$23,$21
   2271  1.1  christos 	rotr	$21,$18,18
   2272  1.1  christos 
   2273  1.1  christos 	srl	$8,$15,10
   2274  1.1  christos 	rotr	$22,$15,17
   2275  1.1  christos 	xor	$23,$21			# sigma0(X[i+1])
   2276  1.1  christos 	rotr	$21,$15,19
   2277  1.1  christos 	xor	$8,$22
   2278  1.1  christos 	addu	$17,$23
   2279  1.1  christos #else
   2280  1.1  christos 	srl	$23,$18,3		# Xupdate(25)
   2281  1.1  christos 	addu	$17,$10			# +=X[i+9]
   2282  1.1  christos 	sll	$22,$18,14
   2283  1.1  christos 	srl	$21,$18,7
   2284  1.1  christos 	xor	$23,$22
   2285  1.1  christos 	sll	$22,11
   2286  1.1  christos 	xor	$23,$21
   2287  1.1  christos 	srl	$21,$18,18
   2288  1.1  christos 	xor	$23,$22
   2289  1.1  christos 
   2290  1.1  christos 	srl	$8,$15,10
   2291  1.1  christos 	xor	$23,$21			# sigma0(X[i+1])
   2292  1.1  christos 	sll	$22,$15,13
   2293  1.1  christos 	addu	$17,$23
   2294  1.1  christos 	srl	$21,$15,17
   2295  1.1  christos 	xor	$8,$22
   2296  1.1  christos 	sll	$22,2
   2297  1.1  christos 	xor	$8,$21
   2298  1.1  christos 	srl	$21,$15,19
   2299  1.1  christos 	xor	$8,$22
   2300  1.1  christos #endif
   2301  1.1  christos 	xor	$8,$21			# sigma1(X[i+14])
   2302  1.1  christos 	addu	$17,$8
   2303  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2304  1.1  christos 	xor	$8,$24,$25			# 25
   2305  1.1  christos 	rotr	$22,$7,6
   2306  1.1  christos 	addu	$21,$17,$30
   2307  1.1  christos 	rotr	$23,$7,11
   2308  1.1  christos 	and	$8,$7
   2309  1.1  christos 	rotr	$30,$7,25
   2310  1.1  christos 	xor	$22,$23
   2311  1.1  christos 	rotr	$23,$31,2
   2312  1.1  christos 	xor	$8,$25			# Ch(e,f,g)
   2313  1.1  christos 	xor	$22,$30			# Sigma1(e)
   2314  1.1  christos 
   2315  1.1  christos 	rotr	$30,$31,13
   2316  1.1  christos 	addu	$21,$8
   2317  1.1  christos 	lw	$8,100($6)		# K[25]
   2318  1.1  christos 	xor	$30,$23
   2319  1.1  christos 	rotr	$23,$31,22
   2320  1.1  christos 	addu	$21,$22
   2321  1.1  christos 	and	$22,$1,$2
   2322  1.1  christos 	xor	$30,$23			# Sigma0(a)
   2323  1.1  christos 	xor	$23,$1,$2
   2324  1.1  christos #else
   2325  1.1  christos 	addu	$21,$17,$30			# 25
   2326  1.1  christos 	srl	$30,$7,6
   2327  1.1  christos 	xor	$8,$24,$25
   2328  1.1  christos 	sll	$23,$7,7
   2329  1.1  christos 	and	$8,$7
   2330  1.1  christos 	srl	$22,$7,11
   2331  1.1  christos 	xor	$30,$23
   2332  1.1  christos 	sll	$23,$7,21
   2333  1.1  christos 	xor	$30,$22
   2334  1.1  christos 	srl	$22,$7,25
   2335  1.1  christos 	xor	$30,$23
   2336  1.1  christos 	sll	$23,$7,26
   2337  1.1  christos 	xor	$30,$22
   2338  1.1  christos 	xor	$8,$25			# Ch(e,f,g)
   2339  1.1  christos 	xor	$22,$23,$30			# Sigma1(e)
   2340  1.1  christos 
   2341  1.1  christos 	srl	$30,$31,2
   2342  1.1  christos 	addu	$21,$8
   2343  1.1  christos 	lw	$8,100($6)		# K[25]
   2344  1.1  christos 	sll	$23,$31,10
   2345  1.1  christos 	addu	$21,$22
   2346  1.1  christos 	srl	$22,$31,13
   2347  1.1  christos 	xor	$30,$23
   2348  1.1  christos 	sll	$23,$31,19
   2349  1.1  christos 	xor	$30,$22
   2350  1.1  christos 	srl	$22,$31,22
   2351  1.1  christos 	xor	$30,$23
   2352  1.1  christos 	sll	$23,$31,30
   2353  1.1  christos 	xor	$30,$22
   2354  1.1  christos 	and	$22,$1,$2
   2355  1.1  christos 	xor	$30,$23			# Sigma0(a)
   2356  1.1  christos 	xor	$23,$1,$2
   2357  1.1  christos #endif
   2358  1.1  christos 	sw	$17,36($29)	# offload to ring buffer
   2359  1.1  christos 	addu	$30,$22
   2360  1.1  christos 	and	$23,$31
   2361  1.1  christos 	addu	$21,$8			# +=K[25]
   2362  1.1  christos 	addu	$30,$23			# +=Maj(a,b,c)
   2363  1.1  christos 	addu	$3,$21
   2364  1.1  christos 	addu	$30,$21
   2365  1.1  christos 	lw	$20,48($29)	# prefetch from ring buffer
   2366  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2367  1.1  christos 	srl	$8,$19,3		# Xupdate(26)
   2368  1.1  christos 	rotr	$22,$19,7
   2369  1.1  christos 	addu	$18,$11			# +=X[i+9]
   2370  1.1  christos 	xor	$8,$22
   2371  1.1  christos 	rotr	$22,$19,18
   2372  1.1  christos 
   2373  1.1  christos 	srl	$9,$16,10
   2374  1.1  christos 	rotr	$23,$16,17
   2375  1.1  christos 	xor	$8,$22			# sigma0(X[i+1])
   2376  1.1  christos 	rotr	$22,$16,19
   2377  1.1  christos 	xor	$9,$23
   2378  1.1  christos 	addu	$18,$8
   2379  1.1  christos #else
   2380  1.1  christos 	srl	$8,$19,3		# Xupdate(26)
   2381  1.1  christos 	addu	$18,$11			# +=X[i+9]
   2382  1.1  christos 	sll	$23,$19,14
   2383  1.1  christos 	srl	$22,$19,7
   2384  1.1  christos 	xor	$8,$23
   2385  1.1  christos 	sll	$23,11
   2386  1.1  christos 	xor	$8,$22
   2387  1.1  christos 	srl	$22,$19,18
   2388  1.1  christos 	xor	$8,$23
   2389  1.1  christos 
   2390  1.1  christos 	srl	$9,$16,10
   2391  1.1  christos 	xor	$8,$22			# sigma0(X[i+1])
   2392  1.1  christos 	sll	$23,$16,13
   2393  1.1  christos 	addu	$18,$8
   2394  1.1  christos 	srl	$22,$16,17
   2395  1.1  christos 	xor	$9,$23
   2396  1.1  christos 	sll	$23,2
   2397  1.1  christos 	xor	$9,$22
   2398  1.1  christos 	srl	$22,$16,19
   2399  1.1  christos 	xor	$9,$23
   2400  1.1  christos #endif
   2401  1.1  christos 	xor	$9,$22			# sigma1(X[i+14])
   2402  1.1  christos 	addu	$18,$9
   2403  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2404  1.1  christos 	xor	$9,$7,$24			# 26
   2405  1.1  christos 	rotr	$23,$3,6
   2406  1.1  christos 	addu	$22,$18,$25
   2407  1.1  christos 	rotr	$8,$3,11
   2408  1.1  christos 	and	$9,$3
   2409  1.1  christos 	rotr	$25,$3,25
   2410  1.1  christos 	xor	$23,$8
   2411  1.1  christos 	rotr	$8,$30,2
   2412  1.1  christos 	xor	$9,$24			# Ch(e,f,g)
   2413  1.1  christos 	xor	$23,$25			# Sigma1(e)
   2414  1.1  christos 
   2415  1.1  christos 	rotr	$25,$30,13
   2416  1.1  christos 	addu	$22,$9
   2417  1.1  christos 	lw	$9,104($6)		# K[26]
   2418  1.1  christos 	xor	$25,$8
   2419  1.1  christos 	rotr	$8,$30,22
   2420  1.1  christos 	addu	$22,$23
   2421  1.1  christos 	and	$23,$31,$1
   2422  1.1  christos 	xor	$25,$8			# Sigma0(a)
   2423  1.1  christos 	xor	$8,$31,$1
   2424  1.1  christos #else
   2425  1.1  christos 	addu	$22,$18,$25			# 26
   2426  1.1  christos 	srl	$25,$3,6
   2427  1.1  christos 	xor	$9,$7,$24
   2428  1.1  christos 	sll	$8,$3,7
   2429  1.1  christos 	and	$9,$3
   2430  1.1  christos 	srl	$23,$3,11
   2431  1.1  christos 	xor	$25,$8
   2432  1.1  christos 	sll	$8,$3,21
   2433  1.1  christos 	xor	$25,$23
   2434  1.1  christos 	srl	$23,$3,25
   2435  1.1  christos 	xor	$25,$8
   2436  1.1  christos 	sll	$8,$3,26
   2437  1.1  christos 	xor	$25,$23
   2438  1.1  christos 	xor	$9,$24			# Ch(e,f,g)
   2439  1.1  christos 	xor	$23,$8,$25			# Sigma1(e)
   2440  1.1  christos 
   2441  1.1  christos 	srl	$25,$30,2
   2442  1.1  christos 	addu	$22,$9
   2443  1.1  christos 	lw	$9,104($6)		# K[26]
   2444  1.1  christos 	sll	$8,$30,10
   2445  1.1  christos 	addu	$22,$23
   2446  1.1  christos 	srl	$23,$30,13
   2447  1.1  christos 	xor	$25,$8
   2448  1.1  christos 	sll	$8,$30,19
   2449  1.1  christos 	xor	$25,$23
   2450  1.1  christos 	srl	$23,$30,22
   2451  1.1  christos 	xor	$25,$8
   2452  1.1  christos 	sll	$8,$30,30
   2453  1.1  christos 	xor	$25,$23
   2454  1.1  christos 	and	$23,$31,$1
   2455  1.1  christos 	xor	$25,$8			# Sigma0(a)
   2456  1.1  christos 	xor	$8,$31,$1
   2457  1.1  christos #endif
   2458  1.1  christos 	sw	$18,40($29)	# offload to ring buffer
   2459  1.1  christos 	addu	$25,$23
   2460  1.1  christos 	and	$8,$30
   2461  1.1  christos 	addu	$22,$9			# +=K[26]
   2462  1.1  christos 	addu	$25,$8			# +=Maj(a,b,c)
   2463  1.1  christos 	addu	$2,$22
   2464  1.1  christos 	addu	$25,$22
   2465  1.1  christos 	lw	$21,52($29)	# prefetch from ring buffer
   2466  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2467  1.1  christos 	srl	$9,$20,3		# Xupdate(27)
   2468  1.1  christos 	rotr	$23,$20,7
   2469  1.1  christos 	addu	$19,$12			# +=X[i+9]
   2470  1.1  christos 	xor	$9,$23
   2471  1.1  christos 	rotr	$23,$20,18
   2472  1.1  christos 
   2473  1.1  christos 	srl	$10,$17,10
   2474  1.1  christos 	rotr	$8,$17,17
   2475  1.1  christos 	xor	$9,$23			# sigma0(X[i+1])
   2476  1.1  christos 	rotr	$23,$17,19
   2477  1.1  christos 	xor	$10,$8
   2478  1.1  christos 	addu	$19,$9
   2479  1.1  christos #else
   2480  1.1  christos 	srl	$9,$20,3		# Xupdate(27)
   2481  1.1  christos 	addu	$19,$12			# +=X[i+9]
   2482  1.1  christos 	sll	$8,$20,14
   2483  1.1  christos 	srl	$23,$20,7
   2484  1.1  christos 	xor	$9,$8
   2485  1.1  christos 	sll	$8,11
   2486  1.1  christos 	xor	$9,$23
   2487  1.1  christos 	srl	$23,$20,18
   2488  1.1  christos 	xor	$9,$8
   2489  1.1  christos 
   2490  1.1  christos 	srl	$10,$17,10
   2491  1.1  christos 	xor	$9,$23			# sigma0(X[i+1])
   2492  1.1  christos 	sll	$8,$17,13
   2493  1.1  christos 	addu	$19,$9
   2494  1.1  christos 	srl	$23,$17,17
   2495  1.1  christos 	xor	$10,$8
   2496  1.1  christos 	sll	$8,2
   2497  1.1  christos 	xor	$10,$23
   2498  1.1  christos 	srl	$23,$17,19
   2499  1.1  christos 	xor	$10,$8
   2500  1.1  christos #endif
   2501  1.1  christos 	xor	$10,$23			# sigma1(X[i+14])
   2502  1.1  christos 	addu	$19,$10
   2503  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2504  1.1  christos 	xor	$10,$3,$7			# 27
   2505  1.1  christos 	rotr	$8,$2,6
   2506  1.1  christos 	addu	$23,$19,$24
   2507  1.1  christos 	rotr	$9,$2,11
   2508  1.1  christos 	and	$10,$2
   2509  1.1  christos 	rotr	$24,$2,25
   2510  1.1  christos 	xor	$8,$9
   2511  1.1  christos 	rotr	$9,$25,2
   2512  1.1  christos 	xor	$10,$7			# Ch(e,f,g)
   2513  1.1  christos 	xor	$8,$24			# Sigma1(e)
   2514  1.1  christos 
   2515  1.1  christos 	rotr	$24,$25,13
   2516  1.1  christos 	addu	$23,$10
   2517  1.1  christos 	lw	$10,108($6)		# K[27]
   2518  1.1  christos 	xor	$24,$9
   2519  1.1  christos 	rotr	$9,$25,22
   2520  1.1  christos 	addu	$23,$8
   2521  1.1  christos 	and	$8,$30,$31
   2522  1.1  christos 	xor	$24,$9			# Sigma0(a)
   2523  1.1  christos 	xor	$9,$30,$31
   2524  1.1  christos #else
   2525  1.1  christos 	addu	$23,$19,$24			# 27
   2526  1.1  christos 	srl	$24,$2,6
   2527  1.1  christos 	xor	$10,$3,$7
   2528  1.1  christos 	sll	$9,$2,7
   2529  1.1  christos 	and	$10,$2
   2530  1.1  christos 	srl	$8,$2,11
   2531  1.1  christos 	xor	$24,$9
   2532  1.1  christos 	sll	$9,$2,21
   2533  1.1  christos 	xor	$24,$8
   2534  1.1  christos 	srl	$8,$2,25
   2535  1.1  christos 	xor	$24,$9
   2536  1.1  christos 	sll	$9,$2,26
   2537  1.1  christos 	xor	$24,$8
   2538  1.1  christos 	xor	$10,$7			# Ch(e,f,g)
   2539  1.1  christos 	xor	$8,$9,$24			# Sigma1(e)
   2540  1.1  christos 
   2541  1.1  christos 	srl	$24,$25,2
   2542  1.1  christos 	addu	$23,$10
   2543  1.1  christos 	lw	$10,108($6)		# K[27]
   2544  1.1  christos 	sll	$9,$25,10
   2545  1.1  christos 	addu	$23,$8
   2546  1.1  christos 	srl	$8,$25,13
   2547  1.1  christos 	xor	$24,$9
   2548  1.1  christos 	sll	$9,$25,19
   2549  1.1  christos 	xor	$24,$8
   2550  1.1  christos 	srl	$8,$25,22
   2551  1.1  christos 	xor	$24,$9
   2552  1.1  christos 	sll	$9,$25,30
   2553  1.1  christos 	xor	$24,$8
   2554  1.1  christos 	and	$8,$30,$31
   2555  1.1  christos 	xor	$24,$9			# Sigma0(a)
   2556  1.1  christos 	xor	$9,$30,$31
   2557  1.1  christos #endif
   2558  1.1  christos 	sw	$19,44($29)	# offload to ring buffer
   2559  1.1  christos 	addu	$24,$8
   2560  1.1  christos 	and	$9,$25
   2561  1.1  christos 	addu	$23,$10			# +=K[27]
   2562  1.1  christos 	addu	$24,$9			# +=Maj(a,b,c)
   2563  1.1  christos 	addu	$1,$23
   2564  1.1  christos 	addu	$24,$23
   2565  1.1  christos 	lw	$22,56($29)	# prefetch from ring buffer
   2566  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2567  1.1  christos 	srl	$10,$21,3		# Xupdate(28)
   2568  1.1  christos 	rotr	$8,$21,7
   2569  1.1  christos 	addu	$20,$13			# +=X[i+9]
   2570  1.1  christos 	xor	$10,$8
   2571  1.1  christos 	rotr	$8,$21,18
   2572  1.1  christos 
   2573  1.1  christos 	srl	$11,$18,10
   2574  1.1  christos 	rotr	$9,$18,17
   2575  1.1  christos 	xor	$10,$8			# sigma0(X[i+1])
   2576  1.1  christos 	rotr	$8,$18,19
   2577  1.1  christos 	xor	$11,$9
   2578  1.1  christos 	addu	$20,$10
   2579  1.1  christos #else
   2580  1.1  christos 	srl	$10,$21,3		# Xupdate(28)
   2581  1.1  christos 	addu	$20,$13			# +=X[i+9]
   2582  1.1  christos 	sll	$9,$21,14
   2583  1.1  christos 	srl	$8,$21,7
   2584  1.1  christos 	xor	$10,$9
   2585  1.1  christos 	sll	$9,11
   2586  1.1  christos 	xor	$10,$8
   2587  1.1  christos 	srl	$8,$21,18
   2588  1.1  christos 	xor	$10,$9
   2589  1.1  christos 
   2590  1.1  christos 	srl	$11,$18,10
   2591  1.1  christos 	xor	$10,$8			# sigma0(X[i+1])
   2592  1.1  christos 	sll	$9,$18,13
   2593  1.1  christos 	addu	$20,$10
   2594  1.1  christos 	srl	$8,$18,17
   2595  1.1  christos 	xor	$11,$9
   2596  1.1  christos 	sll	$9,2
   2597  1.1  christos 	xor	$11,$8
   2598  1.1  christos 	srl	$8,$18,19
   2599  1.1  christos 	xor	$11,$9
   2600  1.1  christos #endif
   2601  1.1  christos 	xor	$11,$8			# sigma1(X[i+14])
   2602  1.1  christos 	addu	$20,$11
   2603  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2604  1.1  christos 	xor	$11,$2,$3			# 28
   2605  1.1  christos 	rotr	$9,$1,6
   2606  1.1  christos 	addu	$8,$20,$7
   2607  1.1  christos 	rotr	$10,$1,11
   2608  1.1  christos 	and	$11,$1
   2609  1.1  christos 	rotr	$7,$1,25
   2610  1.1  christos 	xor	$9,$10
   2611  1.1  christos 	rotr	$10,$24,2
   2612  1.1  christos 	xor	$11,$3			# Ch(e,f,g)
   2613  1.1  christos 	xor	$9,$7			# Sigma1(e)
   2614  1.1  christos 
   2615  1.1  christos 	rotr	$7,$24,13
   2616  1.1  christos 	addu	$8,$11
   2617  1.1  christos 	lw	$11,112($6)		# K[28]
   2618  1.1  christos 	xor	$7,$10
   2619  1.1  christos 	rotr	$10,$24,22
   2620  1.1  christos 	addu	$8,$9
   2621  1.1  christos 	and	$9,$25,$30
   2622  1.1  christos 	xor	$7,$10			# Sigma0(a)
   2623  1.1  christos 	xor	$10,$25,$30
   2624  1.1  christos #else
   2625  1.1  christos 	addu	$8,$20,$7			# 28
   2626  1.1  christos 	srl	$7,$1,6
   2627  1.1  christos 	xor	$11,$2,$3
   2628  1.1  christos 	sll	$10,$1,7
   2629  1.1  christos 	and	$11,$1
   2630  1.1  christos 	srl	$9,$1,11
   2631  1.1  christos 	xor	$7,$10
   2632  1.1  christos 	sll	$10,$1,21
   2633  1.1  christos 	xor	$7,$9
   2634  1.1  christos 	srl	$9,$1,25
   2635  1.1  christos 	xor	$7,$10
   2636  1.1  christos 	sll	$10,$1,26
   2637  1.1  christos 	xor	$7,$9
   2638  1.1  christos 	xor	$11,$3			# Ch(e,f,g)
   2639  1.1  christos 	xor	$9,$10,$7			# Sigma1(e)
   2640  1.1  christos 
   2641  1.1  christos 	srl	$7,$24,2
   2642  1.1  christos 	addu	$8,$11
   2643  1.1  christos 	lw	$11,112($6)		# K[28]
   2644  1.1  christos 	sll	$10,$24,10
   2645  1.1  christos 	addu	$8,$9
   2646  1.1  christos 	srl	$9,$24,13
   2647  1.1  christos 	xor	$7,$10
   2648  1.1  christos 	sll	$10,$24,19
   2649  1.1  christos 	xor	$7,$9
   2650  1.1  christos 	srl	$9,$24,22
   2651  1.1  christos 	xor	$7,$10
   2652  1.1  christos 	sll	$10,$24,30
   2653  1.1  christos 	xor	$7,$9
   2654  1.1  christos 	and	$9,$25,$30
   2655  1.1  christos 	xor	$7,$10			# Sigma0(a)
   2656  1.1  christos 	xor	$10,$25,$30
   2657  1.1  christos #endif
   2658  1.1  christos 	sw	$20,48($29)	# offload to ring buffer
   2659  1.1  christos 	addu	$7,$9
   2660  1.1  christos 	and	$10,$24
   2661  1.1  christos 	addu	$8,$11			# +=K[28]
   2662  1.1  christos 	addu	$7,$10			# +=Maj(a,b,c)
   2663  1.1  christos 	addu	$31,$8
   2664  1.1  christos 	addu	$7,$8
   2665  1.1  christos 	lw	$23,60($29)	# prefetch from ring buffer
   2666  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2667  1.1  christos 	srl	$11,$22,3		# Xupdate(29)
   2668  1.1  christos 	rotr	$9,$22,7
   2669  1.1  christos 	addu	$21,$14			# +=X[i+9]
   2670  1.1  christos 	xor	$11,$9
   2671  1.1  christos 	rotr	$9,$22,18
   2672  1.1  christos 
   2673  1.1  christos 	srl	$12,$19,10
   2674  1.1  christos 	rotr	$10,$19,17
   2675  1.1  christos 	xor	$11,$9			# sigma0(X[i+1])
   2676  1.1  christos 	rotr	$9,$19,19
   2677  1.1  christos 	xor	$12,$10
   2678  1.1  christos 	addu	$21,$11
   2679  1.1  christos #else
   2680  1.1  christos 	srl	$11,$22,3		# Xupdate(29)
   2681  1.1  christos 	addu	$21,$14			# +=X[i+9]
   2682  1.1  christos 	sll	$10,$22,14
   2683  1.1  christos 	srl	$9,$22,7
   2684  1.1  christos 	xor	$11,$10
   2685  1.1  christos 	sll	$10,11
   2686  1.1  christos 	xor	$11,$9
   2687  1.1  christos 	srl	$9,$22,18
   2688  1.1  christos 	xor	$11,$10
   2689  1.1  christos 
   2690  1.1  christos 	srl	$12,$19,10
   2691  1.1  christos 	xor	$11,$9			# sigma0(X[i+1])
   2692  1.1  christos 	sll	$10,$19,13
   2693  1.1  christos 	addu	$21,$11
   2694  1.1  christos 	srl	$9,$19,17
   2695  1.1  christos 	xor	$12,$10
   2696  1.1  christos 	sll	$10,2
   2697  1.1  christos 	xor	$12,$9
   2698  1.1  christos 	srl	$9,$19,19
   2699  1.1  christos 	xor	$12,$10
   2700  1.1  christos #endif
   2701  1.1  christos 	xor	$12,$9			# sigma1(X[i+14])
   2702  1.1  christos 	addu	$21,$12
   2703  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2704  1.1  christos 	xor	$12,$1,$2			# 29
   2705  1.1  christos 	rotr	$10,$31,6
   2706  1.1  christos 	addu	$9,$21,$3
   2707  1.1  christos 	rotr	$11,$31,11
   2708  1.1  christos 	and	$12,$31
   2709  1.1  christos 	rotr	$3,$31,25
   2710  1.1  christos 	xor	$10,$11
   2711  1.1  christos 	rotr	$11,$7,2
   2712  1.1  christos 	xor	$12,$2			# Ch(e,f,g)
   2713  1.1  christos 	xor	$10,$3			# Sigma1(e)
   2714  1.1  christos 
   2715  1.1  christos 	rotr	$3,$7,13
   2716  1.1  christos 	addu	$9,$12
   2717  1.1  christos 	lw	$12,116($6)		# K[29]
   2718  1.1  christos 	xor	$3,$11
   2719  1.1  christos 	rotr	$11,$7,22
   2720  1.1  christos 	addu	$9,$10
   2721  1.1  christos 	and	$10,$24,$25
   2722  1.1  christos 	xor	$3,$11			# Sigma0(a)
   2723  1.1  christos 	xor	$11,$24,$25
   2724  1.1  christos #else
   2725  1.1  christos 	addu	$9,$21,$3			# 29
   2726  1.1  christos 	srl	$3,$31,6
   2727  1.1  christos 	xor	$12,$1,$2
   2728  1.1  christos 	sll	$11,$31,7
   2729  1.1  christos 	and	$12,$31
   2730  1.1  christos 	srl	$10,$31,11
   2731  1.1  christos 	xor	$3,$11
   2732  1.1  christos 	sll	$11,$31,21
   2733  1.1  christos 	xor	$3,$10
   2734  1.1  christos 	srl	$10,$31,25
   2735  1.1  christos 	xor	$3,$11
   2736  1.1  christos 	sll	$11,$31,26
   2737  1.1  christos 	xor	$3,$10
   2738  1.1  christos 	xor	$12,$2			# Ch(e,f,g)
   2739  1.1  christos 	xor	$10,$11,$3			# Sigma1(e)
   2740  1.1  christos 
   2741  1.1  christos 	srl	$3,$7,2
   2742  1.1  christos 	addu	$9,$12
   2743  1.1  christos 	lw	$12,116($6)		# K[29]
   2744  1.1  christos 	sll	$11,$7,10
   2745  1.1  christos 	addu	$9,$10
   2746  1.1  christos 	srl	$10,$7,13
   2747  1.1  christos 	xor	$3,$11
   2748  1.1  christos 	sll	$11,$7,19
   2749  1.1  christos 	xor	$3,$10
   2750  1.1  christos 	srl	$10,$7,22
   2751  1.1  christos 	xor	$3,$11
   2752  1.1  christos 	sll	$11,$7,30
   2753  1.1  christos 	xor	$3,$10
   2754  1.1  christos 	and	$10,$24,$25
   2755  1.1  christos 	xor	$3,$11			# Sigma0(a)
   2756  1.1  christos 	xor	$11,$24,$25
   2757  1.1  christos #endif
   2758  1.1  christos 	sw	$21,52($29)	# offload to ring buffer
   2759  1.1  christos 	addu	$3,$10
   2760  1.1  christos 	and	$11,$7
   2761  1.1  christos 	addu	$9,$12			# +=K[29]
   2762  1.1  christos 	addu	$3,$11			# +=Maj(a,b,c)
   2763  1.1  christos 	addu	$30,$9
   2764  1.1  christos 	addu	$3,$9
   2765  1.1  christos 	lw	$8,0($29)	# prefetch from ring buffer
   2766  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2767  1.1  christos 	srl	$12,$23,3		# Xupdate(30)
   2768  1.1  christos 	rotr	$10,$23,7
   2769  1.1  christos 	addu	$22,$15			# +=X[i+9]
   2770  1.1  christos 	xor	$12,$10
   2771  1.1  christos 	rotr	$10,$23,18
   2772  1.1  christos 
   2773  1.1  christos 	srl	$13,$20,10
   2774  1.1  christos 	rotr	$11,$20,17
   2775  1.1  christos 	xor	$12,$10			# sigma0(X[i+1])
   2776  1.1  christos 	rotr	$10,$20,19
   2777  1.1  christos 	xor	$13,$11
   2778  1.1  christos 	addu	$22,$12
   2779  1.1  christos #else
   2780  1.1  christos 	srl	$12,$23,3		# Xupdate(30)
   2781  1.1  christos 	addu	$22,$15			# +=X[i+9]
   2782  1.1  christos 	sll	$11,$23,14
   2783  1.1  christos 	srl	$10,$23,7
   2784  1.1  christos 	xor	$12,$11
   2785  1.1  christos 	sll	$11,11
   2786  1.1  christos 	xor	$12,$10
   2787  1.1  christos 	srl	$10,$23,18
   2788  1.1  christos 	xor	$12,$11
   2789  1.1  christos 
   2790  1.1  christos 	srl	$13,$20,10
   2791  1.1  christos 	xor	$12,$10			# sigma0(X[i+1])
   2792  1.1  christos 	sll	$11,$20,13
   2793  1.1  christos 	addu	$22,$12
   2794  1.1  christos 	srl	$10,$20,17
   2795  1.1  christos 	xor	$13,$11
   2796  1.1  christos 	sll	$11,2
   2797  1.1  christos 	xor	$13,$10
   2798  1.1  christos 	srl	$10,$20,19
   2799  1.1  christos 	xor	$13,$11
   2800  1.1  christos #endif
   2801  1.1  christos 	xor	$13,$10			# sigma1(X[i+14])
   2802  1.1  christos 	addu	$22,$13
   2803  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2804  1.1  christos 	xor	$13,$31,$1			# 30
   2805  1.1  christos 	rotr	$11,$30,6
   2806  1.1  christos 	addu	$10,$22,$2
   2807  1.1  christos 	rotr	$12,$30,11
   2808  1.1  christos 	and	$13,$30
   2809  1.1  christos 	rotr	$2,$30,25
   2810  1.1  christos 	xor	$11,$12
   2811  1.1  christos 	rotr	$12,$3,2
   2812  1.1  christos 	xor	$13,$1			# Ch(e,f,g)
   2813  1.1  christos 	xor	$11,$2			# Sigma1(e)
   2814  1.1  christos 
   2815  1.1  christos 	rotr	$2,$3,13
   2816  1.1  christos 	addu	$10,$13
   2817  1.1  christos 	lw	$13,120($6)		# K[30]
   2818  1.1  christos 	xor	$2,$12
   2819  1.1  christos 	rotr	$12,$3,22
   2820  1.1  christos 	addu	$10,$11
   2821  1.1  christos 	and	$11,$7,$24
   2822  1.1  christos 	xor	$2,$12			# Sigma0(a)
   2823  1.1  christos 	xor	$12,$7,$24
   2824  1.1  christos #else
   2825  1.1  christos 	addu	$10,$22,$2			# 30
   2826  1.1  christos 	srl	$2,$30,6
   2827  1.1  christos 	xor	$13,$31,$1
   2828  1.1  christos 	sll	$12,$30,7
   2829  1.1  christos 	and	$13,$30
   2830  1.1  christos 	srl	$11,$30,11
   2831  1.1  christos 	xor	$2,$12
   2832  1.1  christos 	sll	$12,$30,21
   2833  1.1  christos 	xor	$2,$11
   2834  1.1  christos 	srl	$11,$30,25
   2835  1.1  christos 	xor	$2,$12
   2836  1.1  christos 	sll	$12,$30,26
   2837  1.1  christos 	xor	$2,$11
   2838  1.1  christos 	xor	$13,$1			# Ch(e,f,g)
   2839  1.1  christos 	xor	$11,$12,$2			# Sigma1(e)
   2840  1.1  christos 
   2841  1.1  christos 	srl	$2,$3,2
   2842  1.1  christos 	addu	$10,$13
   2843  1.1  christos 	lw	$13,120($6)		# K[30]
   2844  1.1  christos 	sll	$12,$3,10
   2845  1.1  christos 	addu	$10,$11
   2846  1.1  christos 	srl	$11,$3,13
   2847  1.1  christos 	xor	$2,$12
   2848  1.1  christos 	sll	$12,$3,19
   2849  1.1  christos 	xor	$2,$11
   2850  1.1  christos 	srl	$11,$3,22
   2851  1.1  christos 	xor	$2,$12
   2852  1.1  christos 	sll	$12,$3,30
   2853  1.1  christos 	xor	$2,$11
   2854  1.1  christos 	and	$11,$7,$24
   2855  1.1  christos 	xor	$2,$12			# Sigma0(a)
   2856  1.1  christos 	xor	$12,$7,$24
   2857  1.1  christos #endif
   2858  1.1  christos 	sw	$22,56($29)	# offload to ring buffer
   2859  1.1  christos 	addu	$2,$11
   2860  1.1  christos 	and	$12,$3
   2861  1.1  christos 	addu	$10,$13			# +=K[30]
   2862  1.1  christos 	addu	$2,$12			# +=Maj(a,b,c)
   2863  1.1  christos 	addu	$25,$10
   2864  1.1  christos 	addu	$2,$10
   2865  1.1  christos 	lw	$9,4($29)	# prefetch from ring buffer
   2866  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2867  1.1  christos 	srl	$13,$8,3		# Xupdate(31)
   2868  1.1  christos 	rotr	$11,$8,7
   2869  1.1  christos 	addu	$23,$16			# +=X[i+9]
   2870  1.1  christos 	xor	$13,$11
   2871  1.1  christos 	rotr	$11,$8,18
   2872  1.1  christos 
   2873  1.1  christos 	srl	$14,$21,10
   2874  1.1  christos 	rotr	$12,$21,17
   2875  1.1  christos 	xor	$13,$11			# sigma0(X[i+1])
   2876  1.1  christos 	rotr	$11,$21,19
   2877  1.1  christos 	xor	$14,$12
   2878  1.1  christos 	addu	$23,$13
   2879  1.1  christos #else
   2880  1.1  christos 	srl	$13,$8,3		# Xupdate(31)
   2881  1.1  christos 	addu	$23,$16			# +=X[i+9]
   2882  1.1  christos 	sll	$12,$8,14
   2883  1.1  christos 	srl	$11,$8,7
   2884  1.1  christos 	xor	$13,$12
   2885  1.1  christos 	sll	$12,11
   2886  1.1  christos 	xor	$13,$11
   2887  1.1  christos 	srl	$11,$8,18
   2888  1.1  christos 	xor	$13,$12
   2889  1.1  christos 
   2890  1.1  christos 	srl	$14,$21,10
   2891  1.1  christos 	xor	$13,$11			# sigma0(X[i+1])
   2892  1.1  christos 	sll	$12,$21,13
   2893  1.1  christos 	addu	$23,$13
   2894  1.1  christos 	srl	$11,$21,17
   2895  1.1  christos 	xor	$14,$12
   2896  1.1  christos 	sll	$12,2
   2897  1.1  christos 	xor	$14,$11
   2898  1.1  christos 	srl	$11,$21,19
   2899  1.1  christos 	xor	$14,$12
   2900  1.1  christos #endif
   2901  1.1  christos 	xor	$14,$11			# sigma1(X[i+14])
   2902  1.1  christos 	addu	$23,$14
   2903  1.1  christos #if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS64R2)
   2904  1.1  christos 	xor	$14,$30,$31			# 31
   2905  1.1  christos 	rotr	$12,$25,6
   2906  1.1  christos 	addu	$11,$23,$1
   2907  1.1  christos 	rotr	$13,$25,11
   2908  1.1  christos 	and	$14,$25
   2909  1.1  christos 	rotr	$1,$25,25
   2910  1.1  christos 	xor	$12,$13
   2911  1.1  christos 	rotr	$13,$2,2
   2912  1.1  christos 	xor	$14,$31			# Ch(e,f,g)
   2913  1.1  christos 	xor	$12,$1			# Sigma1(e)
   2914  1.1  christos 
   2915  1.1  christos 	rotr	$1,$2,13
   2916  1.1  christos 	addu	$11,$14
   2917  1.1  christos 	lw	$14,124($6)		# K[31]
   2918  1.1  christos 	xor	$1,$13
   2919  1.1  christos 	rotr	$13,$2,22
   2920  1.1  christos 	addu	$11,$12
   2921  1.1  christos 	and	$12,$3,$7
   2922  1.1  christos 	xor	$1,$13			# Sigma0(a)
   2923  1.1  christos 	xor	$13,$3,$7
   2924  1.1  christos #else
   2925  1.1  christos 	addu	$11,$23,$1			# 31
   2926  1.1  christos 	srl	$1,$25,6
   2927  1.1  christos 	xor	$14,$30,$31
   2928  1.1  christos 	sll	$13,$25,7
   2929  1.1  christos 	and	$14,$25
   2930  1.1  christos 	srl	$12,$25,11
   2931  1.1  christos 	xor	$1,$13
   2932  1.1  christos 	sll	$13,$25,21
   2933  1.1  christos 	xor	$1,$12
   2934  1.1  christos 	srl	$12,$25,25
   2935  1.1  christos 	xor	$1,$13
   2936  1.1  christos 	sll	$13,$25,26
   2937  1.1  christos 	xor	$1,$12
   2938  1.1  christos 	xor	$14,$31			# Ch(e,f,g)
   2939  1.1  christos 	xor	$12,$13,$1			# Sigma1(e)
   2940  1.1  christos 
   2941  1.1  christos 	srl	$1,$2,2
   2942  1.1  christos 	addu	$11,$14
   2943  1.1  christos 	lw	$14,124($6)		# K[31]
   2944  1.1  christos 	sll	$13,$2,10
   2945  1.1  christos 	addu	$11,$12
   2946  1.1  christos 	srl	$12,$2,13
   2947  1.1  christos 	xor	$1,$13
   2948  1.1  christos 	sll	$13,$2,19
   2949  1.1  christos 	xor	$1,$12
   2950  1.1  christos 	srl	$12,$2,22
   2951  1.1  christos 	xor	$1,$13
   2952  1.1  christos 	sll	$13,$2,30
   2953  1.1  christos 	xor	$1,$12
   2954  1.1  christos 	and	$12,$3,$7
   2955  1.1  christos 	xor	$1,$13			# Sigma0(a)
   2956  1.1  christos 	xor	$13,$3,$7
   2957  1.1  christos #endif
   2958  1.1  christos 	sw	$23,60($29)	# offload to ring buffer
   2959  1.1  christos 	addu	$1,$12
   2960  1.1  christos 	and	$13,$2
   2961  1.1  christos 	addu	$11,$14			# +=K[31]
   2962  1.1  christos 	addu	$1,$13			# +=Maj(a,b,c)
   2963  1.1  christos 	addu	$24,$11
   2964  1.1  christos 	addu	$1,$11
   2965  1.1  christos 	lw	$10,8($29)	# prefetch from ring buffer
   2966  1.1  christos 	and	$14,0xfff
   2967  1.1  christos 	li	$15,2290
   2968  1.1  christos 	.set	noreorder
   2969  1.1  christos 	bne	$14,$15,.L16_xx
   2970  1.1  christos 	daddu $6,16*4		# Ktbl+=16
   2971  1.1  christos 
   2972  1.1  christos 	ld	$23,16*4($29)	# restore pointer to the end of input
   2973  1.1  christos 	lw	$8,0*4($4)
   2974  1.1  christos 	lw	$9,1*4($4)
   2975  1.1  christos 	lw	$10,2*4($4)
   2976  1.1  christos 	daddu $5,16*4
   2977  1.1  christos 	lw	$11,3*4($4)
   2978  1.1  christos 	addu	$1,$8
   2979  1.1  christos 	lw	$12,4*4($4)
   2980  1.1  christos 	addu	$2,$9
   2981  1.1  christos 	lw	$13,5*4($4)
   2982  1.1  christos 	addu	$3,$10
   2983  1.1  christos 	lw	$14,6*4($4)
   2984  1.1  christos 	addu	$7,$11
   2985  1.1  christos 	lw	$15,7*4($4)
   2986  1.1  christos 	addu	$24,$12
   2987  1.1  christos 	sw	$1,0*4($4)
   2988  1.1  christos 	addu	$25,$13
   2989  1.1  christos 	sw	$2,1*4($4)
   2990  1.1  christos 	addu	$30,$14
   2991  1.1  christos 	sw	$3,2*4($4)
   2992  1.1  christos 	addu	$31,$15
   2993  1.1  christos 	sw	$7,3*4($4)
   2994  1.1  christos 	sw	$24,4*4($4)
   2995  1.1  christos 	sw	$25,5*4($4)
   2996  1.1  christos 	sw	$30,6*4($4)
   2997  1.1  christos 	sw	$31,7*4($4)
   2998  1.1  christos 
   2999  1.1  christos 	bne	$5,$23,.Loop
   3000  1.1  christos 	dsubu $6,192	# rewind $6
   3001  1.1  christos 
   3002  1.1  christos 	ld	$31,192-1*8($29)
   3003  1.1  christos 	ld	$30,192-2*8($29)
   3004  1.1  christos 	ld	$23,192-3*8($29)
   3005  1.1  christos 	ld	$22,192-4*8($29)
   3006  1.1  christos 	ld	$21,192-5*8($29)
   3007  1.1  christos 	ld	$20,192-6*8($29)
   3008  1.1  christos 	ld	$19,192-7*8($29)
   3009  1.1  christos 	ld	$18,192-8*8($29)
   3010  1.1  christos 	ld	$17,192-9*8($29)
   3011  1.1  christos 	ld	$16,192-10*8($29)
   3012  1.1  christos 	jr	$31
   3013  1.1  christos 	daddu $29,192
   3014  1.1  christos .end	sha256_block_data_order
   3015  1.1  christos 
   3016  1.1  christos .rdata
   3017  1.1  christos .align	5
   3018  1.1  christos K256:
   3019  1.1  christos 	.word	0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5
   3020  1.1  christos 	.word	0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5
   3021  1.1  christos 	.word	0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3
   3022  1.1  christos 	.word	0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174
   3023  1.1  christos 	.word	0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc
   3024  1.1  christos 	.word	0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da
   3025  1.1  christos 	.word	0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7
   3026  1.1  christos 	.word	0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967
   3027  1.1  christos 	.word	0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13
   3028  1.1  christos 	.word	0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85
   3029  1.1  christos 	.word	0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3
   3030  1.1  christos 	.word	0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070
   3031  1.1  christos 	.word	0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5
   3032  1.1  christos 	.word	0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3
   3033  1.1  christos 	.word	0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208
   3034  1.1  christos 	.word	0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
   3035  1.1  christos .asciiz	"SHA256 for MIPS, CRYPTOGAMS by <appro (at) openssl.org>"
   3036  1.1  christos .align	5
   3037  1.1  christos 
   3038