1 #include "s390x_arch.h" 2 3 .text 4 .align 64 5 .type Ktable,@object 6 Ktable: .long 0x5a827999,0x6ed9eba1,0x8f1bbcdc,0xca62c1d6 7 .skip 48 #.long 0,0,0,0,0,0,0,0,0,0,0,0 8 .size Ktable,.-Ktable 9 .globl sha1_block_data_order 10 .type sha1_block_data_order,@function 11 sha1_block_data_order: 12 larl %r1,OPENSSL_s390xcap_P 13 lg %r0,S390X_KIMD(%r1) # check kimd capabilities 14 tmhh %r0,16384 15 jz .Lsoftware 16 lghi %r0,1 17 lgr %r1,%r2 18 lgr %r2,%r3 19 sllg %r3,%r4,6 20 .long 0xb93e0002 # kimd %r0,%r2 21 brc 1,.-4 # pay attention to "partial completion" 22 br %r14 23 .align 16 24 .Lsoftware: 25 lghi %r1,-160 26 st %r2,8(%r15) 27 stm %r6,%r15,24(%r15) 28 lgr %r0,%r15 29 la %r15,0(%r1,%r15) 30 st %r0,0(%r15) 31 32 larl %r10,Ktable 33 llgf %r5,0(%r2) 34 llgf %r6,4(%r2) 35 llgf %r7,8(%r2) 36 llgf %r8,12(%r2) 37 llgf %r9,16(%r2) 38 39 lg %r0,0(%r10) 40 lg %r1,8(%r10) 41 42 .Lloop: 43 rllg %r0,%r0,32 44 lg %r12,0(%r3) ### Xload(0) 45 rllg %r13,%r12,32 46 stg %r12,96(%r15) 47 alr %r9,%r0 ### 0 48 rll %r11,%r5,5 49 lr %r10,%r8 50 xr %r10,%r7 51 alr %r9,%r11 52 nr %r10,%r6 53 alr %r9,%r13 54 xr %r10,%r8 55 rll %r6,%r6,30 56 alr %r9,%r10 57 alr %r8,%r0 ### 1 58 rll %r11,%r9,5 59 lr %r10,%r7 60 xr %r10,%r6 61 alr %r8,%r11 62 nr %r10,%r5 63 alr %r8,%r12 64 xr %r10,%r7 65 rll %r5,%r5,30 66 alr %r8,%r10 67 lg %r14,8(%r3) ### Xload(2) 68 rllg %r12,%r14,32 69 stg %r14,104(%r15) 70 alr %r7,%r0 ### 2 71 rll %r11,%r8,5 72 lr %r10,%r6 73 xr %r10,%r5 74 alr %r7,%r11 75 nr %r10,%r9 76 alr %r7,%r12 77 xr %r10,%r6 78 rll %r9,%r9,30 79 alr %r7,%r10 80 alr %r6,%r0 ### 3 81 rll %r11,%r7,5 82 lr %r10,%r5 83 xr %r10,%r9 84 alr %r6,%r11 85 nr %r10,%r8 86 alr %r6,%r14 87 xr %r10,%r5 88 rll %r8,%r8,30 89 alr %r6,%r10 90 lg %r13,16(%r3) ### Xload(4) 91 rllg %r14,%r13,32 92 stg %r13,112(%r15) 93 alr %r5,%r0 ### 4 94 rll %r11,%r6,5 95 lr %r10,%r9 96 xr %r10,%r8 97 alr %r5,%r11 98 nr %r10,%r7 99 alr %r5,%r14 100 xr %r10,%r9 101 rll %r7,%r7,30 102 alr %r5,%r10 103 alr %r9,%r0 ### 5 104 rll %r11,%r5,5 105 lr %r10,%r8 106 xr %r10,%r7 107 alr %r9,%r11 108 nr %r10,%r6 109 alr %r9,%r13 110 xr %r10,%r8 111 rll %r6,%r6,30 112 alr %r9,%r10 113 lg %r12,24(%r3) ### Xload(6) 114 rllg %r13,%r12,32 115 stg %r12,120(%r15) 116 alr %r8,%r0 ### 6 117 rll %r11,%r9,5 118 lr %r10,%r7 119 xr %r10,%r6 120 alr %r8,%r11 121 nr %r10,%r5 122 alr %r8,%r13 123 xr %r10,%r7 124 rll %r5,%r5,30 125 alr %r8,%r10 126 alr %r7,%r0 ### 7 127 rll %r11,%r8,5 128 lr %r10,%r6 129 xr %r10,%r5 130 alr %r7,%r11 131 nr %r10,%r9 132 alr %r7,%r12 133 xr %r10,%r6 134 rll %r9,%r9,30 135 alr %r7,%r10 136 lg %r14,32(%r3) ### Xload(8) 137 rllg %r12,%r14,32 138 stg %r14,128(%r15) 139 alr %r6,%r0 ### 8 140 rll %r11,%r7,5 141 lr %r10,%r5 142 xr %r10,%r9 143 alr %r6,%r11 144 nr %r10,%r8 145 alr %r6,%r12 146 xr %r10,%r5 147 rll %r8,%r8,30 148 alr %r6,%r10 149 alr %r5,%r0 ### 9 150 rll %r11,%r6,5 151 lr %r10,%r9 152 xr %r10,%r8 153 alr %r5,%r11 154 nr %r10,%r7 155 alr %r5,%r14 156 xr %r10,%r9 157 rll %r7,%r7,30 158 alr %r5,%r10 159 lg %r13,40(%r3) ### Xload(10) 160 rllg %r14,%r13,32 161 stg %r13,136(%r15) 162 alr %r9,%r0 ### 10 163 rll %r11,%r5,5 164 lr %r10,%r8 165 xr %r10,%r7 166 alr %r9,%r11 167 nr %r10,%r6 168 alr %r9,%r14 169 xr %r10,%r8 170 rll %r6,%r6,30 171 alr %r9,%r10 172 alr %r8,%r0 ### 11 173 rll %r11,%r9,5 174 lr %r10,%r7 175 xr %r10,%r6 176 alr %r8,%r11 177 nr %r10,%r5 178 alr %r8,%r13 179 xr %r10,%r7 180 rll %r5,%r5,30 181 alr %r8,%r10 182 lg %r12,48(%r3) ### Xload(12) 183 rllg %r13,%r12,32 184 stg %r12,144(%r15) 185 alr %r7,%r0 ### 12 186 rll %r11,%r8,5 187 lr %r10,%r6 188 xr %r10,%r5 189 alr %r7,%r11 190 nr %r10,%r9 191 alr %r7,%r13 192 xr %r10,%r6 193 rll %r9,%r9,30 194 alr %r7,%r10 195 alr %r6,%r0 ### 13 196 rll %r11,%r7,5 197 lr %r10,%r5 198 xr %r10,%r9 199 alr %r6,%r11 200 nr %r10,%r8 201 alr %r6,%r12 202 xr %r10,%r5 203 rll %r8,%r8,30 204 alr %r6,%r10 205 lg %r14,56(%r3) ### Xload(14) 206 rllg %r12,%r14,32 207 stg %r14,152(%r15) 208 alr %r5,%r0 ### 14 209 rll %r11,%r6,5 210 lr %r10,%r9 211 xr %r10,%r8 212 alr %r5,%r11 213 nr %r10,%r7 214 alr %r5,%r12 215 xr %r10,%r9 216 rll %r7,%r7,30 217 alr %r5,%r10 218 lg %r2,96(%r15) ### Xupdate(16) warm-up 219 lr %r13,%r12 220 alr %r9,%r0 ### 15 221 rll %r11,%r5,5 222 lr %r10,%r8 223 xr %r10,%r7 224 alr %r9,%r11 225 nr %r10,%r6 226 alr %r9,%r14 227 xr %r10,%r8 228 rll %r6,%r6,30 229 alr %r9,%r10 230 xgr %r13,%r2 ### Xupdate(16) 231 lg %r2,104(%r15) 232 xg %r13,128(%r15) 233 xgr %r13,%r2 234 rll %r13,%r13,1 235 rllg %r14,%r13,32 236 rll %r14,%r14,1 237 rllg %r13,%r14,32 238 lr %r12,%r14 # feedback 239 stg %r13,96(%r15) 240 alr %r8,%r0 ### 16 241 rll %r11,%r9,5 242 lr %r10,%r7 243 xr %r10,%r6 244 alr %r8,%r11 245 nr %r10,%r5 246 alr %r8,%r14 247 xr %r10,%r7 248 rll %r5,%r5,30 249 alr %r8,%r10 250 alr %r7,%r0 ### 17 251 rll %r11,%r8,5 252 lr %r10,%r6 253 xr %r10,%r5 254 alr %r7,%r11 255 nr %r10,%r9 256 alr %r7,%r13 257 xr %r10,%r6 258 rll %r9,%r9,30 259 alr %r7,%r10 260 xgr %r12,%r2 ### Xupdate(18) 261 lg %r2,112(%r15) 262 xg %r12,136(%r15) 263 xgr %r12,%r2 264 rll %r12,%r12,1 265 rllg %r13,%r12,32 266 rll %r13,%r13,1 267 rllg %r12,%r13,32 268 lr %r14,%r13 # feedback 269 stg %r12,104(%r15) 270 alr %r6,%r0 ### 18 271 rll %r11,%r7,5 272 lr %r10,%r5 273 xr %r10,%r9 274 alr %r6,%r11 275 nr %r10,%r8 276 alr %r6,%r13 277 xr %r10,%r5 278 rll %r8,%r8,30 279 alr %r6,%r10 280 alr %r5,%r0 ### 19 281 rll %r11,%r6,5 282 lr %r10,%r9 283 xr %r10,%r8 284 alr %r5,%r11 285 nr %r10,%r7 286 alr %r5,%r12 287 xr %r10,%r9 288 rll %r7,%r7,30 289 alr %r5,%r10 290 rllg %r0,%r0,32 291 xgr %r14,%r2 ### Xupdate(20) 292 lg %r2,120(%r15) 293 xg %r14,144(%r15) 294 xgr %r14,%r2 295 rll %r14,%r14,1 296 rllg %r12,%r14,32 297 rll %r12,%r12,1 298 rllg %r14,%r12,32 299 lr %r13,%r12 # feedback 300 stg %r14,112(%r15) 301 alr %r9,%r0 ### 20 302 rll %r11,%r5,5 303 lr %r10,%r6 304 alr %r9,%r11 305 xr %r10,%r7 306 alr %r9,%r12 307 xr %r10,%r8 308 rll %r6,%r6,30 309 alr %r9,%r10 310 alr %r8,%r0 ### 21 311 rll %r11,%r9,5 312 lr %r10,%r5 313 alr %r8,%r11 314 xr %r10,%r6 315 alr %r8,%r14 316 xr %r10,%r7 317 rll %r5,%r5,30 318 alr %r8,%r10 319 xgr %r13,%r2 ### Xupdate(22) 320 lg %r2,128(%r15) 321 xg %r13,152(%r15) 322 xgr %r13,%r2 323 rll %r13,%r13,1 324 rllg %r14,%r13,32 325 rll %r14,%r14,1 326 rllg %r13,%r14,32 327 lr %r12,%r14 # feedback 328 stg %r13,120(%r15) 329 alr %r7,%r0 ### 22 330 rll %r11,%r8,5 331 lr %r10,%r9 332 alr %r7,%r11 333 xr %r10,%r5 334 alr %r7,%r14 335 xr %r10,%r6 336 rll %r9,%r9,30 337 alr %r7,%r10 338 alr %r6,%r0 ### 23 339 rll %r11,%r7,5 340 lr %r10,%r8 341 alr %r6,%r11 342 xr %r10,%r9 343 alr %r6,%r13 344 xr %r10,%r5 345 rll %r8,%r8,30 346 alr %r6,%r10 347 xgr %r12,%r2 ### Xupdate(24) 348 lg %r2,136(%r15) 349 xg %r12,96(%r15) 350 xgr %r12,%r2 351 rll %r12,%r12,1 352 rllg %r13,%r12,32 353 rll %r13,%r13,1 354 rllg %r12,%r13,32 355 lr %r14,%r13 # feedback 356 stg %r12,128(%r15) 357 alr %r5,%r0 ### 24 358 rll %r11,%r6,5 359 lr %r10,%r7 360 alr %r5,%r11 361 xr %r10,%r8 362 alr %r5,%r13 363 xr %r10,%r9 364 rll %r7,%r7,30 365 alr %r5,%r10 366 alr %r9,%r0 ### 25 367 rll %r11,%r5,5 368 lr %r10,%r6 369 alr %r9,%r11 370 xr %r10,%r7 371 alr %r9,%r12 372 xr %r10,%r8 373 rll %r6,%r6,30 374 alr %r9,%r10 375 xgr %r14,%r2 ### Xupdate(26) 376 lg %r2,144(%r15) 377 xg %r14,104(%r15) 378 xgr %r14,%r2 379 rll %r14,%r14,1 380 rllg %r12,%r14,32 381 rll %r12,%r12,1 382 rllg %r14,%r12,32 383 lr %r13,%r12 # feedback 384 stg %r14,136(%r15) 385 alr %r8,%r0 ### 26 386 rll %r11,%r9,5 387 lr %r10,%r5 388 alr %r8,%r11 389 xr %r10,%r6 390 alr %r8,%r12 391 xr %r10,%r7 392 rll %r5,%r5,30 393 alr %r8,%r10 394 alr %r7,%r0 ### 27 395 rll %r11,%r8,5 396 lr %r10,%r9 397 alr %r7,%r11 398 xr %r10,%r5 399 alr %r7,%r14 400 xr %r10,%r6 401 rll %r9,%r9,30 402 alr %r7,%r10 403 xgr %r13,%r2 ### Xupdate(28) 404 lg %r2,152(%r15) 405 xg %r13,112(%r15) 406 xgr %r13,%r2 407 rll %r13,%r13,1 408 rllg %r14,%r13,32 409 rll %r14,%r14,1 410 rllg %r13,%r14,32 411 lr %r12,%r14 # feedback 412 stg %r13,144(%r15) 413 alr %r6,%r0 ### 28 414 rll %r11,%r7,5 415 lr %r10,%r8 416 alr %r6,%r11 417 xr %r10,%r9 418 alr %r6,%r14 419 xr %r10,%r5 420 rll %r8,%r8,30 421 alr %r6,%r10 422 alr %r5,%r0 ### 29 423 rll %r11,%r6,5 424 lr %r10,%r7 425 alr %r5,%r11 426 xr %r10,%r8 427 alr %r5,%r13 428 xr %r10,%r9 429 rll %r7,%r7,30 430 alr %r5,%r10 431 xgr %r12,%r2 ### Xupdate(30) 432 lg %r2,96(%r15) 433 xg %r12,120(%r15) 434 xgr %r12,%r2 435 rll %r12,%r12,1 436 rllg %r13,%r12,32 437 rll %r13,%r13,1 438 rllg %r12,%r13,32 439 lr %r14,%r13 # feedback 440 stg %r12,152(%r15) 441 alr %r9,%r0 ### 30 442 rll %r11,%r5,5 443 lr %r10,%r6 444 alr %r9,%r11 445 xr %r10,%r7 446 alr %r9,%r13 447 xr %r10,%r8 448 rll %r6,%r6,30 449 alr %r9,%r10 450 alr %r8,%r0 ### 31 451 rll %r11,%r9,5 452 lr %r10,%r5 453 alr %r8,%r11 454 xr %r10,%r6 455 alr %r8,%r12 456 xr %r10,%r7 457 rll %r5,%r5,30 458 alr %r8,%r10 459 xgr %r14,%r2 ### Xupdate(32) 460 lg %r2,104(%r15) 461 xg %r14,128(%r15) 462 xgr %r14,%r2 463 rll %r14,%r14,1 464 rllg %r12,%r14,32 465 rll %r12,%r12,1 466 rllg %r14,%r12,32 467 lr %r13,%r12 # feedback 468 stg %r14,96(%r15) 469 alr %r7,%r0 ### 32 470 rll %r11,%r8,5 471 lr %r10,%r9 472 alr %r7,%r11 473 xr %r10,%r5 474 alr %r7,%r12 475 xr %r10,%r6 476 rll %r9,%r9,30 477 alr %r7,%r10 478 alr %r6,%r0 ### 33 479 rll %r11,%r7,5 480 lr %r10,%r8 481 alr %r6,%r11 482 xr %r10,%r9 483 alr %r6,%r14 484 xr %r10,%r5 485 rll %r8,%r8,30 486 alr %r6,%r10 487 xgr %r13,%r2 ### Xupdate(34) 488 lg %r2,112(%r15) 489 xg %r13,136(%r15) 490 xgr %r13,%r2 491 rll %r13,%r13,1 492 rllg %r14,%r13,32 493 rll %r14,%r14,1 494 rllg %r13,%r14,32 495 lr %r12,%r14 # feedback 496 stg %r13,104(%r15) 497 alr %r5,%r0 ### 34 498 rll %r11,%r6,5 499 lr %r10,%r7 500 alr %r5,%r11 501 xr %r10,%r8 502 alr %r5,%r14 503 xr %r10,%r9 504 rll %r7,%r7,30 505 alr %r5,%r10 506 alr %r9,%r0 ### 35 507 rll %r11,%r5,5 508 lr %r10,%r6 509 alr %r9,%r11 510 xr %r10,%r7 511 alr %r9,%r13 512 xr %r10,%r8 513 rll %r6,%r6,30 514 alr %r9,%r10 515 xgr %r12,%r2 ### Xupdate(36) 516 lg %r2,120(%r15) 517 xg %r12,144(%r15) 518 xgr %r12,%r2 519 rll %r12,%r12,1 520 rllg %r13,%r12,32 521 rll %r13,%r13,1 522 rllg %r12,%r13,32 523 lr %r14,%r13 # feedback 524 stg %r12,112(%r15) 525 alr %r8,%r0 ### 36 526 rll %r11,%r9,5 527 lr %r10,%r5 528 alr %r8,%r11 529 xr %r10,%r6 530 alr %r8,%r13 531 xr %r10,%r7 532 rll %r5,%r5,30 533 alr %r8,%r10 534 alr %r7,%r0 ### 37 535 rll %r11,%r8,5 536 lr %r10,%r9 537 alr %r7,%r11 538 xr %r10,%r5 539 alr %r7,%r12 540 xr %r10,%r6 541 rll %r9,%r9,30 542 alr %r7,%r10 543 xgr %r14,%r2 ### Xupdate(38) 544 lg %r2,128(%r15) 545 xg %r14,152(%r15) 546 xgr %r14,%r2 547 rll %r14,%r14,1 548 rllg %r12,%r14,32 549 rll %r12,%r12,1 550 rllg %r14,%r12,32 551 lr %r13,%r12 # feedback 552 stg %r14,120(%r15) 553 alr %r6,%r0 ### 38 554 rll %r11,%r7,5 555 lr %r10,%r8 556 alr %r6,%r11 557 xr %r10,%r9 558 alr %r6,%r12 559 xr %r10,%r5 560 rll %r8,%r8,30 561 alr %r6,%r10 562 alr %r5,%r0 ### 39 563 rll %r11,%r6,5 564 lr %r10,%r7 565 alr %r5,%r11 566 xr %r10,%r8 567 alr %r5,%r14 568 xr %r10,%r9 569 rll %r7,%r7,30 570 alr %r5,%r10 571 rllg %r1,%r1,32 572 xgr %r13,%r2 ### Xupdate(40) 573 lg %r2,136(%r15) 574 xg %r13,96(%r15) 575 xgr %r13,%r2 576 rll %r13,%r13,1 577 rllg %r14,%r13,32 578 rll %r14,%r14,1 579 rllg %r13,%r14,32 580 lr %r12,%r14 # feedback 581 stg %r13,128(%r15) 582 alr %r9,%r1 ### 40 583 rll %r11,%r5,5 584 lr %r10,%r6 585 alr %r9,%r11 586 or %r10,%r7 587 lr %r11,%r6 588 nr %r10,%r8 589 nr %r11,%r7 590 alr %r9,%r14 591 or %r10,%r11 592 rll %r6,%r6,30 593 alr %r9,%r10 594 alr %r8,%r1 ### 41 595 rll %r11,%r9,5 596 lr %r10,%r5 597 alr %r8,%r11 598 or %r10,%r6 599 lr %r11,%r5 600 nr %r10,%r7 601 nr %r11,%r6 602 alr %r8,%r13 603 or %r10,%r11 604 rll %r5,%r5,30 605 alr %r8,%r10 606 xgr %r12,%r2 ### Xupdate(42) 607 lg %r2,144(%r15) 608 xg %r12,104(%r15) 609 xgr %r12,%r2 610 rll %r12,%r12,1 611 rllg %r13,%r12,32 612 rll %r13,%r13,1 613 rllg %r12,%r13,32 614 lr %r14,%r13 # feedback 615 stg %r12,136(%r15) 616 alr %r7,%r1 ### 42 617 rll %r11,%r8,5 618 lr %r10,%r9 619 alr %r7,%r11 620 or %r10,%r5 621 lr %r11,%r9 622 nr %r10,%r6 623 nr %r11,%r5 624 alr %r7,%r13 625 or %r10,%r11 626 rll %r9,%r9,30 627 alr %r7,%r10 628 alr %r6,%r1 ### 43 629 rll %r11,%r7,5 630 lr %r10,%r8 631 alr %r6,%r11 632 or %r10,%r9 633 lr %r11,%r8 634 nr %r10,%r5 635 nr %r11,%r9 636 alr %r6,%r12 637 or %r10,%r11 638 rll %r8,%r8,30 639 alr %r6,%r10 640 xgr %r14,%r2 ### Xupdate(44) 641 lg %r2,152(%r15) 642 xg %r14,112(%r15) 643 xgr %r14,%r2 644 rll %r14,%r14,1 645 rllg %r12,%r14,32 646 rll %r12,%r12,1 647 rllg %r14,%r12,32 648 lr %r13,%r12 # feedback 649 stg %r14,144(%r15) 650 alr %r5,%r1 ### 44 651 rll %r11,%r6,5 652 lr %r10,%r7 653 alr %r5,%r11 654 or %r10,%r8 655 lr %r11,%r7 656 nr %r10,%r9 657 nr %r11,%r8 658 alr %r5,%r12 659 or %r10,%r11 660 rll %r7,%r7,30 661 alr %r5,%r10 662 alr %r9,%r1 ### 45 663 rll %r11,%r5,5 664 lr %r10,%r6 665 alr %r9,%r11 666 or %r10,%r7 667 lr %r11,%r6 668 nr %r10,%r8 669 nr %r11,%r7 670 alr %r9,%r14 671 or %r10,%r11 672 rll %r6,%r6,30 673 alr %r9,%r10 674 xgr %r13,%r2 ### Xupdate(46) 675 lg %r2,96(%r15) 676 xg %r13,120(%r15) 677 xgr %r13,%r2 678 rll %r13,%r13,1 679 rllg %r14,%r13,32 680 rll %r14,%r14,1 681 rllg %r13,%r14,32 682 lr %r12,%r14 # feedback 683 stg %r13,152(%r15) 684 alr %r8,%r1 ### 46 685 rll %r11,%r9,5 686 lr %r10,%r5 687 alr %r8,%r11 688 or %r10,%r6 689 lr %r11,%r5 690 nr %r10,%r7 691 nr %r11,%r6 692 alr %r8,%r14 693 or %r10,%r11 694 rll %r5,%r5,30 695 alr %r8,%r10 696 alr %r7,%r1 ### 47 697 rll %r11,%r8,5 698 lr %r10,%r9 699 alr %r7,%r11 700 or %r10,%r5 701 lr %r11,%r9 702 nr %r10,%r6 703 nr %r11,%r5 704 alr %r7,%r13 705 or %r10,%r11 706 rll %r9,%r9,30 707 alr %r7,%r10 708 xgr %r12,%r2 ### Xupdate(48) 709 lg %r2,104(%r15) 710 xg %r12,128(%r15) 711 xgr %r12,%r2 712 rll %r12,%r12,1 713 rllg %r13,%r12,32 714 rll %r13,%r13,1 715 rllg %r12,%r13,32 716 lr %r14,%r13 # feedback 717 stg %r12,96(%r15) 718 alr %r6,%r1 ### 48 719 rll %r11,%r7,5 720 lr %r10,%r8 721 alr %r6,%r11 722 or %r10,%r9 723 lr %r11,%r8 724 nr %r10,%r5 725 nr %r11,%r9 726 alr %r6,%r13 727 or %r10,%r11 728 rll %r8,%r8,30 729 alr %r6,%r10 730 alr %r5,%r1 ### 49 731 rll %r11,%r6,5 732 lr %r10,%r7 733 alr %r5,%r11 734 or %r10,%r8 735 lr %r11,%r7 736 nr %r10,%r9 737 nr %r11,%r8 738 alr %r5,%r12 739 or %r10,%r11 740 rll %r7,%r7,30 741 alr %r5,%r10 742 xgr %r14,%r2 ### Xupdate(50) 743 lg %r2,112(%r15) 744 xg %r14,136(%r15) 745 xgr %r14,%r2 746 rll %r14,%r14,1 747 rllg %r12,%r14,32 748 rll %r12,%r12,1 749 rllg %r14,%r12,32 750 lr %r13,%r12 # feedback 751 stg %r14,104(%r15) 752 alr %r9,%r1 ### 50 753 rll %r11,%r5,5 754 lr %r10,%r6 755 alr %r9,%r11 756 or %r10,%r7 757 lr %r11,%r6 758 nr %r10,%r8 759 nr %r11,%r7 760 alr %r9,%r12 761 or %r10,%r11 762 rll %r6,%r6,30 763 alr %r9,%r10 764 alr %r8,%r1 ### 51 765 rll %r11,%r9,5 766 lr %r10,%r5 767 alr %r8,%r11 768 or %r10,%r6 769 lr %r11,%r5 770 nr %r10,%r7 771 nr %r11,%r6 772 alr %r8,%r14 773 or %r10,%r11 774 rll %r5,%r5,30 775 alr %r8,%r10 776 xgr %r13,%r2 ### Xupdate(52) 777 lg %r2,120(%r15) 778 xg %r13,144(%r15) 779 xgr %r13,%r2 780 rll %r13,%r13,1 781 rllg %r14,%r13,32 782 rll %r14,%r14,1 783 rllg %r13,%r14,32 784 lr %r12,%r14 # feedback 785 stg %r13,112(%r15) 786 alr %r7,%r1 ### 52 787 rll %r11,%r8,5 788 lr %r10,%r9 789 alr %r7,%r11 790 or %r10,%r5 791 lr %r11,%r9 792 nr %r10,%r6 793 nr %r11,%r5 794 alr %r7,%r14 795 or %r10,%r11 796 rll %r9,%r9,30 797 alr %r7,%r10 798 alr %r6,%r1 ### 53 799 rll %r11,%r7,5 800 lr %r10,%r8 801 alr %r6,%r11 802 or %r10,%r9 803 lr %r11,%r8 804 nr %r10,%r5 805 nr %r11,%r9 806 alr %r6,%r13 807 or %r10,%r11 808 rll %r8,%r8,30 809 alr %r6,%r10 810 xgr %r12,%r2 ### Xupdate(54) 811 lg %r2,128(%r15) 812 xg %r12,152(%r15) 813 xgr %r12,%r2 814 rll %r12,%r12,1 815 rllg %r13,%r12,32 816 rll %r13,%r13,1 817 rllg %r12,%r13,32 818 lr %r14,%r13 # feedback 819 stg %r12,120(%r15) 820 alr %r5,%r1 ### 54 821 rll %r11,%r6,5 822 lr %r10,%r7 823 alr %r5,%r11 824 or %r10,%r8 825 lr %r11,%r7 826 nr %r10,%r9 827 nr %r11,%r8 828 alr %r5,%r13 829 or %r10,%r11 830 rll %r7,%r7,30 831 alr %r5,%r10 832 alr %r9,%r1 ### 55 833 rll %r11,%r5,5 834 lr %r10,%r6 835 alr %r9,%r11 836 or %r10,%r7 837 lr %r11,%r6 838 nr %r10,%r8 839 nr %r11,%r7 840 alr %r9,%r12 841 or %r10,%r11 842 rll %r6,%r6,30 843 alr %r9,%r10 844 xgr %r14,%r2 ### Xupdate(56) 845 lg %r2,136(%r15) 846 xg %r14,96(%r15) 847 xgr %r14,%r2 848 rll %r14,%r14,1 849 rllg %r12,%r14,32 850 rll %r12,%r12,1 851 rllg %r14,%r12,32 852 lr %r13,%r12 # feedback 853 stg %r14,128(%r15) 854 alr %r8,%r1 ### 56 855 rll %r11,%r9,5 856 lr %r10,%r5 857 alr %r8,%r11 858 or %r10,%r6 859 lr %r11,%r5 860 nr %r10,%r7 861 nr %r11,%r6 862 alr %r8,%r12 863 or %r10,%r11 864 rll %r5,%r5,30 865 alr %r8,%r10 866 alr %r7,%r1 ### 57 867 rll %r11,%r8,5 868 lr %r10,%r9 869 alr %r7,%r11 870 or %r10,%r5 871 lr %r11,%r9 872 nr %r10,%r6 873 nr %r11,%r5 874 alr %r7,%r14 875 or %r10,%r11 876 rll %r9,%r9,30 877 alr %r7,%r10 878 xgr %r13,%r2 ### Xupdate(58) 879 lg %r2,144(%r15) 880 xg %r13,104(%r15) 881 xgr %r13,%r2 882 rll %r13,%r13,1 883 rllg %r14,%r13,32 884 rll %r14,%r14,1 885 rllg %r13,%r14,32 886 lr %r12,%r14 # feedback 887 stg %r13,136(%r15) 888 alr %r6,%r1 ### 58 889 rll %r11,%r7,5 890 lr %r10,%r8 891 alr %r6,%r11 892 or %r10,%r9 893 lr %r11,%r8 894 nr %r10,%r5 895 nr %r11,%r9 896 alr %r6,%r14 897 or %r10,%r11 898 rll %r8,%r8,30 899 alr %r6,%r10 900 alr %r5,%r1 ### 59 901 rll %r11,%r6,5 902 lr %r10,%r7 903 alr %r5,%r11 904 or %r10,%r8 905 lr %r11,%r7 906 nr %r10,%r9 907 nr %r11,%r8 908 alr %r5,%r13 909 or %r10,%r11 910 rll %r7,%r7,30 911 alr %r5,%r10 912 rllg %r1,%r1,32 913 xgr %r12,%r2 ### Xupdate(60) 914 lg %r2,152(%r15) 915 xg %r12,112(%r15) 916 xgr %r12,%r2 917 rll %r12,%r12,1 918 rllg %r13,%r12,32 919 rll %r13,%r13,1 920 rllg %r12,%r13,32 921 lr %r14,%r13 # feedback 922 stg %r12,144(%r15) 923 alr %r9,%r1 ### 60 924 rll %r11,%r5,5 925 lr %r10,%r6 926 alr %r9,%r11 927 xr %r10,%r7 928 alr %r9,%r13 929 xr %r10,%r8 930 rll %r6,%r6,30 931 alr %r9,%r10 932 alr %r8,%r1 ### 61 933 rll %r11,%r9,5 934 lr %r10,%r5 935 alr %r8,%r11 936 xr %r10,%r6 937 alr %r8,%r12 938 xr %r10,%r7 939 rll %r5,%r5,30 940 alr %r8,%r10 941 xgr %r14,%r2 ### Xupdate(62) 942 lg %r2,96(%r15) 943 xg %r14,120(%r15) 944 xgr %r14,%r2 945 rll %r14,%r14,1 946 rllg %r12,%r14,32 947 rll %r12,%r12,1 948 rllg %r14,%r12,32 949 lr %r13,%r12 # feedback 950 stg %r14,152(%r15) 951 alr %r7,%r1 ### 62 952 rll %r11,%r8,5 953 lr %r10,%r9 954 alr %r7,%r11 955 xr %r10,%r5 956 alr %r7,%r12 957 xr %r10,%r6 958 rll %r9,%r9,30 959 alr %r7,%r10 960 alr %r6,%r1 ### 63 961 rll %r11,%r7,5 962 lr %r10,%r8 963 alr %r6,%r11 964 xr %r10,%r9 965 alr %r6,%r14 966 xr %r10,%r5 967 rll %r8,%r8,30 968 alr %r6,%r10 969 xgr %r13,%r2 ### Xupdate(64) 970 lg %r2,104(%r15) 971 xg %r13,128(%r15) 972 xgr %r13,%r2 973 rll %r13,%r13,1 974 rllg %r14,%r13,32 975 rll %r14,%r14,1 976 rllg %r13,%r14,32 977 lr %r12,%r14 # feedback 978 stg %r13,96(%r15) 979 alr %r5,%r1 ### 64 980 rll %r11,%r6,5 981 lr %r10,%r7 982 alr %r5,%r11 983 xr %r10,%r8 984 alr %r5,%r14 985 xr %r10,%r9 986 rll %r7,%r7,30 987 alr %r5,%r10 988 alr %r9,%r1 ### 65 989 rll %r11,%r5,5 990 lr %r10,%r6 991 alr %r9,%r11 992 xr %r10,%r7 993 alr %r9,%r13 994 xr %r10,%r8 995 rll %r6,%r6,30 996 alr %r9,%r10 997 xgr %r12,%r2 ### Xupdate(66) 998 lg %r2,112(%r15) 999 xg %r12,136(%r15) 1000 xgr %r12,%r2 1001 rll %r12,%r12,1 1002 rllg %r13,%r12,32 1003 rll %r13,%r13,1 1004 rllg %r12,%r13,32 1005 lr %r14,%r13 # feedback 1006 stg %r12,104(%r15) 1007 alr %r8,%r1 ### 66 1008 rll %r11,%r9,5 1009 lr %r10,%r5 1010 alr %r8,%r11 1011 xr %r10,%r6 1012 alr %r8,%r13 1013 xr %r10,%r7 1014 rll %r5,%r5,30 1015 alr %r8,%r10 1016 alr %r7,%r1 ### 67 1017 rll %r11,%r8,5 1018 lr %r10,%r9 1019 alr %r7,%r11 1020 xr %r10,%r5 1021 alr %r7,%r12 1022 xr %r10,%r6 1023 rll %r9,%r9,30 1024 alr %r7,%r10 1025 xgr %r14,%r2 ### Xupdate(68) 1026 lg %r2,120(%r15) 1027 xg %r14,144(%r15) 1028 xgr %r14,%r2 1029 rll %r14,%r14,1 1030 rllg %r12,%r14,32 1031 rll %r12,%r12,1 1032 rllg %r14,%r12,32 1033 lr %r13,%r12 # feedback 1034 stg %r14,112(%r15) 1035 alr %r6,%r1 ### 68 1036 rll %r11,%r7,5 1037 lr %r10,%r8 1038 alr %r6,%r11 1039 xr %r10,%r9 1040 alr %r6,%r12 1041 xr %r10,%r5 1042 rll %r8,%r8,30 1043 alr %r6,%r10 1044 alr %r5,%r1 ### 69 1045 rll %r11,%r6,5 1046 lr %r10,%r7 1047 alr %r5,%r11 1048 xr %r10,%r8 1049 alr %r5,%r14 1050 xr %r10,%r9 1051 rll %r7,%r7,30 1052 alr %r5,%r10 1053 xgr %r13,%r2 ### Xupdate(70) 1054 lg %r2,128(%r15) 1055 xg %r13,152(%r15) 1056 xgr %r13,%r2 1057 rll %r13,%r13,1 1058 rllg %r14,%r13,32 1059 rll %r14,%r14,1 1060 rllg %r13,%r14,32 1061 lr %r12,%r14 # feedback 1062 stg %r13,120(%r15) 1063 alr %r9,%r1 ### 70 1064 rll %r11,%r5,5 1065 lr %r10,%r6 1066 alr %r9,%r11 1067 xr %r10,%r7 1068 alr %r9,%r14 1069 xr %r10,%r8 1070 rll %r6,%r6,30 1071 alr %r9,%r10 1072 alr %r8,%r1 ### 71 1073 rll %r11,%r9,5 1074 lr %r10,%r5 1075 alr %r8,%r11 1076 xr %r10,%r6 1077 alr %r8,%r13 1078 xr %r10,%r7 1079 rll %r5,%r5,30 1080 alr %r8,%r10 1081 xgr %r12,%r2 ### Xupdate(72) 1082 lg %r2,136(%r15) 1083 xg %r12,96(%r15) 1084 xgr %r12,%r2 1085 rll %r12,%r12,1 1086 rllg %r13,%r12,32 1087 rll %r13,%r13,1 1088 rllg %r12,%r13,32 1089 lr %r14,%r13 # feedback 1090 alr %r7,%r1 ### 72 1091 rll %r11,%r8,5 1092 lr %r10,%r9 1093 alr %r7,%r11 1094 xr %r10,%r5 1095 alr %r7,%r13 1096 xr %r10,%r6 1097 rll %r9,%r9,30 1098 alr %r7,%r10 1099 alr %r6,%r1 ### 73 1100 rll %r11,%r7,5 1101 lr %r10,%r8 1102 alr %r6,%r11 1103 xr %r10,%r9 1104 alr %r6,%r12 1105 xr %r10,%r5 1106 rll %r8,%r8,30 1107 alr %r6,%r10 1108 xgr %r14,%r2 ### Xupdate(74) 1109 lg %r2,144(%r15) 1110 xg %r14,104(%r15) 1111 xgr %r14,%r2 1112 rll %r14,%r14,1 1113 rllg %r12,%r14,32 1114 rll %r12,%r12,1 1115 rllg %r14,%r12,32 1116 lr %r13,%r12 # feedback 1117 alr %r5,%r1 ### 74 1118 rll %r11,%r6,5 1119 lr %r10,%r7 1120 alr %r5,%r11 1121 xr %r10,%r8 1122 alr %r5,%r12 1123 xr %r10,%r9 1124 rll %r7,%r7,30 1125 alr %r5,%r10 1126 alr %r9,%r1 ### 75 1127 rll %r11,%r5,5 1128 lr %r10,%r6 1129 alr %r9,%r11 1130 xr %r10,%r7 1131 alr %r9,%r14 1132 xr %r10,%r8 1133 rll %r6,%r6,30 1134 alr %r9,%r10 1135 xgr %r13,%r2 ### Xupdate(76) 1136 lg %r2,152(%r15) 1137 xg %r13,112(%r15) 1138 xgr %r13,%r2 1139 rll %r13,%r13,1 1140 rllg %r14,%r13,32 1141 rll %r14,%r14,1 1142 rllg %r13,%r14,32 1143 lr %r12,%r14 # feedback 1144 alr %r8,%r1 ### 76 1145 rll %r11,%r9,5 1146 lr %r10,%r5 1147 alr %r8,%r11 1148 xr %r10,%r6 1149 alr %r8,%r14 1150 xr %r10,%r7 1151 rll %r5,%r5,30 1152 alr %r8,%r10 1153 alr %r7,%r1 ### 77 1154 rll %r11,%r8,5 1155 lr %r10,%r9 1156 alr %r7,%r11 1157 xr %r10,%r5 1158 alr %r7,%r13 1159 xr %r10,%r6 1160 rll %r9,%r9,30 1161 alr %r7,%r10 1162 xgr %r12,%r2 ### Xupdate(78) 1163 lg %r2,96(%r15) 1164 xg %r12,120(%r15) 1165 xgr %r12,%r2 1166 rll %r12,%r12,1 1167 rllg %r13,%r12,32 1168 rll %r13,%r13,1 1169 rllg %r12,%r13,32 1170 lr %r14,%r13 # feedback 1171 alr %r6,%r1 ### 78 1172 rll %r11,%r7,5 1173 lr %r10,%r8 1174 alr %r6,%r11 1175 xr %r10,%r9 1176 alr %r6,%r13 1177 xr %r10,%r5 1178 rll %r8,%r8,30 1179 alr %r6,%r10 1180 alr %r5,%r1 ### 79 1181 rll %r11,%r6,5 1182 lr %r10,%r7 1183 alr %r5,%r11 1184 xr %r10,%r8 1185 alr %r5,%r12 1186 xr %r10,%r9 1187 rll %r7,%r7,30 1188 alr %r5,%r10 1189 1190 l %r2,168(%r15) 1191 la %r3,64(%r3) 1192 al %r5,0(%r2) 1193 al %r6,4(%r2) 1194 al %r7,8(%r2) 1195 al %r8,12(%r2) 1196 al %r9,16(%r2) 1197 st %r5,0(%r2) 1198 st %r6,4(%r2) 1199 st %r7,8(%r2) 1200 st %r8,12(%r2) 1201 st %r9,16(%r2) 1202 brct %r4,.Lloop 1203 1204 lm %r6,%r15,184(%r15) 1205 br %r14 1206 .size sha1_block_data_order,.-sha1_block_data_order 1207 .string "SHA1 block transform for s390x, CRYPTOGAMS by <appro@openssl.org>" 1208