1# $FreeBSD$ 2# Do not modify. This file is auto-generated from sha256-586.pl. 3#ifdef PIC 4.file "sha256-586.S" 5.text 6.globl sha256_block_data_order 7.type sha256_block_data_order,@function 8.align 16 9sha256_block_data_order: 10.L_sha256_block_data_order_begin: 11 pushl %ebp 12 pushl %ebx 13 pushl %esi 14 pushl %edi 15 movl 20(%esp),%esi 16 movl 24(%esp),%edi 17 movl 28(%esp),%eax 18 movl %esp,%ebx 19 call .L000pic_point 20.L000pic_point: 21 popl %ebp 22 leal .L001K256-.L000pic_point(%ebp),%ebp 23 subl $16,%esp 24 andl $-64,%esp 25 shll $6,%eax 26 addl %edi,%eax 27 movl %esi,(%esp) 28 movl %edi,4(%esp) 29 movl %eax,8(%esp) 30 movl %ebx,12(%esp) 31.align 16 32.L002loop: 33 movl (%edi),%eax 34 movl 4(%edi),%ebx 35 movl 8(%edi),%ecx 36 movl 12(%edi),%edx 37 bswap %eax 38 bswap %ebx 39 bswap %ecx 40 bswap %edx 41 pushl %eax 42 pushl %ebx 43 pushl %ecx 44 pushl %edx 45 movl 16(%edi),%eax 46 movl 20(%edi),%ebx 47 movl 24(%edi),%ecx 48 movl 28(%edi),%edx 49 bswap %eax 50 bswap %ebx 51 bswap %ecx 52 bswap %edx 53 pushl %eax 54 pushl %ebx 55 pushl %ecx 56 pushl %edx 57 movl 32(%edi),%eax 58 movl 36(%edi),%ebx 59 movl 40(%edi),%ecx 60 movl 44(%edi),%edx 61 bswap %eax 62 bswap %ebx 63 bswap %ecx 64 bswap %edx 65 pushl %eax 66 pushl %ebx 67 pushl %ecx 68 pushl %edx 69 movl 48(%edi),%eax 70 movl 52(%edi),%ebx 71 movl 56(%edi),%ecx 72 movl 60(%edi),%edx 73 bswap %eax 74 bswap %ebx 75 bswap %ecx 76 bswap %edx 77 pushl %eax 78 pushl %ebx 79 pushl %ecx 80 pushl %edx 81 addl $64,%edi 82 subl $32,%esp 83 movl %edi,100(%esp) 84 movl (%esi),%eax 85 movl 4(%esi),%ebx 86 movl 8(%esi),%ecx 87 movl 12(%esi),%edi 88 movl %ebx,4(%esp) 89 movl %ecx,8(%esp) 90 movl %edi,12(%esp) 91 movl 16(%esi),%edx 92 movl 20(%esi),%ebx 93 movl 24(%esi),%ecx 94 movl 28(%esi),%edi 95 movl %ebx,20(%esp) 96 movl %ecx,24(%esp) 97 movl %edi,28(%esp) 98.align 16 99.L00300_15: 100 movl 92(%esp),%ebx 101 movl %edx,%ecx 102 rorl $14,%ecx 103 movl 20(%esp),%esi 104 xorl %edx,%ecx 105 rorl $5,%ecx 106 xorl %edx,%ecx 107 rorl $6,%ecx 108 movl 24(%esp),%edi 109 addl %ecx,%ebx 110 xorl %edi,%esi 111 movl %edx,16(%esp) 112 movl %eax,%ecx 113 andl %edx,%esi 114 movl 12(%esp),%edx 115 xorl %edi,%esi 116 movl %eax,%edi 117 addl %esi,%ebx 118 rorl $9,%ecx 119 addl 28(%esp),%ebx 120 xorl %eax,%ecx 121 rorl $11,%ecx 122 movl 4(%esp),%esi 123 xorl %eax,%ecx 124 rorl $2,%ecx 125 addl %ebx,%edx 126 movl 8(%esp),%edi 127 addl %ecx,%ebx 128 movl %eax,(%esp) 129 movl %eax,%ecx 130 subl $4,%esp 131 orl %esi,%eax 132 andl %esi,%ecx 133 andl %edi,%eax 134 movl (%ebp),%esi 135 orl %ecx,%eax 136 addl $4,%ebp 137 addl %ebx,%eax 138 addl %esi,%edx 139 addl %esi,%eax 140 cmpl $3248222580,%esi 141 jne .L00300_15 142 movl 152(%esp),%ebx 143.align 16 144.L00416_63: 145 movl %ebx,%esi 146 movl 100(%esp),%ecx 147 rorl $11,%esi 148 movl %ecx,%edi 149 xorl %ebx,%esi 150 rorl $7,%esi 151 shrl $3,%ebx 152 rorl $2,%edi 153 xorl %esi,%ebx 154 xorl %ecx,%edi 155 rorl $17,%edi 156 shrl $10,%ecx 157 addl 156(%esp),%ebx 158 xorl %ecx,%edi 159 addl 120(%esp),%ebx 160 movl %edx,%ecx 161 addl %edi,%ebx 162 rorl $14,%ecx 163 movl 20(%esp),%esi 164 xorl %edx,%ecx 165 rorl $5,%ecx 166 movl %ebx,92(%esp) 167 xorl %edx,%ecx 168 rorl $6,%ecx 169 movl 24(%esp),%edi 170 addl %ecx,%ebx 171 xorl %edi,%esi 172 movl %edx,16(%esp) 173 movl %eax,%ecx 174 andl %edx,%esi 175 movl 12(%esp),%edx 176 xorl %edi,%esi 177 movl %eax,%edi 178 addl %esi,%ebx 179 rorl $9,%ecx 180 addl 28(%esp),%ebx 181 xorl %eax,%ecx 182 rorl $11,%ecx 183 movl 4(%esp),%esi 184 xorl %eax,%ecx 185 rorl $2,%ecx 186 addl %ebx,%edx 187 movl 8(%esp),%edi 188 addl %ecx,%ebx 189 movl %eax,(%esp) 190 movl %eax,%ecx 191 subl $4,%esp 192 orl %esi,%eax 193 andl %esi,%ecx 194 andl %edi,%eax 195 movl (%ebp),%esi 196 orl %ecx,%eax 197 addl $4,%ebp 198 addl %ebx,%eax 199 movl 152(%esp),%ebx 200 addl %esi,%edx 201 addl %esi,%eax 202 cmpl $3329325298,%esi 203 jne .L00416_63 204 movl 352(%esp),%esi 205 movl 4(%esp),%ebx 206 movl 8(%esp),%ecx 207 movl 12(%esp),%edi 208 addl (%esi),%eax 209 addl 4(%esi),%ebx 210 addl 8(%esi),%ecx 211 addl 12(%esi),%edi 212 movl %eax,(%esi) 213 movl %ebx,4(%esi) 214 movl %ecx,8(%esi) 215 movl %edi,12(%esi) 216 movl 20(%esp),%eax 217 movl 24(%esp),%ebx 218 movl 28(%esp),%ecx 219 movl 356(%esp),%edi 220 addl 16(%esi),%edx 221 addl 20(%esi),%eax 222 addl 24(%esi),%ebx 223 addl 28(%esi),%ecx 224 movl %edx,16(%esi) 225 movl %eax,20(%esi) 226 movl %ebx,24(%esi) 227 movl %ecx,28(%esi) 228 addl $352,%esp 229 subl $256,%ebp 230 cmpl 8(%esp),%edi 231 jb .L002loop 232 movl 12(%esp),%esp 233 popl %edi 234 popl %esi 235 popl %ebx 236 popl %ebp 237 ret 238.align 64 239.L001K256: 240.long 1116352408,1899447441,3049323471,3921009573 241.long 961987163,1508970993,2453635748,2870763221 242.long 3624381080,310598401,607225278,1426881987 243.long 1925078388,2162078206,2614888103,3248222580 244.long 3835390401,4022224774,264347078,604807628 245.long 770255983,1249150122,1555081692,1996064986 246.long 2554220882,2821834349,2952996808,3210313671 247.long 3336571891,3584528711,113926993,338241895 248.long 666307205,773529912,1294757372,1396182291 249.long 1695183700,1986661051,2177026350,2456956037 250.long 2730485921,2820302411,3259730800,3345764771 251.long 3516065817,3600352804,4094571909,275423344 252.long 430227734,506948616,659060556,883997877 253.long 958139571,1322822218,1537002063,1747873779 254.long 1955562222,2024104815,2227730452,2361852424 255.long 2428436474,2756734187,3204031479,3329325298 256.size sha256_block_data_order,.-.L_sha256_block_data_order_begin 257.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 258.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 259.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 260.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 261.byte 62,0 262#else 263.file "sha256-586.S" 264.text 265.globl sha256_block_data_order 266.type sha256_block_data_order,@function 267.align 16 268sha256_block_data_order: 269.L_sha256_block_data_order_begin: 270 pushl %ebp 271 pushl %ebx 272 pushl %esi 273 pushl %edi 274 movl 20(%esp),%esi 275 movl 24(%esp),%edi 276 movl 28(%esp),%eax 277 movl %esp,%ebx 278 call .L000pic_point 279.L000pic_point: 280 popl %ebp 281 leal .L001K256-.L000pic_point(%ebp),%ebp 282 subl $16,%esp 283 andl $-64,%esp 284 shll $6,%eax 285 addl %edi,%eax 286 movl %esi,(%esp) 287 movl %edi,4(%esp) 288 movl %eax,8(%esp) 289 movl %ebx,12(%esp) 290.align 16 291.L002loop: 292 movl (%edi),%eax 293 movl 4(%edi),%ebx 294 movl 8(%edi),%ecx 295 movl 12(%edi),%edx 296 bswap %eax 297 bswap %ebx 298 bswap %ecx 299 bswap %edx 300 pushl %eax 301 pushl %ebx 302 pushl %ecx 303 pushl %edx 304 movl 16(%edi),%eax 305 movl 20(%edi),%ebx 306 movl 24(%edi),%ecx 307 movl 28(%edi),%edx 308 bswap %eax 309 bswap %ebx 310 bswap %ecx 311 bswap %edx 312 pushl %eax 313 pushl %ebx 314 pushl %ecx 315 pushl %edx 316 movl 32(%edi),%eax 317 movl 36(%edi),%ebx 318 movl 40(%edi),%ecx 319 movl 44(%edi),%edx 320 bswap %eax 321 bswap %ebx 322 bswap %ecx 323 bswap %edx 324 pushl %eax 325 pushl %ebx 326 pushl %ecx 327 pushl %edx 328 movl 48(%edi),%eax 329 movl 52(%edi),%ebx 330 movl 56(%edi),%ecx 331 movl 60(%edi),%edx 332 bswap %eax 333 bswap %ebx 334 bswap %ecx 335 bswap %edx 336 pushl %eax 337 pushl %ebx 338 pushl %ecx 339 pushl %edx 340 addl $64,%edi 341 subl $32,%esp 342 movl %edi,100(%esp) 343 movl (%esi),%eax 344 movl 4(%esi),%ebx 345 movl 8(%esi),%ecx 346 movl 12(%esi),%edi 347 movl %ebx,4(%esp) 348 movl %ecx,8(%esp) 349 movl %edi,12(%esp) 350 movl 16(%esi),%edx 351 movl 20(%esi),%ebx 352 movl 24(%esi),%ecx 353 movl 28(%esi),%edi 354 movl %ebx,20(%esp) 355 movl %ecx,24(%esp) 356 movl %edi,28(%esp) 357.align 16 358.L00300_15: 359 movl 92(%esp),%ebx 360 movl %edx,%ecx 361 rorl $14,%ecx 362 movl 20(%esp),%esi 363 xorl %edx,%ecx 364 rorl $5,%ecx 365 xorl %edx,%ecx 366 rorl $6,%ecx 367 movl 24(%esp),%edi 368 addl %ecx,%ebx 369 xorl %edi,%esi 370 movl %edx,16(%esp) 371 movl %eax,%ecx 372 andl %edx,%esi 373 movl 12(%esp),%edx 374 xorl %edi,%esi 375 movl %eax,%edi 376 addl %esi,%ebx 377 rorl $9,%ecx 378 addl 28(%esp),%ebx 379 xorl %eax,%ecx 380 rorl $11,%ecx 381 movl 4(%esp),%esi 382 xorl %eax,%ecx 383 rorl $2,%ecx 384 addl %ebx,%edx 385 movl 8(%esp),%edi 386 addl %ecx,%ebx 387 movl %eax,(%esp) 388 movl %eax,%ecx 389 subl $4,%esp 390 orl %esi,%eax 391 andl %esi,%ecx 392 andl %edi,%eax 393 movl (%ebp),%esi 394 orl %ecx,%eax 395 addl $4,%ebp 396 addl %ebx,%eax 397 addl %esi,%edx 398 addl %esi,%eax 399 cmpl $3248222580,%esi 400 jne .L00300_15 401 movl 152(%esp),%ebx 402.align 16 403.L00416_63: 404 movl %ebx,%esi 405 movl 100(%esp),%ecx 406 rorl $11,%esi 407 movl %ecx,%edi 408 xorl %ebx,%esi 409 rorl $7,%esi 410 shrl $3,%ebx 411 rorl $2,%edi 412 xorl %esi,%ebx 413 xorl %ecx,%edi 414 rorl $17,%edi 415 shrl $10,%ecx 416 addl 156(%esp),%ebx 417 xorl %ecx,%edi 418 addl 120(%esp),%ebx 419 movl %edx,%ecx 420 addl %edi,%ebx 421 rorl $14,%ecx 422 movl 20(%esp),%esi 423 xorl %edx,%ecx 424 rorl $5,%ecx 425 movl %ebx,92(%esp) 426 xorl %edx,%ecx 427 rorl $6,%ecx 428 movl 24(%esp),%edi 429 addl %ecx,%ebx 430 xorl %edi,%esi 431 movl %edx,16(%esp) 432 movl %eax,%ecx 433 andl %edx,%esi 434 movl 12(%esp),%edx 435 xorl %edi,%esi 436 movl %eax,%edi 437 addl %esi,%ebx 438 rorl $9,%ecx 439 addl 28(%esp),%ebx 440 xorl %eax,%ecx 441 rorl $11,%ecx 442 movl 4(%esp),%esi 443 xorl %eax,%ecx 444 rorl $2,%ecx 445 addl %ebx,%edx 446 movl 8(%esp),%edi 447 addl %ecx,%ebx 448 movl %eax,(%esp) 449 movl %eax,%ecx 450 subl $4,%esp 451 orl %esi,%eax 452 andl %esi,%ecx 453 andl %edi,%eax 454 movl (%ebp),%esi 455 orl %ecx,%eax 456 addl $4,%ebp 457 addl %ebx,%eax 458 movl 152(%esp),%ebx 459 addl %esi,%edx 460 addl %esi,%eax 461 cmpl $3329325298,%esi 462 jne .L00416_63 463 movl 352(%esp),%esi 464 movl 4(%esp),%ebx 465 movl 8(%esp),%ecx 466 movl 12(%esp),%edi 467 addl (%esi),%eax 468 addl 4(%esi),%ebx 469 addl 8(%esi),%ecx 470 addl 12(%esi),%edi 471 movl %eax,(%esi) 472 movl %ebx,4(%esi) 473 movl %ecx,8(%esi) 474 movl %edi,12(%esi) 475 movl 20(%esp),%eax 476 movl 24(%esp),%ebx 477 movl 28(%esp),%ecx 478 movl 356(%esp),%edi 479 addl 16(%esi),%edx 480 addl 20(%esi),%eax 481 addl 24(%esi),%ebx 482 addl 28(%esi),%ecx 483 movl %edx,16(%esi) 484 movl %eax,20(%esi) 485 movl %ebx,24(%esi) 486 movl %ecx,28(%esi) 487 addl $352,%esp 488 subl $256,%ebp 489 cmpl 8(%esp),%edi 490 jb .L002loop 491 movl 12(%esp),%esp 492 popl %edi 493 popl %esi 494 popl %ebx 495 popl %ebp 496 ret 497.align 64 498.L001K256: 499.long 1116352408,1899447441,3049323471,3921009573 500.long 961987163,1508970993,2453635748,2870763221 501.long 3624381080,310598401,607225278,1426881987 502.long 1925078388,2162078206,2614888103,3248222580 503.long 3835390401,4022224774,264347078,604807628 504.long 770255983,1249150122,1555081692,1996064986 505.long 2554220882,2821834349,2952996808,3210313671 506.long 3336571891,3584528711,113926993,338241895 507.long 666307205,773529912,1294757372,1396182291 508.long 1695183700,1986661051,2177026350,2456956037 509.long 2730485921,2820302411,3259730800,3345764771 510.long 3516065817,3600352804,4094571909,275423344 511.long 430227734,506948616,659060556,883997877 512.long 958139571,1322822218,1537002063,1747873779 513.long 1955562222,2024104815,2227730452,2361852424 514.long 2428436474,2756734187,3204031479,3329325298 515.size sha256_block_data_order,.-.L_sha256_block_data_order_begin 516.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97 517.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32 518.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97 519.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103 520.byte 62,0 521#endif 522