1*c0855eaaSJohn Baldwin/* Do not modify. This file is auto-generated from bsaes-x86_64.pl. */ 2*c0855eaaSJohn Baldwin.text 3*c0855eaaSJohn Baldwin 4*c0855eaaSJohn Baldwin 5*c0855eaaSJohn Baldwin 6*c0855eaaSJohn Baldwin 7*c0855eaaSJohn Baldwin.type _bsaes_encrypt8,@function 8*c0855eaaSJohn Baldwin.align 64 9*c0855eaaSJohn Baldwin_bsaes_encrypt8: 10*c0855eaaSJohn Baldwin.cfi_startproc 11*c0855eaaSJohn Baldwin leaq .LBS0(%rip),%r11 12*c0855eaaSJohn Baldwin 13*c0855eaaSJohn Baldwin movdqa (%rax),%xmm8 14*c0855eaaSJohn Baldwin leaq 16(%rax),%rax 15*c0855eaaSJohn Baldwin movdqa 80(%r11),%xmm7 16*c0855eaaSJohn Baldwin pxor %xmm8,%xmm15 17*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 18*c0855eaaSJohn Baldwin pxor %xmm8,%xmm1 19*c0855eaaSJohn Baldwin pxor %xmm8,%xmm2 20*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 21*c0855eaaSJohn Baldwin.byte 102,15,56,0,199 22*c0855eaaSJohn Baldwin pxor %xmm8,%xmm3 23*c0855eaaSJohn Baldwin pxor %xmm8,%xmm4 24*c0855eaaSJohn Baldwin.byte 102,15,56,0,207 25*c0855eaaSJohn Baldwin.byte 102,15,56,0,215 26*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 27*c0855eaaSJohn Baldwin pxor %xmm8,%xmm6 28*c0855eaaSJohn Baldwin.byte 102,15,56,0,223 29*c0855eaaSJohn Baldwin.byte 102,15,56,0,231 30*c0855eaaSJohn Baldwin.byte 102,15,56,0,239 31*c0855eaaSJohn Baldwin.byte 102,15,56,0,247 32*c0855eaaSJohn Baldwin_bsaes_encrypt8_bitslice: 33*c0855eaaSJohn Baldwin movdqa 0(%r11),%xmm7 34*c0855eaaSJohn Baldwin movdqa 16(%r11),%xmm8 35*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm9 36*c0855eaaSJohn Baldwin psrlq $1,%xmm5 37*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm10 38*c0855eaaSJohn Baldwin psrlq $1,%xmm3 39*c0855eaaSJohn Baldwin pxor %xmm6,%xmm5 40*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 41*c0855eaaSJohn Baldwin pand %xmm7,%xmm5 42*c0855eaaSJohn Baldwin pand %xmm7,%xmm3 43*c0855eaaSJohn Baldwin pxor %xmm5,%xmm6 44*c0855eaaSJohn Baldwin psllq $1,%xmm5 45*c0855eaaSJohn Baldwin pxor %xmm3,%xmm4 46*c0855eaaSJohn Baldwin psllq $1,%xmm3 47*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 48*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 49*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm9 50*c0855eaaSJohn Baldwin psrlq $1,%xmm1 51*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 52*c0855eaaSJohn Baldwin psrlq $1,%xmm15 53*c0855eaaSJohn Baldwin pxor %xmm2,%xmm1 54*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 55*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 56*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 57*c0855eaaSJohn Baldwin pxor %xmm1,%xmm2 58*c0855eaaSJohn Baldwin psllq $1,%xmm1 59*c0855eaaSJohn Baldwin pxor %xmm15,%xmm0 60*c0855eaaSJohn Baldwin psllq $1,%xmm15 61*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 62*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 63*c0855eaaSJohn Baldwin movdqa 32(%r11),%xmm7 64*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm9 65*c0855eaaSJohn Baldwin psrlq $2,%xmm4 66*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm10 67*c0855eaaSJohn Baldwin psrlq $2,%xmm3 68*c0855eaaSJohn Baldwin pxor %xmm6,%xmm4 69*c0855eaaSJohn Baldwin pxor %xmm5,%xmm3 70*c0855eaaSJohn Baldwin pand %xmm8,%xmm4 71*c0855eaaSJohn Baldwin pand %xmm8,%xmm3 72*c0855eaaSJohn Baldwin pxor %xmm4,%xmm6 73*c0855eaaSJohn Baldwin psllq $2,%xmm4 74*c0855eaaSJohn Baldwin pxor %xmm3,%xmm5 75*c0855eaaSJohn Baldwin psllq $2,%xmm3 76*c0855eaaSJohn Baldwin pxor %xmm9,%xmm4 77*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 78*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 79*c0855eaaSJohn Baldwin psrlq $2,%xmm0 80*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 81*c0855eaaSJohn Baldwin psrlq $2,%xmm15 82*c0855eaaSJohn Baldwin pxor %xmm2,%xmm0 83*c0855eaaSJohn Baldwin pxor %xmm1,%xmm15 84*c0855eaaSJohn Baldwin pand %xmm8,%xmm0 85*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 86*c0855eaaSJohn Baldwin pxor %xmm0,%xmm2 87*c0855eaaSJohn Baldwin psllq $2,%xmm0 88*c0855eaaSJohn Baldwin pxor %xmm15,%xmm1 89*c0855eaaSJohn Baldwin psllq $2,%xmm15 90*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 91*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 92*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm9 93*c0855eaaSJohn Baldwin psrlq $4,%xmm2 94*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm10 95*c0855eaaSJohn Baldwin psrlq $4,%xmm1 96*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 97*c0855eaaSJohn Baldwin pxor %xmm5,%xmm1 98*c0855eaaSJohn Baldwin pand %xmm7,%xmm2 99*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 100*c0855eaaSJohn Baldwin pxor %xmm2,%xmm6 101*c0855eaaSJohn Baldwin psllq $4,%xmm2 102*c0855eaaSJohn Baldwin pxor %xmm1,%xmm5 103*c0855eaaSJohn Baldwin psllq $4,%xmm1 104*c0855eaaSJohn Baldwin pxor %xmm9,%xmm2 105*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 106*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 107*c0855eaaSJohn Baldwin psrlq $4,%xmm0 108*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 109*c0855eaaSJohn Baldwin psrlq $4,%xmm15 110*c0855eaaSJohn Baldwin pxor %xmm4,%xmm0 111*c0855eaaSJohn Baldwin pxor %xmm3,%xmm15 112*c0855eaaSJohn Baldwin pand %xmm7,%xmm0 113*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 114*c0855eaaSJohn Baldwin pxor %xmm0,%xmm4 115*c0855eaaSJohn Baldwin psllq $4,%xmm0 116*c0855eaaSJohn Baldwin pxor %xmm15,%xmm3 117*c0855eaaSJohn Baldwin psllq $4,%xmm15 118*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 119*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 120*c0855eaaSJohn Baldwin decl %r10d 121*c0855eaaSJohn Baldwin jmp .Lenc_sbox 122*c0855eaaSJohn Baldwin.align 16 123*c0855eaaSJohn Baldwin.Lenc_loop: 124*c0855eaaSJohn Baldwin pxor 0(%rax),%xmm15 125*c0855eaaSJohn Baldwin pxor 16(%rax),%xmm0 126*c0855eaaSJohn Baldwin pxor 32(%rax),%xmm1 127*c0855eaaSJohn Baldwin pxor 48(%rax),%xmm2 128*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 129*c0855eaaSJohn Baldwin.byte 102,15,56,0,199 130*c0855eaaSJohn Baldwin pxor 64(%rax),%xmm3 131*c0855eaaSJohn Baldwin pxor 80(%rax),%xmm4 132*c0855eaaSJohn Baldwin.byte 102,15,56,0,207 133*c0855eaaSJohn Baldwin.byte 102,15,56,0,215 134*c0855eaaSJohn Baldwin pxor 96(%rax),%xmm5 135*c0855eaaSJohn Baldwin pxor 112(%rax),%xmm6 136*c0855eaaSJohn Baldwin.byte 102,15,56,0,223 137*c0855eaaSJohn Baldwin.byte 102,15,56,0,231 138*c0855eaaSJohn Baldwin.byte 102,15,56,0,239 139*c0855eaaSJohn Baldwin.byte 102,15,56,0,247 140*c0855eaaSJohn Baldwin leaq 128(%rax),%rax 141*c0855eaaSJohn Baldwin.Lenc_sbox: 142*c0855eaaSJohn Baldwin pxor %xmm5,%xmm4 143*c0855eaaSJohn Baldwin pxor %xmm0,%xmm1 144*c0855eaaSJohn Baldwin pxor %xmm15,%xmm2 145*c0855eaaSJohn Baldwin pxor %xmm1,%xmm5 146*c0855eaaSJohn Baldwin pxor %xmm15,%xmm4 147*c0855eaaSJohn Baldwin 148*c0855eaaSJohn Baldwin pxor %xmm2,%xmm5 149*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 150*c0855eaaSJohn Baldwin pxor %xmm4,%xmm6 151*c0855eaaSJohn Baldwin pxor %xmm3,%xmm2 152*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 153*c0855eaaSJohn Baldwin pxor %xmm0,%xmm2 154*c0855eaaSJohn Baldwin 155*c0855eaaSJohn Baldwin pxor %xmm6,%xmm1 156*c0855eaaSJohn Baldwin pxor %xmm4,%xmm0 157*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm10 158*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 159*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm8 160*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm12 161*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm11 162*c0855eaaSJohn Baldwin 163*c0855eaaSJohn Baldwin pxor %xmm3,%xmm10 164*c0855eaaSJohn Baldwin pxor %xmm1,%xmm9 165*c0855eaaSJohn Baldwin pxor %xmm2,%xmm8 166*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm13 167*c0855eaaSJohn Baldwin pxor %xmm3,%xmm12 168*c0855eaaSJohn Baldwin movdqa %xmm9,%xmm7 169*c0855eaaSJohn Baldwin pxor %xmm15,%xmm11 170*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm14 171*c0855eaaSJohn Baldwin 172*c0855eaaSJohn Baldwin por %xmm8,%xmm9 173*c0855eaaSJohn Baldwin por %xmm11,%xmm10 174*c0855eaaSJohn Baldwin pxor %xmm7,%xmm14 175*c0855eaaSJohn Baldwin pand %xmm11,%xmm13 176*c0855eaaSJohn Baldwin pxor %xmm8,%xmm11 177*c0855eaaSJohn Baldwin pand %xmm8,%xmm7 178*c0855eaaSJohn Baldwin pand %xmm11,%xmm14 179*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm11 180*c0855eaaSJohn Baldwin pxor %xmm15,%xmm11 181*c0855eaaSJohn Baldwin pand %xmm11,%xmm12 182*c0855eaaSJohn Baldwin pxor %xmm12,%xmm10 183*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 184*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm12 185*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm11 186*c0855eaaSJohn Baldwin pxor %xmm0,%xmm12 187*c0855eaaSJohn Baldwin pxor %xmm5,%xmm11 188*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm8 189*c0855eaaSJohn Baldwin pand %xmm11,%xmm12 190*c0855eaaSJohn Baldwin por %xmm11,%xmm8 191*c0855eaaSJohn Baldwin pxor %xmm12,%xmm7 192*c0855eaaSJohn Baldwin pxor %xmm14,%xmm10 193*c0855eaaSJohn Baldwin pxor %xmm13,%xmm9 194*c0855eaaSJohn Baldwin pxor %xmm14,%xmm8 195*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm11 196*c0855eaaSJohn Baldwin pxor %xmm13,%xmm7 197*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm12 198*c0855eaaSJohn Baldwin pxor %xmm13,%xmm8 199*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm13 200*c0855eaaSJohn Baldwin pand %xmm2,%xmm11 201*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm14 202*c0855eaaSJohn Baldwin pand %xmm15,%xmm12 203*c0855eaaSJohn Baldwin pand %xmm4,%xmm13 204*c0855eaaSJohn Baldwin por %xmm5,%xmm14 205*c0855eaaSJohn Baldwin pxor %xmm11,%xmm10 206*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 207*c0855eaaSJohn Baldwin pxor %xmm13,%xmm8 208*c0855eaaSJohn Baldwin pxor %xmm14,%xmm7 209*c0855eaaSJohn Baldwin 210*c0855eaaSJohn Baldwin 211*c0855eaaSJohn Baldwin 212*c0855eaaSJohn Baldwin 213*c0855eaaSJohn Baldwin 214*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm11 215*c0855eaaSJohn Baldwin pand %xmm8,%xmm10 216*c0855eaaSJohn Baldwin pxor %xmm9,%xmm11 217*c0855eaaSJohn Baldwin 218*c0855eaaSJohn Baldwin movdqa %xmm7,%xmm13 219*c0855eaaSJohn Baldwin movdqa %xmm11,%xmm14 220*c0855eaaSJohn Baldwin pxor %xmm10,%xmm13 221*c0855eaaSJohn Baldwin pand %xmm13,%xmm14 222*c0855eaaSJohn Baldwin 223*c0855eaaSJohn Baldwin movdqa %xmm8,%xmm12 224*c0855eaaSJohn Baldwin pxor %xmm9,%xmm14 225*c0855eaaSJohn Baldwin pxor %xmm7,%xmm12 226*c0855eaaSJohn Baldwin 227*c0855eaaSJohn Baldwin pxor %xmm9,%xmm10 228*c0855eaaSJohn Baldwin 229*c0855eaaSJohn Baldwin pand %xmm10,%xmm12 230*c0855eaaSJohn Baldwin 231*c0855eaaSJohn Baldwin movdqa %xmm13,%xmm9 232*c0855eaaSJohn Baldwin pxor %xmm7,%xmm12 233*c0855eaaSJohn Baldwin 234*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 235*c0855eaaSJohn Baldwin pxor %xmm12,%xmm8 236*c0855eaaSJohn Baldwin 237*c0855eaaSJohn Baldwin pand %xmm7,%xmm9 238*c0855eaaSJohn Baldwin 239*c0855eaaSJohn Baldwin pxor %xmm9,%xmm13 240*c0855eaaSJohn Baldwin pxor %xmm9,%xmm8 241*c0855eaaSJohn Baldwin 242*c0855eaaSJohn Baldwin pand %xmm14,%xmm13 243*c0855eaaSJohn Baldwin 244*c0855eaaSJohn Baldwin pxor %xmm11,%xmm13 245*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm11 246*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm7 247*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm9 248*c0855eaaSJohn Baldwin pxor %xmm13,%xmm9 249*c0855eaaSJohn Baldwin pand %xmm5,%xmm9 250*c0855eaaSJohn Baldwin pxor %xmm4,%xmm5 251*c0855eaaSJohn Baldwin pand %xmm14,%xmm4 252*c0855eaaSJohn Baldwin pand %xmm13,%xmm5 253*c0855eaaSJohn Baldwin pxor %xmm4,%xmm5 254*c0855eaaSJohn Baldwin pxor %xmm9,%xmm4 255*c0855eaaSJohn Baldwin pxor %xmm15,%xmm11 256*c0855eaaSJohn Baldwin pxor %xmm2,%xmm7 257*c0855eaaSJohn Baldwin pxor %xmm12,%xmm14 258*c0855eaaSJohn Baldwin pxor %xmm8,%xmm13 259*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 260*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm9 261*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 262*c0855eaaSJohn Baldwin pxor %xmm8,%xmm9 263*c0855eaaSJohn Baldwin pand %xmm11,%xmm10 264*c0855eaaSJohn Baldwin pand %xmm15,%xmm9 265*c0855eaaSJohn Baldwin pxor %xmm7,%xmm11 266*c0855eaaSJohn Baldwin pxor %xmm2,%xmm15 267*c0855eaaSJohn Baldwin pand %xmm14,%xmm7 268*c0855eaaSJohn Baldwin pand %xmm12,%xmm2 269*c0855eaaSJohn Baldwin pand %xmm13,%xmm11 270*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 271*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 272*c0855eaaSJohn Baldwin pxor %xmm2,%xmm15 273*c0855eaaSJohn Baldwin pxor %xmm10,%xmm11 274*c0855eaaSJohn Baldwin pxor %xmm9,%xmm2 275*c0855eaaSJohn Baldwin pxor %xmm11,%xmm5 276*c0855eaaSJohn Baldwin pxor %xmm11,%xmm15 277*c0855eaaSJohn Baldwin pxor %xmm7,%xmm4 278*c0855eaaSJohn Baldwin pxor %xmm7,%xmm2 279*c0855eaaSJohn Baldwin 280*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm11 281*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm7 282*c0855eaaSJohn Baldwin pxor %xmm3,%xmm11 283*c0855eaaSJohn Baldwin pxor %xmm1,%xmm7 284*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 285*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm9 286*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 287*c0855eaaSJohn Baldwin pxor %xmm8,%xmm9 288*c0855eaaSJohn Baldwin pand %xmm11,%xmm10 289*c0855eaaSJohn Baldwin pand %xmm3,%xmm9 290*c0855eaaSJohn Baldwin pxor %xmm7,%xmm11 291*c0855eaaSJohn Baldwin pxor %xmm1,%xmm3 292*c0855eaaSJohn Baldwin pand %xmm14,%xmm7 293*c0855eaaSJohn Baldwin pand %xmm12,%xmm1 294*c0855eaaSJohn Baldwin pand %xmm13,%xmm11 295*c0855eaaSJohn Baldwin pand %xmm8,%xmm3 296*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 297*c0855eaaSJohn Baldwin pxor %xmm1,%xmm3 298*c0855eaaSJohn Baldwin pxor %xmm10,%xmm11 299*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 300*c0855eaaSJohn Baldwin pxor %xmm12,%xmm14 301*c0855eaaSJohn Baldwin pxor %xmm8,%xmm13 302*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 303*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 304*c0855eaaSJohn Baldwin pand %xmm6,%xmm10 305*c0855eaaSJohn Baldwin pxor %xmm0,%xmm6 306*c0855eaaSJohn Baldwin pand %xmm14,%xmm0 307*c0855eaaSJohn Baldwin pand %xmm13,%xmm6 308*c0855eaaSJohn Baldwin pxor %xmm0,%xmm6 309*c0855eaaSJohn Baldwin pxor %xmm10,%xmm0 310*c0855eaaSJohn Baldwin pxor %xmm11,%xmm6 311*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 312*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 313*c0855eaaSJohn Baldwin pxor %xmm7,%xmm1 314*c0855eaaSJohn Baldwin pxor %xmm15,%xmm6 315*c0855eaaSJohn Baldwin pxor %xmm5,%xmm0 316*c0855eaaSJohn Baldwin pxor %xmm6,%xmm3 317*c0855eaaSJohn Baldwin pxor %xmm15,%xmm5 318*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 319*c0855eaaSJohn Baldwin 320*c0855eaaSJohn Baldwin pxor %xmm4,%xmm0 321*c0855eaaSJohn Baldwin pxor %xmm1,%xmm4 322*c0855eaaSJohn Baldwin pxor %xmm2,%xmm1 323*c0855eaaSJohn Baldwin pxor %xmm4,%xmm2 324*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 325*c0855eaaSJohn Baldwin 326*c0855eaaSJohn Baldwin pxor %xmm2,%xmm5 327*c0855eaaSJohn Baldwin decl %r10d 328*c0855eaaSJohn Baldwin jl .Lenc_done 329*c0855eaaSJohn Baldwin pshufd $0x93,%xmm15,%xmm7 330*c0855eaaSJohn Baldwin pshufd $0x93,%xmm0,%xmm8 331*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 332*c0855eaaSJohn Baldwin pshufd $0x93,%xmm3,%xmm9 333*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 334*c0855eaaSJohn Baldwin pshufd $0x93,%xmm5,%xmm10 335*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 336*c0855eaaSJohn Baldwin pshufd $0x93,%xmm2,%xmm11 337*c0855eaaSJohn Baldwin pxor %xmm10,%xmm5 338*c0855eaaSJohn Baldwin pshufd $0x93,%xmm6,%xmm12 339*c0855eaaSJohn Baldwin pxor %xmm11,%xmm2 340*c0855eaaSJohn Baldwin pshufd $0x93,%xmm1,%xmm13 341*c0855eaaSJohn Baldwin pxor %xmm12,%xmm6 342*c0855eaaSJohn Baldwin pshufd $0x93,%xmm4,%xmm14 343*c0855eaaSJohn Baldwin pxor %xmm13,%xmm1 344*c0855eaaSJohn Baldwin pxor %xmm14,%xmm4 345*c0855eaaSJohn Baldwin 346*c0855eaaSJohn Baldwin pxor %xmm15,%xmm8 347*c0855eaaSJohn Baldwin pxor %xmm4,%xmm7 348*c0855eaaSJohn Baldwin pxor %xmm4,%xmm8 349*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm15,%xmm15 350*c0855eaaSJohn Baldwin pxor %xmm0,%xmm9 351*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm0,%xmm0 352*c0855eaaSJohn Baldwin pxor %xmm2,%xmm12 353*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 354*c0855eaaSJohn Baldwin pxor %xmm6,%xmm13 355*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 356*c0855eaaSJohn Baldwin pxor %xmm5,%xmm11 357*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm2,%xmm7 358*c0855eaaSJohn Baldwin pxor %xmm1,%xmm14 359*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm6,%xmm8 360*c0855eaaSJohn Baldwin pxor %xmm3,%xmm10 361*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm5,%xmm2 362*c0855eaaSJohn Baldwin pxor %xmm4,%xmm10 363*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm4,%xmm6 364*c0855eaaSJohn Baldwin pxor %xmm4,%xmm11 365*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm1,%xmm5 366*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 367*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm3,%xmm1 368*c0855eaaSJohn Baldwin pxor %xmm12,%xmm8 369*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 370*c0855eaaSJohn Baldwin pxor %xmm14,%xmm6 371*c0855eaaSJohn Baldwin pxor %xmm13,%xmm5 372*c0855eaaSJohn Baldwin movdqa %xmm7,%xmm3 373*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 374*c0855eaaSJohn Baldwin movdqa %xmm8,%xmm4 375*c0855eaaSJohn Baldwin movdqa 48(%r11),%xmm7 376*c0855eaaSJohn Baldwin jnz .Lenc_loop 377*c0855eaaSJohn Baldwin movdqa 64(%r11),%xmm7 378*c0855eaaSJohn Baldwin jmp .Lenc_loop 379*c0855eaaSJohn Baldwin.align 16 380*c0855eaaSJohn Baldwin.Lenc_done: 381*c0855eaaSJohn Baldwin movdqa 0(%r11),%xmm7 382*c0855eaaSJohn Baldwin movdqa 16(%r11),%xmm8 383*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm9 384*c0855eaaSJohn Baldwin psrlq $1,%xmm1 385*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm10 386*c0855eaaSJohn Baldwin psrlq $1,%xmm2 387*c0855eaaSJohn Baldwin pxor %xmm4,%xmm1 388*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 389*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 390*c0855eaaSJohn Baldwin pand %xmm7,%xmm2 391*c0855eaaSJohn Baldwin pxor %xmm1,%xmm4 392*c0855eaaSJohn Baldwin psllq $1,%xmm1 393*c0855eaaSJohn Baldwin pxor %xmm2,%xmm6 394*c0855eaaSJohn Baldwin psllq $1,%xmm2 395*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 396*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 397*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm9 398*c0855eaaSJohn Baldwin psrlq $1,%xmm3 399*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 400*c0855eaaSJohn Baldwin psrlq $1,%xmm15 401*c0855eaaSJohn Baldwin pxor %xmm5,%xmm3 402*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 403*c0855eaaSJohn Baldwin pand %xmm7,%xmm3 404*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 405*c0855eaaSJohn Baldwin pxor %xmm3,%xmm5 406*c0855eaaSJohn Baldwin psllq $1,%xmm3 407*c0855eaaSJohn Baldwin pxor %xmm15,%xmm0 408*c0855eaaSJohn Baldwin psllq $1,%xmm15 409*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 410*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 411*c0855eaaSJohn Baldwin movdqa 32(%r11),%xmm7 412*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm9 413*c0855eaaSJohn Baldwin psrlq $2,%xmm6 414*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm10 415*c0855eaaSJohn Baldwin psrlq $2,%xmm2 416*c0855eaaSJohn Baldwin pxor %xmm4,%xmm6 417*c0855eaaSJohn Baldwin pxor %xmm1,%xmm2 418*c0855eaaSJohn Baldwin pand %xmm8,%xmm6 419*c0855eaaSJohn Baldwin pand %xmm8,%xmm2 420*c0855eaaSJohn Baldwin pxor %xmm6,%xmm4 421*c0855eaaSJohn Baldwin psllq $2,%xmm6 422*c0855eaaSJohn Baldwin pxor %xmm2,%xmm1 423*c0855eaaSJohn Baldwin psllq $2,%xmm2 424*c0855eaaSJohn Baldwin pxor %xmm9,%xmm6 425*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 426*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 427*c0855eaaSJohn Baldwin psrlq $2,%xmm0 428*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 429*c0855eaaSJohn Baldwin psrlq $2,%xmm15 430*c0855eaaSJohn Baldwin pxor %xmm5,%xmm0 431*c0855eaaSJohn Baldwin pxor %xmm3,%xmm15 432*c0855eaaSJohn Baldwin pand %xmm8,%xmm0 433*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 434*c0855eaaSJohn Baldwin pxor %xmm0,%xmm5 435*c0855eaaSJohn Baldwin psllq $2,%xmm0 436*c0855eaaSJohn Baldwin pxor %xmm15,%xmm3 437*c0855eaaSJohn Baldwin psllq $2,%xmm15 438*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 439*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 440*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm9 441*c0855eaaSJohn Baldwin psrlq $4,%xmm5 442*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm10 443*c0855eaaSJohn Baldwin psrlq $4,%xmm3 444*c0855eaaSJohn Baldwin pxor %xmm4,%xmm5 445*c0855eaaSJohn Baldwin pxor %xmm1,%xmm3 446*c0855eaaSJohn Baldwin pand %xmm7,%xmm5 447*c0855eaaSJohn Baldwin pand %xmm7,%xmm3 448*c0855eaaSJohn Baldwin pxor %xmm5,%xmm4 449*c0855eaaSJohn Baldwin psllq $4,%xmm5 450*c0855eaaSJohn Baldwin pxor %xmm3,%xmm1 451*c0855eaaSJohn Baldwin psllq $4,%xmm3 452*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 453*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 454*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 455*c0855eaaSJohn Baldwin psrlq $4,%xmm0 456*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 457*c0855eaaSJohn Baldwin psrlq $4,%xmm15 458*c0855eaaSJohn Baldwin pxor %xmm6,%xmm0 459*c0855eaaSJohn Baldwin pxor %xmm2,%xmm15 460*c0855eaaSJohn Baldwin pand %xmm7,%xmm0 461*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 462*c0855eaaSJohn Baldwin pxor %xmm0,%xmm6 463*c0855eaaSJohn Baldwin psllq $4,%xmm0 464*c0855eaaSJohn Baldwin pxor %xmm15,%xmm2 465*c0855eaaSJohn Baldwin psllq $4,%xmm15 466*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 467*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 468*c0855eaaSJohn Baldwin movdqa (%rax),%xmm7 469*c0855eaaSJohn Baldwin pxor %xmm7,%xmm3 470*c0855eaaSJohn Baldwin pxor %xmm7,%xmm5 471*c0855eaaSJohn Baldwin pxor %xmm7,%xmm2 472*c0855eaaSJohn Baldwin pxor %xmm7,%xmm6 473*c0855eaaSJohn Baldwin pxor %xmm7,%xmm1 474*c0855eaaSJohn Baldwin pxor %xmm7,%xmm4 475*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 476*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 477*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 478*c0855eaaSJohn Baldwin.cfi_endproc 479*c0855eaaSJohn Baldwin.size _bsaes_encrypt8,.-_bsaes_encrypt8 480*c0855eaaSJohn Baldwin 481*c0855eaaSJohn Baldwin.type _bsaes_decrypt8,@function 482*c0855eaaSJohn Baldwin.align 64 483*c0855eaaSJohn Baldwin_bsaes_decrypt8: 484*c0855eaaSJohn Baldwin.cfi_startproc 485*c0855eaaSJohn Baldwin leaq .LBS0(%rip),%r11 486*c0855eaaSJohn Baldwin 487*c0855eaaSJohn Baldwin movdqa (%rax),%xmm8 488*c0855eaaSJohn Baldwin leaq 16(%rax),%rax 489*c0855eaaSJohn Baldwin movdqa -48(%r11),%xmm7 490*c0855eaaSJohn Baldwin pxor %xmm8,%xmm15 491*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 492*c0855eaaSJohn Baldwin pxor %xmm8,%xmm1 493*c0855eaaSJohn Baldwin pxor %xmm8,%xmm2 494*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 495*c0855eaaSJohn Baldwin.byte 102,15,56,0,199 496*c0855eaaSJohn Baldwin pxor %xmm8,%xmm3 497*c0855eaaSJohn Baldwin pxor %xmm8,%xmm4 498*c0855eaaSJohn Baldwin.byte 102,15,56,0,207 499*c0855eaaSJohn Baldwin.byte 102,15,56,0,215 500*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 501*c0855eaaSJohn Baldwin pxor %xmm8,%xmm6 502*c0855eaaSJohn Baldwin.byte 102,15,56,0,223 503*c0855eaaSJohn Baldwin.byte 102,15,56,0,231 504*c0855eaaSJohn Baldwin.byte 102,15,56,0,239 505*c0855eaaSJohn Baldwin.byte 102,15,56,0,247 506*c0855eaaSJohn Baldwin movdqa 0(%r11),%xmm7 507*c0855eaaSJohn Baldwin movdqa 16(%r11),%xmm8 508*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm9 509*c0855eaaSJohn Baldwin psrlq $1,%xmm5 510*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm10 511*c0855eaaSJohn Baldwin psrlq $1,%xmm3 512*c0855eaaSJohn Baldwin pxor %xmm6,%xmm5 513*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 514*c0855eaaSJohn Baldwin pand %xmm7,%xmm5 515*c0855eaaSJohn Baldwin pand %xmm7,%xmm3 516*c0855eaaSJohn Baldwin pxor %xmm5,%xmm6 517*c0855eaaSJohn Baldwin psllq $1,%xmm5 518*c0855eaaSJohn Baldwin pxor %xmm3,%xmm4 519*c0855eaaSJohn Baldwin psllq $1,%xmm3 520*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 521*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 522*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm9 523*c0855eaaSJohn Baldwin psrlq $1,%xmm1 524*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 525*c0855eaaSJohn Baldwin psrlq $1,%xmm15 526*c0855eaaSJohn Baldwin pxor %xmm2,%xmm1 527*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 528*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 529*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 530*c0855eaaSJohn Baldwin pxor %xmm1,%xmm2 531*c0855eaaSJohn Baldwin psllq $1,%xmm1 532*c0855eaaSJohn Baldwin pxor %xmm15,%xmm0 533*c0855eaaSJohn Baldwin psllq $1,%xmm15 534*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 535*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 536*c0855eaaSJohn Baldwin movdqa 32(%r11),%xmm7 537*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm9 538*c0855eaaSJohn Baldwin psrlq $2,%xmm4 539*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm10 540*c0855eaaSJohn Baldwin psrlq $2,%xmm3 541*c0855eaaSJohn Baldwin pxor %xmm6,%xmm4 542*c0855eaaSJohn Baldwin pxor %xmm5,%xmm3 543*c0855eaaSJohn Baldwin pand %xmm8,%xmm4 544*c0855eaaSJohn Baldwin pand %xmm8,%xmm3 545*c0855eaaSJohn Baldwin pxor %xmm4,%xmm6 546*c0855eaaSJohn Baldwin psllq $2,%xmm4 547*c0855eaaSJohn Baldwin pxor %xmm3,%xmm5 548*c0855eaaSJohn Baldwin psllq $2,%xmm3 549*c0855eaaSJohn Baldwin pxor %xmm9,%xmm4 550*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 551*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 552*c0855eaaSJohn Baldwin psrlq $2,%xmm0 553*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 554*c0855eaaSJohn Baldwin psrlq $2,%xmm15 555*c0855eaaSJohn Baldwin pxor %xmm2,%xmm0 556*c0855eaaSJohn Baldwin pxor %xmm1,%xmm15 557*c0855eaaSJohn Baldwin pand %xmm8,%xmm0 558*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 559*c0855eaaSJohn Baldwin pxor %xmm0,%xmm2 560*c0855eaaSJohn Baldwin psllq $2,%xmm0 561*c0855eaaSJohn Baldwin pxor %xmm15,%xmm1 562*c0855eaaSJohn Baldwin psllq $2,%xmm15 563*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 564*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 565*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm9 566*c0855eaaSJohn Baldwin psrlq $4,%xmm2 567*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm10 568*c0855eaaSJohn Baldwin psrlq $4,%xmm1 569*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 570*c0855eaaSJohn Baldwin pxor %xmm5,%xmm1 571*c0855eaaSJohn Baldwin pand %xmm7,%xmm2 572*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 573*c0855eaaSJohn Baldwin pxor %xmm2,%xmm6 574*c0855eaaSJohn Baldwin psllq $4,%xmm2 575*c0855eaaSJohn Baldwin pxor %xmm1,%xmm5 576*c0855eaaSJohn Baldwin psllq $4,%xmm1 577*c0855eaaSJohn Baldwin pxor %xmm9,%xmm2 578*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 579*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 580*c0855eaaSJohn Baldwin psrlq $4,%xmm0 581*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 582*c0855eaaSJohn Baldwin psrlq $4,%xmm15 583*c0855eaaSJohn Baldwin pxor %xmm4,%xmm0 584*c0855eaaSJohn Baldwin pxor %xmm3,%xmm15 585*c0855eaaSJohn Baldwin pand %xmm7,%xmm0 586*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 587*c0855eaaSJohn Baldwin pxor %xmm0,%xmm4 588*c0855eaaSJohn Baldwin psllq $4,%xmm0 589*c0855eaaSJohn Baldwin pxor %xmm15,%xmm3 590*c0855eaaSJohn Baldwin psllq $4,%xmm15 591*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 592*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 593*c0855eaaSJohn Baldwin decl %r10d 594*c0855eaaSJohn Baldwin jmp .Ldec_sbox 595*c0855eaaSJohn Baldwin.align 16 596*c0855eaaSJohn Baldwin.Ldec_loop: 597*c0855eaaSJohn Baldwin pxor 0(%rax),%xmm15 598*c0855eaaSJohn Baldwin pxor 16(%rax),%xmm0 599*c0855eaaSJohn Baldwin pxor 32(%rax),%xmm1 600*c0855eaaSJohn Baldwin pxor 48(%rax),%xmm2 601*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 602*c0855eaaSJohn Baldwin.byte 102,15,56,0,199 603*c0855eaaSJohn Baldwin pxor 64(%rax),%xmm3 604*c0855eaaSJohn Baldwin pxor 80(%rax),%xmm4 605*c0855eaaSJohn Baldwin.byte 102,15,56,0,207 606*c0855eaaSJohn Baldwin.byte 102,15,56,0,215 607*c0855eaaSJohn Baldwin pxor 96(%rax),%xmm5 608*c0855eaaSJohn Baldwin pxor 112(%rax),%xmm6 609*c0855eaaSJohn Baldwin.byte 102,15,56,0,223 610*c0855eaaSJohn Baldwin.byte 102,15,56,0,231 611*c0855eaaSJohn Baldwin.byte 102,15,56,0,239 612*c0855eaaSJohn Baldwin.byte 102,15,56,0,247 613*c0855eaaSJohn Baldwin leaq 128(%rax),%rax 614*c0855eaaSJohn Baldwin.Ldec_sbox: 615*c0855eaaSJohn Baldwin pxor %xmm3,%xmm2 616*c0855eaaSJohn Baldwin 617*c0855eaaSJohn Baldwin pxor %xmm6,%xmm3 618*c0855eaaSJohn Baldwin pxor %xmm6,%xmm1 619*c0855eaaSJohn Baldwin pxor %xmm3,%xmm5 620*c0855eaaSJohn Baldwin pxor %xmm5,%xmm6 621*c0855eaaSJohn Baldwin pxor %xmm6,%xmm0 622*c0855eaaSJohn Baldwin 623*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 624*c0855eaaSJohn Baldwin pxor %xmm4,%xmm1 625*c0855eaaSJohn Baldwin pxor %xmm15,%xmm2 626*c0855eaaSJohn Baldwin pxor %xmm15,%xmm4 627*c0855eaaSJohn Baldwin pxor %xmm2,%xmm0 628*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm10 629*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm9 630*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm8 631*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm12 632*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm11 633*c0855eaaSJohn Baldwin 634*c0855eaaSJohn Baldwin pxor %xmm15,%xmm10 635*c0855eaaSJohn Baldwin pxor %xmm3,%xmm9 636*c0855eaaSJohn Baldwin pxor %xmm5,%xmm8 637*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm13 638*c0855eaaSJohn Baldwin pxor %xmm15,%xmm12 639*c0855eaaSJohn Baldwin movdqa %xmm9,%xmm7 640*c0855eaaSJohn Baldwin pxor %xmm1,%xmm11 641*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm14 642*c0855eaaSJohn Baldwin 643*c0855eaaSJohn Baldwin por %xmm8,%xmm9 644*c0855eaaSJohn Baldwin por %xmm11,%xmm10 645*c0855eaaSJohn Baldwin pxor %xmm7,%xmm14 646*c0855eaaSJohn Baldwin pand %xmm11,%xmm13 647*c0855eaaSJohn Baldwin pxor %xmm8,%xmm11 648*c0855eaaSJohn Baldwin pand %xmm8,%xmm7 649*c0855eaaSJohn Baldwin pand %xmm11,%xmm14 650*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm11 651*c0855eaaSJohn Baldwin pxor %xmm1,%xmm11 652*c0855eaaSJohn Baldwin pand %xmm11,%xmm12 653*c0855eaaSJohn Baldwin pxor %xmm12,%xmm10 654*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 655*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm12 656*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm11 657*c0855eaaSJohn Baldwin pxor %xmm6,%xmm12 658*c0855eaaSJohn Baldwin pxor %xmm4,%xmm11 659*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm8 660*c0855eaaSJohn Baldwin pand %xmm11,%xmm12 661*c0855eaaSJohn Baldwin por %xmm11,%xmm8 662*c0855eaaSJohn Baldwin pxor %xmm12,%xmm7 663*c0855eaaSJohn Baldwin pxor %xmm14,%xmm10 664*c0855eaaSJohn Baldwin pxor %xmm13,%xmm9 665*c0855eaaSJohn Baldwin pxor %xmm14,%xmm8 666*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm11 667*c0855eaaSJohn Baldwin pxor %xmm13,%xmm7 668*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm12 669*c0855eaaSJohn Baldwin pxor %xmm13,%xmm8 670*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm13 671*c0855eaaSJohn Baldwin pand %xmm5,%xmm11 672*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm14 673*c0855eaaSJohn Baldwin pand %xmm1,%xmm12 674*c0855eaaSJohn Baldwin pand %xmm0,%xmm13 675*c0855eaaSJohn Baldwin por %xmm4,%xmm14 676*c0855eaaSJohn Baldwin pxor %xmm11,%xmm10 677*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 678*c0855eaaSJohn Baldwin pxor %xmm13,%xmm8 679*c0855eaaSJohn Baldwin pxor %xmm14,%xmm7 680*c0855eaaSJohn Baldwin 681*c0855eaaSJohn Baldwin 682*c0855eaaSJohn Baldwin 683*c0855eaaSJohn Baldwin 684*c0855eaaSJohn Baldwin 685*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm11 686*c0855eaaSJohn Baldwin pand %xmm8,%xmm10 687*c0855eaaSJohn Baldwin pxor %xmm9,%xmm11 688*c0855eaaSJohn Baldwin 689*c0855eaaSJohn Baldwin movdqa %xmm7,%xmm13 690*c0855eaaSJohn Baldwin movdqa %xmm11,%xmm14 691*c0855eaaSJohn Baldwin pxor %xmm10,%xmm13 692*c0855eaaSJohn Baldwin pand %xmm13,%xmm14 693*c0855eaaSJohn Baldwin 694*c0855eaaSJohn Baldwin movdqa %xmm8,%xmm12 695*c0855eaaSJohn Baldwin pxor %xmm9,%xmm14 696*c0855eaaSJohn Baldwin pxor %xmm7,%xmm12 697*c0855eaaSJohn Baldwin 698*c0855eaaSJohn Baldwin pxor %xmm9,%xmm10 699*c0855eaaSJohn Baldwin 700*c0855eaaSJohn Baldwin pand %xmm10,%xmm12 701*c0855eaaSJohn Baldwin 702*c0855eaaSJohn Baldwin movdqa %xmm13,%xmm9 703*c0855eaaSJohn Baldwin pxor %xmm7,%xmm12 704*c0855eaaSJohn Baldwin 705*c0855eaaSJohn Baldwin pxor %xmm12,%xmm9 706*c0855eaaSJohn Baldwin pxor %xmm12,%xmm8 707*c0855eaaSJohn Baldwin 708*c0855eaaSJohn Baldwin pand %xmm7,%xmm9 709*c0855eaaSJohn Baldwin 710*c0855eaaSJohn Baldwin pxor %xmm9,%xmm13 711*c0855eaaSJohn Baldwin pxor %xmm9,%xmm8 712*c0855eaaSJohn Baldwin 713*c0855eaaSJohn Baldwin pand %xmm14,%xmm13 714*c0855eaaSJohn Baldwin 715*c0855eaaSJohn Baldwin pxor %xmm11,%xmm13 716*c0855eaaSJohn Baldwin movdqa %xmm4,%xmm11 717*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm7 718*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm9 719*c0855eaaSJohn Baldwin pxor %xmm13,%xmm9 720*c0855eaaSJohn Baldwin pand %xmm4,%xmm9 721*c0855eaaSJohn Baldwin pxor %xmm0,%xmm4 722*c0855eaaSJohn Baldwin pand %xmm14,%xmm0 723*c0855eaaSJohn Baldwin pand %xmm13,%xmm4 724*c0855eaaSJohn Baldwin pxor %xmm0,%xmm4 725*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 726*c0855eaaSJohn Baldwin pxor %xmm1,%xmm11 727*c0855eaaSJohn Baldwin pxor %xmm5,%xmm7 728*c0855eaaSJohn Baldwin pxor %xmm12,%xmm14 729*c0855eaaSJohn Baldwin pxor %xmm8,%xmm13 730*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 731*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm9 732*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 733*c0855eaaSJohn Baldwin pxor %xmm8,%xmm9 734*c0855eaaSJohn Baldwin pand %xmm11,%xmm10 735*c0855eaaSJohn Baldwin pand %xmm1,%xmm9 736*c0855eaaSJohn Baldwin pxor %xmm7,%xmm11 737*c0855eaaSJohn Baldwin pxor %xmm5,%xmm1 738*c0855eaaSJohn Baldwin pand %xmm14,%xmm7 739*c0855eaaSJohn Baldwin pand %xmm12,%xmm5 740*c0855eaaSJohn Baldwin pand %xmm13,%xmm11 741*c0855eaaSJohn Baldwin pand %xmm8,%xmm1 742*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 743*c0855eaaSJohn Baldwin pxor %xmm5,%xmm1 744*c0855eaaSJohn Baldwin pxor %xmm10,%xmm11 745*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 746*c0855eaaSJohn Baldwin pxor %xmm11,%xmm4 747*c0855eaaSJohn Baldwin pxor %xmm11,%xmm1 748*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 749*c0855eaaSJohn Baldwin pxor %xmm7,%xmm5 750*c0855eaaSJohn Baldwin 751*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm11 752*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm7 753*c0855eaaSJohn Baldwin pxor %xmm15,%xmm11 754*c0855eaaSJohn Baldwin pxor %xmm3,%xmm7 755*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 756*c0855eaaSJohn Baldwin movdqa %xmm12,%xmm9 757*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 758*c0855eaaSJohn Baldwin pxor %xmm8,%xmm9 759*c0855eaaSJohn Baldwin pand %xmm11,%xmm10 760*c0855eaaSJohn Baldwin pand %xmm15,%xmm9 761*c0855eaaSJohn Baldwin pxor %xmm7,%xmm11 762*c0855eaaSJohn Baldwin pxor %xmm3,%xmm15 763*c0855eaaSJohn Baldwin pand %xmm14,%xmm7 764*c0855eaaSJohn Baldwin pand %xmm12,%xmm3 765*c0855eaaSJohn Baldwin pand %xmm13,%xmm11 766*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 767*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 768*c0855eaaSJohn Baldwin pxor %xmm3,%xmm15 769*c0855eaaSJohn Baldwin pxor %xmm10,%xmm11 770*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 771*c0855eaaSJohn Baldwin pxor %xmm12,%xmm14 772*c0855eaaSJohn Baldwin pxor %xmm8,%xmm13 773*c0855eaaSJohn Baldwin movdqa %xmm14,%xmm10 774*c0855eaaSJohn Baldwin pxor %xmm13,%xmm10 775*c0855eaaSJohn Baldwin pand %xmm2,%xmm10 776*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 777*c0855eaaSJohn Baldwin pand %xmm14,%xmm6 778*c0855eaaSJohn Baldwin pand %xmm13,%xmm2 779*c0855eaaSJohn Baldwin pxor %xmm6,%xmm2 780*c0855eaaSJohn Baldwin pxor %xmm10,%xmm6 781*c0855eaaSJohn Baldwin pxor %xmm11,%xmm2 782*c0855eaaSJohn Baldwin pxor %xmm11,%xmm15 783*c0855eaaSJohn Baldwin pxor %xmm7,%xmm6 784*c0855eaaSJohn Baldwin pxor %xmm7,%xmm3 785*c0855eaaSJohn Baldwin pxor %xmm6,%xmm0 786*c0855eaaSJohn Baldwin pxor %xmm4,%xmm5 787*c0855eaaSJohn Baldwin 788*c0855eaaSJohn Baldwin pxor %xmm0,%xmm3 789*c0855eaaSJohn Baldwin pxor %xmm6,%xmm1 790*c0855eaaSJohn Baldwin pxor %xmm6,%xmm4 791*c0855eaaSJohn Baldwin pxor %xmm1,%xmm3 792*c0855eaaSJohn Baldwin pxor %xmm15,%xmm6 793*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 794*c0855eaaSJohn Baldwin pxor %xmm5,%xmm2 795*c0855eaaSJohn Baldwin pxor %xmm0,%xmm5 796*c0855eaaSJohn Baldwin pxor %xmm3,%xmm2 797*c0855eaaSJohn Baldwin 798*c0855eaaSJohn Baldwin pxor %xmm15,%xmm3 799*c0855eaaSJohn Baldwin pxor %xmm2,%xmm6 800*c0855eaaSJohn Baldwin decl %r10d 801*c0855eaaSJohn Baldwin jl .Ldec_done 802*c0855eaaSJohn Baldwin 803*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm15,%xmm7 804*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm2,%xmm13 805*c0855eaaSJohn Baldwin pxor %xmm15,%xmm7 806*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm4,%xmm14 807*c0855eaaSJohn Baldwin pxor %xmm2,%xmm13 808*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm0,%xmm8 809*c0855eaaSJohn Baldwin pxor %xmm4,%xmm14 810*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm5,%xmm9 811*c0855eaaSJohn Baldwin pxor %xmm0,%xmm8 812*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm3,%xmm10 813*c0855eaaSJohn Baldwin pxor %xmm5,%xmm9 814*c0855eaaSJohn Baldwin pxor %xmm13,%xmm15 815*c0855eaaSJohn Baldwin pxor %xmm13,%xmm0 816*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm1,%xmm11 817*c0855eaaSJohn Baldwin pxor %xmm3,%xmm10 818*c0855eaaSJohn Baldwin pxor %xmm7,%xmm5 819*c0855eaaSJohn Baldwin pxor %xmm8,%xmm3 820*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm6,%xmm12 821*c0855eaaSJohn Baldwin pxor %xmm1,%xmm11 822*c0855eaaSJohn Baldwin pxor %xmm14,%xmm0 823*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 824*c0855eaaSJohn Baldwin pxor %xmm6,%xmm12 825*c0855eaaSJohn Baldwin 826*c0855eaaSJohn Baldwin pxor %xmm14,%xmm5 827*c0855eaaSJohn Baldwin pxor %xmm13,%xmm3 828*c0855eaaSJohn Baldwin pxor %xmm13,%xmm1 829*c0855eaaSJohn Baldwin pxor %xmm10,%xmm6 830*c0855eaaSJohn Baldwin pxor %xmm11,%xmm2 831*c0855eaaSJohn Baldwin pxor %xmm14,%xmm1 832*c0855eaaSJohn Baldwin pxor %xmm14,%xmm6 833*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 834*c0855eaaSJohn Baldwin pshufd $0x93,%xmm15,%xmm7 835*c0855eaaSJohn Baldwin pshufd $0x93,%xmm0,%xmm8 836*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 837*c0855eaaSJohn Baldwin pshufd $0x93,%xmm5,%xmm9 838*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 839*c0855eaaSJohn Baldwin pshufd $0x93,%xmm3,%xmm10 840*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 841*c0855eaaSJohn Baldwin pshufd $0x93,%xmm1,%xmm11 842*c0855eaaSJohn Baldwin pxor %xmm10,%xmm3 843*c0855eaaSJohn Baldwin pshufd $0x93,%xmm6,%xmm12 844*c0855eaaSJohn Baldwin pxor %xmm11,%xmm1 845*c0855eaaSJohn Baldwin pshufd $0x93,%xmm2,%xmm13 846*c0855eaaSJohn Baldwin pxor %xmm12,%xmm6 847*c0855eaaSJohn Baldwin pshufd $0x93,%xmm4,%xmm14 848*c0855eaaSJohn Baldwin pxor %xmm13,%xmm2 849*c0855eaaSJohn Baldwin pxor %xmm14,%xmm4 850*c0855eaaSJohn Baldwin 851*c0855eaaSJohn Baldwin pxor %xmm15,%xmm8 852*c0855eaaSJohn Baldwin pxor %xmm4,%xmm7 853*c0855eaaSJohn Baldwin pxor %xmm4,%xmm8 854*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm15,%xmm15 855*c0855eaaSJohn Baldwin pxor %xmm0,%xmm9 856*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm0,%xmm0 857*c0855eaaSJohn Baldwin pxor %xmm1,%xmm12 858*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 859*c0855eaaSJohn Baldwin pxor %xmm6,%xmm13 860*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 861*c0855eaaSJohn Baldwin pxor %xmm3,%xmm11 862*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm1,%xmm7 863*c0855eaaSJohn Baldwin pxor %xmm2,%xmm14 864*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm6,%xmm8 865*c0855eaaSJohn Baldwin pxor %xmm5,%xmm10 866*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm3,%xmm1 867*c0855eaaSJohn Baldwin pxor %xmm4,%xmm10 868*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm4,%xmm6 869*c0855eaaSJohn Baldwin pxor %xmm4,%xmm11 870*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm2,%xmm3 871*c0855eaaSJohn Baldwin pxor %xmm11,%xmm7 872*c0855eaaSJohn Baldwin pshufd $0x4E,%xmm5,%xmm2 873*c0855eaaSJohn Baldwin pxor %xmm12,%xmm8 874*c0855eaaSJohn Baldwin pxor %xmm1,%xmm10 875*c0855eaaSJohn Baldwin pxor %xmm14,%xmm6 876*c0855eaaSJohn Baldwin pxor %xmm3,%xmm13 877*c0855eaaSJohn Baldwin movdqa %xmm7,%xmm3 878*c0855eaaSJohn Baldwin pxor %xmm9,%xmm2 879*c0855eaaSJohn Baldwin movdqa %xmm13,%xmm5 880*c0855eaaSJohn Baldwin movdqa %xmm8,%xmm4 881*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm1 882*c0855eaaSJohn Baldwin movdqa %xmm10,%xmm2 883*c0855eaaSJohn Baldwin movdqa -16(%r11),%xmm7 884*c0855eaaSJohn Baldwin jnz .Ldec_loop 885*c0855eaaSJohn Baldwin movdqa -32(%r11),%xmm7 886*c0855eaaSJohn Baldwin jmp .Ldec_loop 887*c0855eaaSJohn Baldwin.align 16 888*c0855eaaSJohn Baldwin.Ldec_done: 889*c0855eaaSJohn Baldwin movdqa 0(%r11),%xmm7 890*c0855eaaSJohn Baldwin movdqa 16(%r11),%xmm8 891*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm9 892*c0855eaaSJohn Baldwin psrlq $1,%xmm2 893*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm10 894*c0855eaaSJohn Baldwin psrlq $1,%xmm1 895*c0855eaaSJohn Baldwin pxor %xmm4,%xmm2 896*c0855eaaSJohn Baldwin pxor %xmm6,%xmm1 897*c0855eaaSJohn Baldwin pand %xmm7,%xmm2 898*c0855eaaSJohn Baldwin pand %xmm7,%xmm1 899*c0855eaaSJohn Baldwin pxor %xmm2,%xmm4 900*c0855eaaSJohn Baldwin psllq $1,%xmm2 901*c0855eaaSJohn Baldwin pxor %xmm1,%xmm6 902*c0855eaaSJohn Baldwin psllq $1,%xmm1 903*c0855eaaSJohn Baldwin pxor %xmm9,%xmm2 904*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 905*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm9 906*c0855eaaSJohn Baldwin psrlq $1,%xmm5 907*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 908*c0855eaaSJohn Baldwin psrlq $1,%xmm15 909*c0855eaaSJohn Baldwin pxor %xmm3,%xmm5 910*c0855eaaSJohn Baldwin pxor %xmm0,%xmm15 911*c0855eaaSJohn Baldwin pand %xmm7,%xmm5 912*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 913*c0855eaaSJohn Baldwin pxor %xmm5,%xmm3 914*c0855eaaSJohn Baldwin psllq $1,%xmm5 915*c0855eaaSJohn Baldwin pxor %xmm15,%xmm0 916*c0855eaaSJohn Baldwin psllq $1,%xmm15 917*c0855eaaSJohn Baldwin pxor %xmm9,%xmm5 918*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 919*c0855eaaSJohn Baldwin movdqa 32(%r11),%xmm7 920*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm9 921*c0855eaaSJohn Baldwin psrlq $2,%xmm6 922*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm10 923*c0855eaaSJohn Baldwin psrlq $2,%xmm1 924*c0855eaaSJohn Baldwin pxor %xmm4,%xmm6 925*c0855eaaSJohn Baldwin pxor %xmm2,%xmm1 926*c0855eaaSJohn Baldwin pand %xmm8,%xmm6 927*c0855eaaSJohn Baldwin pand %xmm8,%xmm1 928*c0855eaaSJohn Baldwin pxor %xmm6,%xmm4 929*c0855eaaSJohn Baldwin psllq $2,%xmm6 930*c0855eaaSJohn Baldwin pxor %xmm1,%xmm2 931*c0855eaaSJohn Baldwin psllq $2,%xmm1 932*c0855eaaSJohn Baldwin pxor %xmm9,%xmm6 933*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 934*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 935*c0855eaaSJohn Baldwin psrlq $2,%xmm0 936*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 937*c0855eaaSJohn Baldwin psrlq $2,%xmm15 938*c0855eaaSJohn Baldwin pxor %xmm3,%xmm0 939*c0855eaaSJohn Baldwin pxor %xmm5,%xmm15 940*c0855eaaSJohn Baldwin pand %xmm8,%xmm0 941*c0855eaaSJohn Baldwin pand %xmm8,%xmm15 942*c0855eaaSJohn Baldwin pxor %xmm0,%xmm3 943*c0855eaaSJohn Baldwin psllq $2,%xmm0 944*c0855eaaSJohn Baldwin pxor %xmm15,%xmm5 945*c0855eaaSJohn Baldwin psllq $2,%xmm15 946*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 947*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 948*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm9 949*c0855eaaSJohn Baldwin psrlq $4,%xmm3 950*c0855eaaSJohn Baldwin movdqa %xmm5,%xmm10 951*c0855eaaSJohn Baldwin psrlq $4,%xmm5 952*c0855eaaSJohn Baldwin pxor %xmm4,%xmm3 953*c0855eaaSJohn Baldwin pxor %xmm2,%xmm5 954*c0855eaaSJohn Baldwin pand %xmm7,%xmm3 955*c0855eaaSJohn Baldwin pand %xmm7,%xmm5 956*c0855eaaSJohn Baldwin pxor %xmm3,%xmm4 957*c0855eaaSJohn Baldwin psllq $4,%xmm3 958*c0855eaaSJohn Baldwin pxor %xmm5,%xmm2 959*c0855eaaSJohn Baldwin psllq $4,%xmm5 960*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 961*c0855eaaSJohn Baldwin pxor %xmm10,%xmm5 962*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm9 963*c0855eaaSJohn Baldwin psrlq $4,%xmm0 964*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm10 965*c0855eaaSJohn Baldwin psrlq $4,%xmm15 966*c0855eaaSJohn Baldwin pxor %xmm6,%xmm0 967*c0855eaaSJohn Baldwin pxor %xmm1,%xmm15 968*c0855eaaSJohn Baldwin pand %xmm7,%xmm0 969*c0855eaaSJohn Baldwin pand %xmm7,%xmm15 970*c0855eaaSJohn Baldwin pxor %xmm0,%xmm6 971*c0855eaaSJohn Baldwin psllq $4,%xmm0 972*c0855eaaSJohn Baldwin pxor %xmm15,%xmm1 973*c0855eaaSJohn Baldwin psllq $4,%xmm15 974*c0855eaaSJohn Baldwin pxor %xmm9,%xmm0 975*c0855eaaSJohn Baldwin pxor %xmm10,%xmm15 976*c0855eaaSJohn Baldwin movdqa (%rax),%xmm7 977*c0855eaaSJohn Baldwin pxor %xmm7,%xmm5 978*c0855eaaSJohn Baldwin pxor %xmm7,%xmm3 979*c0855eaaSJohn Baldwin pxor %xmm7,%xmm1 980*c0855eaaSJohn Baldwin pxor %xmm7,%xmm6 981*c0855eaaSJohn Baldwin pxor %xmm7,%xmm2 982*c0855eaaSJohn Baldwin pxor %xmm7,%xmm4 983*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 984*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 985*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 986*c0855eaaSJohn Baldwin.cfi_endproc 987*c0855eaaSJohn Baldwin.size _bsaes_decrypt8,.-_bsaes_decrypt8 988*c0855eaaSJohn Baldwin.type _bsaes_key_convert,@function 989*c0855eaaSJohn Baldwin.align 16 990*c0855eaaSJohn Baldwin_bsaes_key_convert: 991*c0855eaaSJohn Baldwin.cfi_startproc 992*c0855eaaSJohn Baldwin leaq .Lmasks(%rip),%r11 993*c0855eaaSJohn Baldwin movdqu (%rcx),%xmm7 994*c0855eaaSJohn Baldwin leaq 16(%rcx),%rcx 995*c0855eaaSJohn Baldwin movdqa 0(%r11),%xmm0 996*c0855eaaSJohn Baldwin movdqa 16(%r11),%xmm1 997*c0855eaaSJohn Baldwin movdqa 32(%r11),%xmm2 998*c0855eaaSJohn Baldwin movdqa 48(%r11),%xmm3 999*c0855eaaSJohn Baldwin movdqa 64(%r11),%xmm4 1000*c0855eaaSJohn Baldwin pcmpeqd %xmm5,%xmm5 1001*c0855eaaSJohn Baldwin 1002*c0855eaaSJohn Baldwin movdqu (%rcx),%xmm6 1003*c0855eaaSJohn Baldwin movdqa %xmm7,(%rax) 1004*c0855eaaSJohn Baldwin leaq 16(%rax),%rax 1005*c0855eaaSJohn Baldwin decl %r10d 1006*c0855eaaSJohn Baldwin jmp .Lkey_loop 1007*c0855eaaSJohn Baldwin.align 16 1008*c0855eaaSJohn Baldwin.Lkey_loop: 1009*c0855eaaSJohn Baldwin.byte 102,15,56,0,244 1010*c0855eaaSJohn Baldwin 1011*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm8 1012*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm9 1013*c0855eaaSJohn Baldwin 1014*c0855eaaSJohn Baldwin pand %xmm6,%xmm8 1015*c0855eaaSJohn Baldwin pand %xmm6,%xmm9 1016*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm10 1017*c0855eaaSJohn Baldwin pcmpeqb %xmm0,%xmm8 1018*c0855eaaSJohn Baldwin psllq $4,%xmm0 1019*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm11 1020*c0855eaaSJohn Baldwin pcmpeqb %xmm1,%xmm9 1021*c0855eaaSJohn Baldwin psllq $4,%xmm1 1022*c0855eaaSJohn Baldwin 1023*c0855eaaSJohn Baldwin pand %xmm6,%xmm10 1024*c0855eaaSJohn Baldwin pand %xmm6,%xmm11 1025*c0855eaaSJohn Baldwin movdqa %xmm0,%xmm12 1026*c0855eaaSJohn Baldwin pcmpeqb %xmm2,%xmm10 1027*c0855eaaSJohn Baldwin psllq $4,%xmm2 1028*c0855eaaSJohn Baldwin movdqa %xmm1,%xmm13 1029*c0855eaaSJohn Baldwin pcmpeqb %xmm3,%xmm11 1030*c0855eaaSJohn Baldwin psllq $4,%xmm3 1031*c0855eaaSJohn Baldwin 1032*c0855eaaSJohn Baldwin movdqa %xmm2,%xmm14 1033*c0855eaaSJohn Baldwin movdqa %xmm3,%xmm15 1034*c0855eaaSJohn Baldwin pxor %xmm5,%xmm8 1035*c0855eaaSJohn Baldwin pxor %xmm5,%xmm9 1036*c0855eaaSJohn Baldwin 1037*c0855eaaSJohn Baldwin pand %xmm6,%xmm12 1038*c0855eaaSJohn Baldwin pand %xmm6,%xmm13 1039*c0855eaaSJohn Baldwin movdqa %xmm8,0(%rax) 1040*c0855eaaSJohn Baldwin pcmpeqb %xmm0,%xmm12 1041*c0855eaaSJohn Baldwin psrlq $4,%xmm0 1042*c0855eaaSJohn Baldwin movdqa %xmm9,16(%rax) 1043*c0855eaaSJohn Baldwin pcmpeqb %xmm1,%xmm13 1044*c0855eaaSJohn Baldwin psrlq $4,%xmm1 1045*c0855eaaSJohn Baldwin leaq 16(%rcx),%rcx 1046*c0855eaaSJohn Baldwin 1047*c0855eaaSJohn Baldwin pand %xmm6,%xmm14 1048*c0855eaaSJohn Baldwin pand %xmm6,%xmm15 1049*c0855eaaSJohn Baldwin movdqa %xmm10,32(%rax) 1050*c0855eaaSJohn Baldwin pcmpeqb %xmm2,%xmm14 1051*c0855eaaSJohn Baldwin psrlq $4,%xmm2 1052*c0855eaaSJohn Baldwin movdqa %xmm11,48(%rax) 1053*c0855eaaSJohn Baldwin pcmpeqb %xmm3,%xmm15 1054*c0855eaaSJohn Baldwin psrlq $4,%xmm3 1055*c0855eaaSJohn Baldwin movdqu (%rcx),%xmm6 1056*c0855eaaSJohn Baldwin 1057*c0855eaaSJohn Baldwin pxor %xmm5,%xmm13 1058*c0855eaaSJohn Baldwin pxor %xmm5,%xmm14 1059*c0855eaaSJohn Baldwin movdqa %xmm12,64(%rax) 1060*c0855eaaSJohn Baldwin movdqa %xmm13,80(%rax) 1061*c0855eaaSJohn Baldwin movdqa %xmm14,96(%rax) 1062*c0855eaaSJohn Baldwin movdqa %xmm15,112(%rax) 1063*c0855eaaSJohn Baldwin leaq 128(%rax),%rax 1064*c0855eaaSJohn Baldwin decl %r10d 1065*c0855eaaSJohn Baldwin jnz .Lkey_loop 1066*c0855eaaSJohn Baldwin 1067*c0855eaaSJohn Baldwin movdqa 80(%r11),%xmm7 1068*c0855eaaSJohn Baldwin 1069*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 1070*c0855eaaSJohn Baldwin.cfi_endproc 1071*c0855eaaSJohn Baldwin.size _bsaes_key_convert,.-_bsaes_key_convert 1072*c0855eaaSJohn Baldwin 1073*c0855eaaSJohn Baldwin.globl ossl_bsaes_cbc_encrypt 1074*c0855eaaSJohn Baldwin.type ossl_bsaes_cbc_encrypt,@function 1075*c0855eaaSJohn Baldwin.align 16 1076*c0855eaaSJohn Baldwinossl_bsaes_cbc_encrypt: 1077*c0855eaaSJohn Baldwin.cfi_startproc 1078*c0855eaaSJohn Baldwin.byte 243,15,30,250 1079*c0855eaaSJohn Baldwin cmpl $0,%r9d 1080*c0855eaaSJohn Baldwin jne asm_AES_cbc_encrypt 1081*c0855eaaSJohn Baldwin cmpq $128,%rdx 1082*c0855eaaSJohn Baldwin jb asm_AES_cbc_encrypt 1083*c0855eaaSJohn Baldwin 1084*c0855eaaSJohn Baldwin movq %rsp,%rax 1085*c0855eaaSJohn Baldwin.Lcbc_dec_prologue: 1086*c0855eaaSJohn Baldwin pushq %rbp 1087*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1088*c0855eaaSJohn Baldwin.cfi_offset %rbp,-16 1089*c0855eaaSJohn Baldwin pushq %rbx 1090*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1091*c0855eaaSJohn Baldwin.cfi_offset %rbx,-24 1092*c0855eaaSJohn Baldwin pushq %r12 1093*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1094*c0855eaaSJohn Baldwin.cfi_offset %r12,-32 1095*c0855eaaSJohn Baldwin pushq %r13 1096*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1097*c0855eaaSJohn Baldwin.cfi_offset %r13,-40 1098*c0855eaaSJohn Baldwin pushq %r14 1099*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1100*c0855eaaSJohn Baldwin.cfi_offset %r14,-48 1101*c0855eaaSJohn Baldwin pushq %r15 1102*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1103*c0855eaaSJohn Baldwin.cfi_offset %r15,-56 1104*c0855eaaSJohn Baldwin leaq -72(%rsp),%rsp 1105*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 0x48 1106*c0855eaaSJohn Baldwin movq %rsp,%rbp 1107*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rbp 1108*c0855eaaSJohn Baldwin movl 240(%rcx),%eax 1109*c0855eaaSJohn Baldwin movq %rdi,%r12 1110*c0855eaaSJohn Baldwin movq %rsi,%r13 1111*c0855eaaSJohn Baldwin movq %rdx,%r14 1112*c0855eaaSJohn Baldwin movq %rcx,%r15 1113*c0855eaaSJohn Baldwin movq %r8,%rbx 1114*c0855eaaSJohn Baldwin shrq $4,%r14 1115*c0855eaaSJohn Baldwin 1116*c0855eaaSJohn Baldwin movl %eax,%edx 1117*c0855eaaSJohn Baldwin shlq $7,%rax 1118*c0855eaaSJohn Baldwin subq $96,%rax 1119*c0855eaaSJohn Baldwin subq %rax,%rsp 1120*c0855eaaSJohn Baldwin 1121*c0855eaaSJohn Baldwin movq %rsp,%rax 1122*c0855eaaSJohn Baldwin movq %r15,%rcx 1123*c0855eaaSJohn Baldwin movl %edx,%r10d 1124*c0855eaaSJohn Baldwin call _bsaes_key_convert 1125*c0855eaaSJohn Baldwin pxor (%rsp),%xmm7 1126*c0855eaaSJohn Baldwin movdqa %xmm6,(%rax) 1127*c0855eaaSJohn Baldwin movdqa %xmm7,(%rsp) 1128*c0855eaaSJohn Baldwin 1129*c0855eaaSJohn Baldwin movdqu (%rbx),%xmm14 1130*c0855eaaSJohn Baldwin subq $8,%r14 1131*c0855eaaSJohn Baldwin.Lcbc_dec_loop: 1132*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm15 1133*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm0 1134*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm1 1135*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm2 1136*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm3 1137*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm4 1138*c0855eaaSJohn Baldwin movq %rsp,%rax 1139*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm5 1140*c0855eaaSJohn Baldwin movl %edx,%r10d 1141*c0855eaaSJohn Baldwin movdqu 112(%r12),%xmm6 1142*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1143*c0855eaaSJohn Baldwin 1144*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1145*c0855eaaSJohn Baldwin 1146*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1147*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1148*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1149*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1150*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1151*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1152*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1153*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1154*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1155*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 1156*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1157*c0855eaaSJohn Baldwin pxor %xmm11,%xmm6 1158*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 1159*c0855eaaSJohn Baldwin pxor %xmm12,%xmm2 1160*c0855eaaSJohn Baldwin movdqu 112(%r12),%xmm14 1161*c0855eaaSJohn Baldwin pxor %xmm13,%xmm4 1162*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1163*c0855eaaSJohn Baldwin leaq 128(%r12),%r12 1164*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1165*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1166*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 1167*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 1168*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1169*c0855eaaSJohn Baldwin movdqu %xmm2,96(%r13) 1170*c0855eaaSJohn Baldwin movdqu %xmm4,112(%r13) 1171*c0855eaaSJohn Baldwin leaq 128(%r13),%r13 1172*c0855eaaSJohn Baldwin subq $8,%r14 1173*c0855eaaSJohn Baldwin jnc .Lcbc_dec_loop 1174*c0855eaaSJohn Baldwin 1175*c0855eaaSJohn Baldwin addq $8,%r14 1176*c0855eaaSJohn Baldwin jz .Lcbc_dec_done 1177*c0855eaaSJohn Baldwin 1178*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm15 1179*c0855eaaSJohn Baldwin movq %rsp,%rax 1180*c0855eaaSJohn Baldwin movl %edx,%r10d 1181*c0855eaaSJohn Baldwin cmpq $2,%r14 1182*c0855eaaSJohn Baldwin jb .Lcbc_dec_one 1183*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm0 1184*c0855eaaSJohn Baldwin je .Lcbc_dec_two 1185*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm1 1186*c0855eaaSJohn Baldwin cmpq $4,%r14 1187*c0855eaaSJohn Baldwin jb .Lcbc_dec_three 1188*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm2 1189*c0855eaaSJohn Baldwin je .Lcbc_dec_four 1190*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm3 1191*c0855eaaSJohn Baldwin cmpq $6,%r14 1192*c0855eaaSJohn Baldwin jb .Lcbc_dec_five 1193*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm4 1194*c0855eaaSJohn Baldwin je .Lcbc_dec_six 1195*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm5 1196*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1197*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1198*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1199*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1200*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1201*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1202*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1203*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1204*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1205*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1206*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1207*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 1208*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1209*c0855eaaSJohn Baldwin pxor %xmm11,%xmm6 1210*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm14 1211*c0855eaaSJohn Baldwin pxor %xmm12,%xmm2 1212*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1213*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1214*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1215*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 1216*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 1217*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1218*c0855eaaSJohn Baldwin movdqu %xmm2,96(%r13) 1219*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1220*c0855eaaSJohn Baldwin.align 16 1221*c0855eaaSJohn Baldwin.Lcbc_dec_six: 1222*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1223*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1224*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1225*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1226*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1227*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1228*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1229*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1230*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1231*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1232*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1233*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 1234*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm14 1235*c0855eaaSJohn Baldwin pxor %xmm11,%xmm6 1236*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1237*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1238*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1239*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 1240*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 1241*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1242*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1243*c0855eaaSJohn Baldwin.align 16 1244*c0855eaaSJohn Baldwin.Lcbc_dec_five: 1245*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1246*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1247*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1248*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1249*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1250*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1251*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1252*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1253*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1254*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1255*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm14 1256*c0855eaaSJohn Baldwin pxor %xmm10,%xmm1 1257*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1258*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1259*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1260*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 1261*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 1262*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1263*c0855eaaSJohn Baldwin.align 16 1264*c0855eaaSJohn Baldwin.Lcbc_dec_four: 1265*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1266*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1267*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1268*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1269*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1270*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1271*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1272*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1273*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm14 1274*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1275*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1276*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1277*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1278*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 1279*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1280*c0855eaaSJohn Baldwin.align 16 1281*c0855eaaSJohn Baldwin.Lcbc_dec_three: 1282*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1283*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1284*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1285*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1286*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1287*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1288*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm14 1289*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1290*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1291*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1292*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 1293*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1294*c0855eaaSJohn Baldwin.align 16 1295*c0855eaaSJohn Baldwin.Lcbc_dec_two: 1296*c0855eaaSJohn Baldwin movdqa %xmm14,32(%rbp) 1297*c0855eaaSJohn Baldwin call _bsaes_decrypt8 1298*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1299*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1300*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm14 1301*c0855eaaSJohn Baldwin pxor %xmm7,%xmm0 1302*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1303*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1304*c0855eaaSJohn Baldwin jmp .Lcbc_dec_done 1305*c0855eaaSJohn Baldwin.align 16 1306*c0855eaaSJohn Baldwin.Lcbc_dec_one: 1307*c0855eaaSJohn Baldwin leaq (%r12),%rdi 1308*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 1309*c0855eaaSJohn Baldwin leaq (%r15),%rdx 1310*c0855eaaSJohn Baldwin call asm_AES_decrypt 1311*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm14 1312*c0855eaaSJohn Baldwin movdqu %xmm14,(%r13) 1313*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm14 1314*c0855eaaSJohn Baldwin 1315*c0855eaaSJohn Baldwin.Lcbc_dec_done: 1316*c0855eaaSJohn Baldwin movdqu %xmm14,(%rbx) 1317*c0855eaaSJohn Baldwin leaq (%rsp),%rax 1318*c0855eaaSJohn Baldwin pxor %xmm0,%xmm0 1319*c0855eaaSJohn Baldwin.Lcbc_dec_bzero: 1320*c0855eaaSJohn Baldwin movdqa %xmm0,0(%rax) 1321*c0855eaaSJohn Baldwin movdqa %xmm0,16(%rax) 1322*c0855eaaSJohn Baldwin leaq 32(%rax),%rax 1323*c0855eaaSJohn Baldwin cmpq %rax,%rbp 1324*c0855eaaSJohn Baldwin ja .Lcbc_dec_bzero 1325*c0855eaaSJohn Baldwin 1326*c0855eaaSJohn Baldwin leaq 120(%rbp),%rax 1327*c0855eaaSJohn Baldwin.cfi_def_cfa %rax,8 1328*c0855eaaSJohn Baldwin movq -48(%rax),%r15 1329*c0855eaaSJohn Baldwin.cfi_restore %r15 1330*c0855eaaSJohn Baldwin movq -40(%rax),%r14 1331*c0855eaaSJohn Baldwin.cfi_restore %r14 1332*c0855eaaSJohn Baldwin movq -32(%rax),%r13 1333*c0855eaaSJohn Baldwin.cfi_restore %r13 1334*c0855eaaSJohn Baldwin movq -24(%rax),%r12 1335*c0855eaaSJohn Baldwin.cfi_restore %r12 1336*c0855eaaSJohn Baldwin movq -16(%rax),%rbx 1337*c0855eaaSJohn Baldwin.cfi_restore %rbx 1338*c0855eaaSJohn Baldwin movq -8(%rax),%rbp 1339*c0855eaaSJohn Baldwin.cfi_restore %rbp 1340*c0855eaaSJohn Baldwin leaq (%rax),%rsp 1341*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rsp 1342*c0855eaaSJohn Baldwin.Lcbc_dec_epilogue: 1343*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 1344*c0855eaaSJohn Baldwin.cfi_endproc 1345*c0855eaaSJohn Baldwin.size ossl_bsaes_cbc_encrypt,.-ossl_bsaes_cbc_encrypt 1346*c0855eaaSJohn Baldwin 1347*c0855eaaSJohn Baldwin.globl ossl_bsaes_ctr32_encrypt_blocks 1348*c0855eaaSJohn Baldwin.type ossl_bsaes_ctr32_encrypt_blocks,@function 1349*c0855eaaSJohn Baldwin.align 16 1350*c0855eaaSJohn Baldwinossl_bsaes_ctr32_encrypt_blocks: 1351*c0855eaaSJohn Baldwin.cfi_startproc 1352*c0855eaaSJohn Baldwin.byte 243,15,30,250 1353*c0855eaaSJohn Baldwin movq %rsp,%rax 1354*c0855eaaSJohn Baldwin.Lctr_enc_prologue: 1355*c0855eaaSJohn Baldwin pushq %rbp 1356*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1357*c0855eaaSJohn Baldwin.cfi_offset %rbp,-16 1358*c0855eaaSJohn Baldwin pushq %rbx 1359*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1360*c0855eaaSJohn Baldwin.cfi_offset %rbx,-24 1361*c0855eaaSJohn Baldwin pushq %r12 1362*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1363*c0855eaaSJohn Baldwin.cfi_offset %r12,-32 1364*c0855eaaSJohn Baldwin pushq %r13 1365*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1366*c0855eaaSJohn Baldwin.cfi_offset %r13,-40 1367*c0855eaaSJohn Baldwin pushq %r14 1368*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1369*c0855eaaSJohn Baldwin.cfi_offset %r14,-48 1370*c0855eaaSJohn Baldwin pushq %r15 1371*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1372*c0855eaaSJohn Baldwin.cfi_offset %r15,-56 1373*c0855eaaSJohn Baldwin leaq -72(%rsp),%rsp 1374*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 0x48 1375*c0855eaaSJohn Baldwin movq %rsp,%rbp 1376*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rbp 1377*c0855eaaSJohn Baldwin movdqu (%r8),%xmm0 1378*c0855eaaSJohn Baldwin movl 240(%rcx),%eax 1379*c0855eaaSJohn Baldwin movq %rdi,%r12 1380*c0855eaaSJohn Baldwin movq %rsi,%r13 1381*c0855eaaSJohn Baldwin movq %rdx,%r14 1382*c0855eaaSJohn Baldwin movq %rcx,%r15 1383*c0855eaaSJohn Baldwin movdqa %xmm0,32(%rbp) 1384*c0855eaaSJohn Baldwin cmpq $8,%rdx 1385*c0855eaaSJohn Baldwin jb .Lctr_enc_short 1386*c0855eaaSJohn Baldwin 1387*c0855eaaSJohn Baldwin movl %eax,%ebx 1388*c0855eaaSJohn Baldwin shlq $7,%rax 1389*c0855eaaSJohn Baldwin subq $96,%rax 1390*c0855eaaSJohn Baldwin subq %rax,%rsp 1391*c0855eaaSJohn Baldwin 1392*c0855eaaSJohn Baldwin movq %rsp,%rax 1393*c0855eaaSJohn Baldwin movq %r15,%rcx 1394*c0855eaaSJohn Baldwin movl %ebx,%r10d 1395*c0855eaaSJohn Baldwin call _bsaes_key_convert 1396*c0855eaaSJohn Baldwin pxor %xmm6,%xmm7 1397*c0855eaaSJohn Baldwin movdqa %xmm7,(%rax) 1398*c0855eaaSJohn Baldwin 1399*c0855eaaSJohn Baldwin movdqa (%rsp),%xmm8 1400*c0855eaaSJohn Baldwin leaq .LADD1(%rip),%r11 1401*c0855eaaSJohn Baldwin movdqa 32(%rbp),%xmm15 1402*c0855eaaSJohn Baldwin movdqa -32(%r11),%xmm7 1403*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,199 1404*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 1405*c0855eaaSJohn Baldwin movdqa %xmm8,(%rsp) 1406*c0855eaaSJohn Baldwin jmp .Lctr_enc_loop 1407*c0855eaaSJohn Baldwin.align 16 1408*c0855eaaSJohn Baldwin.Lctr_enc_loop: 1409*c0855eaaSJohn Baldwin movdqa %xmm15,32(%rbp) 1410*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm0 1411*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm1 1412*c0855eaaSJohn Baldwin paddd 0(%r11),%xmm0 1413*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm2 1414*c0855eaaSJohn Baldwin paddd 16(%r11),%xmm1 1415*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm3 1416*c0855eaaSJohn Baldwin paddd 32(%r11),%xmm2 1417*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm4 1418*c0855eaaSJohn Baldwin paddd 48(%r11),%xmm3 1419*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm5 1420*c0855eaaSJohn Baldwin paddd 64(%r11),%xmm4 1421*c0855eaaSJohn Baldwin movdqa %xmm15,%xmm6 1422*c0855eaaSJohn Baldwin paddd 80(%r11),%xmm5 1423*c0855eaaSJohn Baldwin paddd 96(%r11),%xmm6 1424*c0855eaaSJohn Baldwin 1425*c0855eaaSJohn Baldwin 1426*c0855eaaSJohn Baldwin 1427*c0855eaaSJohn Baldwin movdqa (%rsp),%xmm8 1428*c0855eaaSJohn Baldwin leaq 16(%rsp),%rax 1429*c0855eaaSJohn Baldwin movdqa -16(%r11),%xmm7 1430*c0855eaaSJohn Baldwin pxor %xmm8,%xmm15 1431*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1432*c0855eaaSJohn Baldwin pxor %xmm8,%xmm1 1433*c0855eaaSJohn Baldwin pxor %xmm8,%xmm2 1434*c0855eaaSJohn Baldwin.byte 102,68,15,56,0,255 1435*c0855eaaSJohn Baldwin.byte 102,15,56,0,199 1436*c0855eaaSJohn Baldwin pxor %xmm8,%xmm3 1437*c0855eaaSJohn Baldwin pxor %xmm8,%xmm4 1438*c0855eaaSJohn Baldwin.byte 102,15,56,0,207 1439*c0855eaaSJohn Baldwin.byte 102,15,56,0,215 1440*c0855eaaSJohn Baldwin pxor %xmm8,%xmm5 1441*c0855eaaSJohn Baldwin pxor %xmm8,%xmm6 1442*c0855eaaSJohn Baldwin.byte 102,15,56,0,223 1443*c0855eaaSJohn Baldwin.byte 102,15,56,0,231 1444*c0855eaaSJohn Baldwin.byte 102,15,56,0,239 1445*c0855eaaSJohn Baldwin.byte 102,15,56,0,247 1446*c0855eaaSJohn Baldwin leaq .LBS0(%rip),%r11 1447*c0855eaaSJohn Baldwin movl %ebx,%r10d 1448*c0855eaaSJohn Baldwin 1449*c0855eaaSJohn Baldwin call _bsaes_encrypt8_bitslice 1450*c0855eaaSJohn Baldwin 1451*c0855eaaSJohn Baldwin subq $8,%r14 1452*c0855eaaSJohn Baldwin jc .Lctr_enc_loop_done 1453*c0855eaaSJohn Baldwin 1454*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1455*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1456*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1457*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1458*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1459*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1460*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 1461*c0855eaaSJohn Baldwin movdqu 112(%r12),%xmm14 1462*c0855eaaSJohn Baldwin leaq 128(%r12),%r12 1463*c0855eaaSJohn Baldwin pxor %xmm15,%xmm7 1464*c0855eaaSJohn Baldwin movdqa 32(%rbp),%xmm15 1465*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1466*c0855eaaSJohn Baldwin movdqu %xmm7,0(%r13) 1467*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1468*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1469*c0855eaaSJohn Baldwin pxor %xmm10,%xmm5 1470*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1471*c0855eaaSJohn Baldwin pxor %xmm11,%xmm2 1472*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1473*c0855eaaSJohn Baldwin pxor %xmm12,%xmm6 1474*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1475*c0855eaaSJohn Baldwin pxor %xmm13,%xmm1 1476*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1477*c0855eaaSJohn Baldwin pxor %xmm14,%xmm4 1478*c0855eaaSJohn Baldwin movdqu %xmm1,96(%r13) 1479*c0855eaaSJohn Baldwin leaq .LADD1(%rip),%r11 1480*c0855eaaSJohn Baldwin movdqu %xmm4,112(%r13) 1481*c0855eaaSJohn Baldwin leaq 128(%r13),%r13 1482*c0855eaaSJohn Baldwin paddd 112(%r11),%xmm15 1483*c0855eaaSJohn Baldwin jnz .Lctr_enc_loop 1484*c0855eaaSJohn Baldwin 1485*c0855eaaSJohn Baldwin jmp .Lctr_enc_done 1486*c0855eaaSJohn Baldwin.align 16 1487*c0855eaaSJohn Baldwin.Lctr_enc_loop_done: 1488*c0855eaaSJohn Baldwin addq $8,%r14 1489*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1490*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 1491*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1492*c0855eaaSJohn Baldwin cmpq $2,%r14 1493*c0855eaaSJohn Baldwin jb .Lctr_enc_done 1494*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1495*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1496*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1497*c0855eaaSJohn Baldwin je .Lctr_enc_done 1498*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1499*c0855eaaSJohn Baldwin pxor %xmm9,%xmm3 1500*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1501*c0855eaaSJohn Baldwin cmpq $4,%r14 1502*c0855eaaSJohn Baldwin jb .Lctr_enc_done 1503*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1504*c0855eaaSJohn Baldwin pxor %xmm10,%xmm5 1505*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1506*c0855eaaSJohn Baldwin je .Lctr_enc_done 1507*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1508*c0855eaaSJohn Baldwin pxor %xmm11,%xmm2 1509*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1510*c0855eaaSJohn Baldwin cmpq $6,%r14 1511*c0855eaaSJohn Baldwin jb .Lctr_enc_done 1512*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1513*c0855eaaSJohn Baldwin pxor %xmm12,%xmm6 1514*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1515*c0855eaaSJohn Baldwin je .Lctr_enc_done 1516*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 1517*c0855eaaSJohn Baldwin pxor %xmm13,%xmm1 1518*c0855eaaSJohn Baldwin movdqu %xmm1,96(%r13) 1519*c0855eaaSJohn Baldwin jmp .Lctr_enc_done 1520*c0855eaaSJohn Baldwin 1521*c0855eaaSJohn Baldwin.align 16 1522*c0855eaaSJohn Baldwin.Lctr_enc_short: 1523*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 1524*c0855eaaSJohn Baldwin leaq 48(%rbp),%rsi 1525*c0855eaaSJohn Baldwin leaq (%r15),%rdx 1526*c0855eaaSJohn Baldwin call asm_AES_encrypt 1527*c0855eaaSJohn Baldwin movdqu (%r12),%xmm0 1528*c0855eaaSJohn Baldwin leaq 16(%r12),%r12 1529*c0855eaaSJohn Baldwin movl 44(%rbp),%eax 1530*c0855eaaSJohn Baldwin bswapl %eax 1531*c0855eaaSJohn Baldwin pxor 48(%rbp),%xmm0 1532*c0855eaaSJohn Baldwin incl %eax 1533*c0855eaaSJohn Baldwin movdqu %xmm0,(%r13) 1534*c0855eaaSJohn Baldwin bswapl %eax 1535*c0855eaaSJohn Baldwin leaq 16(%r13),%r13 1536*c0855eaaSJohn Baldwin movl %eax,44(%rsp) 1537*c0855eaaSJohn Baldwin decq %r14 1538*c0855eaaSJohn Baldwin jnz .Lctr_enc_short 1539*c0855eaaSJohn Baldwin 1540*c0855eaaSJohn Baldwin.Lctr_enc_done: 1541*c0855eaaSJohn Baldwin leaq (%rsp),%rax 1542*c0855eaaSJohn Baldwin pxor %xmm0,%xmm0 1543*c0855eaaSJohn Baldwin.Lctr_enc_bzero: 1544*c0855eaaSJohn Baldwin movdqa %xmm0,0(%rax) 1545*c0855eaaSJohn Baldwin movdqa %xmm0,16(%rax) 1546*c0855eaaSJohn Baldwin leaq 32(%rax),%rax 1547*c0855eaaSJohn Baldwin cmpq %rax,%rbp 1548*c0855eaaSJohn Baldwin ja .Lctr_enc_bzero 1549*c0855eaaSJohn Baldwin 1550*c0855eaaSJohn Baldwin leaq 120(%rbp),%rax 1551*c0855eaaSJohn Baldwin.cfi_def_cfa %rax,8 1552*c0855eaaSJohn Baldwin movq -48(%rax),%r15 1553*c0855eaaSJohn Baldwin.cfi_restore %r15 1554*c0855eaaSJohn Baldwin movq -40(%rax),%r14 1555*c0855eaaSJohn Baldwin.cfi_restore %r14 1556*c0855eaaSJohn Baldwin movq -32(%rax),%r13 1557*c0855eaaSJohn Baldwin.cfi_restore %r13 1558*c0855eaaSJohn Baldwin movq -24(%rax),%r12 1559*c0855eaaSJohn Baldwin.cfi_restore %r12 1560*c0855eaaSJohn Baldwin movq -16(%rax),%rbx 1561*c0855eaaSJohn Baldwin.cfi_restore %rbx 1562*c0855eaaSJohn Baldwin movq -8(%rax),%rbp 1563*c0855eaaSJohn Baldwin.cfi_restore %rbp 1564*c0855eaaSJohn Baldwin leaq (%rax),%rsp 1565*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rsp 1566*c0855eaaSJohn Baldwin.Lctr_enc_epilogue: 1567*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 1568*c0855eaaSJohn Baldwin.cfi_endproc 1569*c0855eaaSJohn Baldwin.size ossl_bsaes_ctr32_encrypt_blocks,.-ossl_bsaes_ctr32_encrypt_blocks 1570*c0855eaaSJohn Baldwin.globl ossl_bsaes_xts_encrypt 1571*c0855eaaSJohn Baldwin.type ossl_bsaes_xts_encrypt,@function 1572*c0855eaaSJohn Baldwin.align 16 1573*c0855eaaSJohn Baldwinossl_bsaes_xts_encrypt: 1574*c0855eaaSJohn Baldwin.cfi_startproc 1575*c0855eaaSJohn Baldwin movq %rsp,%rax 1576*c0855eaaSJohn Baldwin.Lxts_enc_prologue: 1577*c0855eaaSJohn Baldwin pushq %rbp 1578*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1579*c0855eaaSJohn Baldwin.cfi_offset %rbp,-16 1580*c0855eaaSJohn Baldwin pushq %rbx 1581*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1582*c0855eaaSJohn Baldwin.cfi_offset %rbx,-24 1583*c0855eaaSJohn Baldwin pushq %r12 1584*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1585*c0855eaaSJohn Baldwin.cfi_offset %r12,-32 1586*c0855eaaSJohn Baldwin pushq %r13 1587*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1588*c0855eaaSJohn Baldwin.cfi_offset %r13,-40 1589*c0855eaaSJohn Baldwin pushq %r14 1590*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1591*c0855eaaSJohn Baldwin.cfi_offset %r14,-48 1592*c0855eaaSJohn Baldwin pushq %r15 1593*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 1594*c0855eaaSJohn Baldwin.cfi_offset %r15,-56 1595*c0855eaaSJohn Baldwin leaq -72(%rsp),%rsp 1596*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 0x48 1597*c0855eaaSJohn Baldwin movq %rsp,%rbp 1598*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rbp 1599*c0855eaaSJohn Baldwin movq %rdi,%r12 1600*c0855eaaSJohn Baldwin movq %rsi,%r13 1601*c0855eaaSJohn Baldwin movq %rdx,%r14 1602*c0855eaaSJohn Baldwin movq %rcx,%r15 1603*c0855eaaSJohn Baldwin 1604*c0855eaaSJohn Baldwin leaq (%r9),%rdi 1605*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 1606*c0855eaaSJohn Baldwin leaq (%r8),%rdx 1607*c0855eaaSJohn Baldwin call asm_AES_encrypt 1608*c0855eaaSJohn Baldwin 1609*c0855eaaSJohn Baldwin movl 240(%r15),%eax 1610*c0855eaaSJohn Baldwin movq %r14,%rbx 1611*c0855eaaSJohn Baldwin 1612*c0855eaaSJohn Baldwin movl %eax,%edx 1613*c0855eaaSJohn Baldwin shlq $7,%rax 1614*c0855eaaSJohn Baldwin subq $96,%rax 1615*c0855eaaSJohn Baldwin subq %rax,%rsp 1616*c0855eaaSJohn Baldwin 1617*c0855eaaSJohn Baldwin movq %rsp,%rax 1618*c0855eaaSJohn Baldwin movq %r15,%rcx 1619*c0855eaaSJohn Baldwin movl %edx,%r10d 1620*c0855eaaSJohn Baldwin call _bsaes_key_convert 1621*c0855eaaSJohn Baldwin pxor %xmm6,%xmm7 1622*c0855eaaSJohn Baldwin movdqa %xmm7,(%rax) 1623*c0855eaaSJohn Baldwin 1624*c0855eaaSJohn Baldwin andq $-16,%r14 1625*c0855eaaSJohn Baldwin subq $0x80,%rsp 1626*c0855eaaSJohn Baldwin movdqa 32(%rbp),%xmm6 1627*c0855eaaSJohn Baldwin 1628*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1629*c0855eaaSJohn Baldwin movdqa .Lxts_magic(%rip),%xmm12 1630*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1631*c0855eaaSJohn Baldwin 1632*c0855eaaSJohn Baldwin subq $0x80,%r14 1633*c0855eaaSJohn Baldwin jc .Lxts_enc_short 1634*c0855eaaSJohn Baldwin jmp .Lxts_enc_loop 1635*c0855eaaSJohn Baldwin 1636*c0855eaaSJohn Baldwin.align 16 1637*c0855eaaSJohn Baldwin.Lxts_enc_loop: 1638*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1639*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1640*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm15 1641*c0855eaaSJohn Baldwin movdqa %xmm6,0(%rsp) 1642*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1643*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1644*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1645*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1646*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1647*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1648*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm0 1649*c0855eaaSJohn Baldwin movdqa %xmm6,16(%rsp) 1650*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1651*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1652*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1653*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1654*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1655*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1656*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1657*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm1 1658*c0855eaaSJohn Baldwin movdqa %xmm6,32(%rsp) 1659*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1660*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1661*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1662*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1663*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1664*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 1665*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1666*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1667*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm2 1668*c0855eaaSJohn Baldwin movdqa %xmm6,48(%rsp) 1669*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1670*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1671*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1672*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1673*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1674*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1675*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1676*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1677*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm3 1678*c0855eaaSJohn Baldwin movdqa %xmm6,64(%rsp) 1679*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1680*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1681*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1682*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1683*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1684*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 1685*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1686*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1687*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm4 1688*c0855eaaSJohn Baldwin movdqa %xmm6,80(%rsp) 1689*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1690*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1691*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1692*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1693*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1694*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 1695*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1696*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1697*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm5 1698*c0855eaaSJohn Baldwin movdqa %xmm6,96(%rsp) 1699*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1700*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1701*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1702*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1703*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1704*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 1705*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 1706*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 1707*c0855eaaSJohn Baldwin movdqu 112(%r12),%xmm14 1708*c0855eaaSJohn Baldwin leaq 128(%r12),%r12 1709*c0855eaaSJohn Baldwin movdqa %xmm6,112(%rsp) 1710*c0855eaaSJohn Baldwin pxor %xmm13,%xmm5 1711*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1712*c0855eaaSJohn Baldwin pxor %xmm14,%xmm6 1713*c0855eaaSJohn Baldwin movl %edx,%r10d 1714*c0855eaaSJohn Baldwin 1715*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1716*c0855eaaSJohn Baldwin 1717*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1718*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1719*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1720*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1721*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1722*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm5 1723*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1724*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm2 1725*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1726*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 1727*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1728*c0855eaaSJohn Baldwin pxor 96(%rsp),%xmm1 1729*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1730*c0855eaaSJohn Baldwin pxor 112(%rsp),%xmm4 1731*c0855eaaSJohn Baldwin movdqu %xmm1,96(%r13) 1732*c0855eaaSJohn Baldwin movdqu %xmm4,112(%r13) 1733*c0855eaaSJohn Baldwin leaq 128(%r13),%r13 1734*c0855eaaSJohn Baldwin 1735*c0855eaaSJohn Baldwin movdqa 112(%rsp),%xmm6 1736*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1737*c0855eaaSJohn Baldwin movdqa .Lxts_magic(%rip),%xmm12 1738*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1739*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1740*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1741*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1742*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1743*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1744*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1745*c0855eaaSJohn Baldwin 1746*c0855eaaSJohn Baldwin subq $0x80,%r14 1747*c0855eaaSJohn Baldwin jnc .Lxts_enc_loop 1748*c0855eaaSJohn Baldwin 1749*c0855eaaSJohn Baldwin.Lxts_enc_short: 1750*c0855eaaSJohn Baldwin addq $0x80,%r14 1751*c0855eaaSJohn Baldwin jz .Lxts_enc_done 1752*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1753*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1754*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm15 1755*c0855eaaSJohn Baldwin movdqa %xmm6,0(%rsp) 1756*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1757*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1758*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1759*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1760*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1761*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1762*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm0 1763*c0855eaaSJohn Baldwin movdqa %xmm6,16(%rsp) 1764*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1765*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1766*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1767*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1768*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 1769*c0855eaaSJohn Baldwin cmpq $16,%r14 1770*c0855eaaSJohn Baldwin je .Lxts_enc_1 1771*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1772*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1773*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm1 1774*c0855eaaSJohn Baldwin movdqa %xmm6,32(%rsp) 1775*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1776*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1777*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1778*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1779*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 1780*c0855eaaSJohn Baldwin cmpq $32,%r14 1781*c0855eaaSJohn Baldwin je .Lxts_enc_2 1782*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 1783*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1784*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1785*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm2 1786*c0855eaaSJohn Baldwin movdqa %xmm6,48(%rsp) 1787*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1788*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1789*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1790*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1791*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 1792*c0855eaaSJohn Baldwin cmpq $48,%r14 1793*c0855eaaSJohn Baldwin je .Lxts_enc_3 1794*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1795*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1796*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1797*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm3 1798*c0855eaaSJohn Baldwin movdqa %xmm6,64(%rsp) 1799*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1800*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1801*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1802*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1803*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 1804*c0855eaaSJohn Baldwin cmpq $64,%r14 1805*c0855eaaSJohn Baldwin je .Lxts_enc_4 1806*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 1807*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1808*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1809*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm4 1810*c0855eaaSJohn Baldwin movdqa %xmm6,80(%rsp) 1811*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1812*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1813*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1814*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1815*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 1816*c0855eaaSJohn Baldwin cmpq $80,%r14 1817*c0855eaaSJohn Baldwin je .Lxts_enc_5 1818*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 1819*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 1820*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 1821*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm5 1822*c0855eaaSJohn Baldwin movdqa %xmm6,96(%rsp) 1823*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 1824*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 1825*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 1826*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 1827*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 1828*c0855eaaSJohn Baldwin cmpq $96,%r14 1829*c0855eaaSJohn Baldwin je .Lxts_enc_6 1830*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 1831*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 1832*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 1833*c0855eaaSJohn Baldwin movdqa %xmm6,112(%rsp) 1834*c0855eaaSJohn Baldwin leaq 112(%r12),%r12 1835*c0855eaaSJohn Baldwin pxor %xmm13,%xmm5 1836*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1837*c0855eaaSJohn Baldwin movl %edx,%r10d 1838*c0855eaaSJohn Baldwin 1839*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1840*c0855eaaSJohn Baldwin 1841*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1842*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1843*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1844*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1845*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1846*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm5 1847*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1848*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm2 1849*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1850*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 1851*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1852*c0855eaaSJohn Baldwin pxor 96(%rsp),%xmm1 1853*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1854*c0855eaaSJohn Baldwin movdqu %xmm1,96(%r13) 1855*c0855eaaSJohn Baldwin leaq 112(%r13),%r13 1856*c0855eaaSJohn Baldwin 1857*c0855eaaSJohn Baldwin movdqa 112(%rsp),%xmm6 1858*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1859*c0855eaaSJohn Baldwin.align 16 1860*c0855eaaSJohn Baldwin.Lxts_enc_6: 1861*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 1862*c0855eaaSJohn Baldwin leaq 96(%r12),%r12 1863*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 1864*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1865*c0855eaaSJohn Baldwin movl %edx,%r10d 1866*c0855eaaSJohn Baldwin 1867*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1868*c0855eaaSJohn Baldwin 1869*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1870*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1871*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1872*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1873*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1874*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm5 1875*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1876*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm2 1877*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1878*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 1879*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1880*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 1881*c0855eaaSJohn Baldwin leaq 96(%r13),%r13 1882*c0855eaaSJohn Baldwin 1883*c0855eaaSJohn Baldwin movdqa 96(%rsp),%xmm6 1884*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1885*c0855eaaSJohn Baldwin.align 16 1886*c0855eaaSJohn Baldwin.Lxts_enc_5: 1887*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 1888*c0855eaaSJohn Baldwin leaq 80(%r12),%r12 1889*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 1890*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1891*c0855eaaSJohn Baldwin movl %edx,%r10d 1892*c0855eaaSJohn Baldwin 1893*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1894*c0855eaaSJohn Baldwin 1895*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1896*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1897*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1898*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1899*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1900*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm5 1901*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1902*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm2 1903*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1904*c0855eaaSJohn Baldwin movdqu %xmm2,64(%r13) 1905*c0855eaaSJohn Baldwin leaq 80(%r13),%r13 1906*c0855eaaSJohn Baldwin 1907*c0855eaaSJohn Baldwin movdqa 80(%rsp),%xmm6 1908*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1909*c0855eaaSJohn Baldwin.align 16 1910*c0855eaaSJohn Baldwin.Lxts_enc_4: 1911*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 1912*c0855eaaSJohn Baldwin leaq 64(%r12),%r12 1913*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 1914*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1915*c0855eaaSJohn Baldwin movl %edx,%r10d 1916*c0855eaaSJohn Baldwin 1917*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1918*c0855eaaSJohn Baldwin 1919*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1920*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1921*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1922*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1923*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1924*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm5 1925*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1926*c0855eaaSJohn Baldwin movdqu %xmm5,48(%r13) 1927*c0855eaaSJohn Baldwin leaq 64(%r13),%r13 1928*c0855eaaSJohn Baldwin 1929*c0855eaaSJohn Baldwin movdqa 64(%rsp),%xmm6 1930*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1931*c0855eaaSJohn Baldwin.align 16 1932*c0855eaaSJohn Baldwin.Lxts_enc_3: 1933*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1934*c0855eaaSJohn Baldwin leaq 48(%r12),%r12 1935*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 1936*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1937*c0855eaaSJohn Baldwin movl %edx,%r10d 1938*c0855eaaSJohn Baldwin 1939*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1940*c0855eaaSJohn Baldwin 1941*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1942*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1943*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1944*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm3 1945*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1946*c0855eaaSJohn Baldwin movdqu %xmm3,32(%r13) 1947*c0855eaaSJohn Baldwin leaq 48(%r13),%r13 1948*c0855eaaSJohn Baldwin 1949*c0855eaaSJohn Baldwin movdqa 48(%rsp),%xmm6 1950*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1951*c0855eaaSJohn Baldwin.align 16 1952*c0855eaaSJohn Baldwin.Lxts_enc_2: 1953*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 1954*c0855eaaSJohn Baldwin leaq 32(%r12),%r12 1955*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 1956*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 1957*c0855eaaSJohn Baldwin movl %edx,%r10d 1958*c0855eaaSJohn Baldwin 1959*c0855eaaSJohn Baldwin call _bsaes_encrypt8 1960*c0855eaaSJohn Baldwin 1961*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 1962*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 1963*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1964*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 1965*c0855eaaSJohn Baldwin leaq 32(%r13),%r13 1966*c0855eaaSJohn Baldwin 1967*c0855eaaSJohn Baldwin movdqa 32(%rsp),%xmm6 1968*c0855eaaSJohn Baldwin jmp .Lxts_enc_done 1969*c0855eaaSJohn Baldwin.align 16 1970*c0855eaaSJohn Baldwin.Lxts_enc_1: 1971*c0855eaaSJohn Baldwin pxor %xmm15,%xmm7 1972*c0855eaaSJohn Baldwin leaq 16(%r12),%r12 1973*c0855eaaSJohn Baldwin movdqa %xmm7,32(%rbp) 1974*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 1975*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 1976*c0855eaaSJohn Baldwin leaq (%r15),%rdx 1977*c0855eaaSJohn Baldwin call asm_AES_encrypt 1978*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 1979*c0855eaaSJohn Baldwin 1980*c0855eaaSJohn Baldwin 1981*c0855eaaSJohn Baldwin 1982*c0855eaaSJohn Baldwin 1983*c0855eaaSJohn Baldwin 1984*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 1985*c0855eaaSJohn Baldwin leaq 16(%r13),%r13 1986*c0855eaaSJohn Baldwin 1987*c0855eaaSJohn Baldwin movdqa 16(%rsp),%xmm6 1988*c0855eaaSJohn Baldwin 1989*c0855eaaSJohn Baldwin.Lxts_enc_done: 1990*c0855eaaSJohn Baldwin andl $15,%ebx 1991*c0855eaaSJohn Baldwin jz .Lxts_enc_ret 1992*c0855eaaSJohn Baldwin movq %r13,%rdx 1993*c0855eaaSJohn Baldwin 1994*c0855eaaSJohn Baldwin.Lxts_enc_steal: 1995*c0855eaaSJohn Baldwin movzbl (%r12),%eax 1996*c0855eaaSJohn Baldwin movzbl -16(%rdx),%ecx 1997*c0855eaaSJohn Baldwin leaq 1(%r12),%r12 1998*c0855eaaSJohn Baldwin movb %al,-16(%rdx) 1999*c0855eaaSJohn Baldwin movb %cl,0(%rdx) 2000*c0855eaaSJohn Baldwin leaq 1(%rdx),%rdx 2001*c0855eaaSJohn Baldwin subl $1,%ebx 2002*c0855eaaSJohn Baldwin jnz .Lxts_enc_steal 2003*c0855eaaSJohn Baldwin 2004*c0855eaaSJohn Baldwin movdqu -16(%r13),%xmm15 2005*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 2006*c0855eaaSJohn Baldwin pxor %xmm6,%xmm15 2007*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 2008*c0855eaaSJohn Baldwin movdqa %xmm15,32(%rbp) 2009*c0855eaaSJohn Baldwin leaq (%r15),%rdx 2010*c0855eaaSJohn Baldwin call asm_AES_encrypt 2011*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm6 2012*c0855eaaSJohn Baldwin movdqu %xmm6,-16(%r13) 2013*c0855eaaSJohn Baldwin 2014*c0855eaaSJohn Baldwin.Lxts_enc_ret: 2015*c0855eaaSJohn Baldwin leaq (%rsp),%rax 2016*c0855eaaSJohn Baldwin pxor %xmm0,%xmm0 2017*c0855eaaSJohn Baldwin.Lxts_enc_bzero: 2018*c0855eaaSJohn Baldwin movdqa %xmm0,0(%rax) 2019*c0855eaaSJohn Baldwin movdqa %xmm0,16(%rax) 2020*c0855eaaSJohn Baldwin leaq 32(%rax),%rax 2021*c0855eaaSJohn Baldwin cmpq %rax,%rbp 2022*c0855eaaSJohn Baldwin ja .Lxts_enc_bzero 2023*c0855eaaSJohn Baldwin 2024*c0855eaaSJohn Baldwin leaq 120(%rbp),%rax 2025*c0855eaaSJohn Baldwin.cfi_def_cfa %rax,8 2026*c0855eaaSJohn Baldwin movq -48(%rax),%r15 2027*c0855eaaSJohn Baldwin.cfi_restore %r15 2028*c0855eaaSJohn Baldwin movq -40(%rax),%r14 2029*c0855eaaSJohn Baldwin.cfi_restore %r14 2030*c0855eaaSJohn Baldwin movq -32(%rax),%r13 2031*c0855eaaSJohn Baldwin.cfi_restore %r13 2032*c0855eaaSJohn Baldwin movq -24(%rax),%r12 2033*c0855eaaSJohn Baldwin.cfi_restore %r12 2034*c0855eaaSJohn Baldwin movq -16(%rax),%rbx 2035*c0855eaaSJohn Baldwin.cfi_restore %rbx 2036*c0855eaaSJohn Baldwin movq -8(%rax),%rbp 2037*c0855eaaSJohn Baldwin.cfi_restore %rbp 2038*c0855eaaSJohn Baldwin leaq (%rax),%rsp 2039*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rsp 2040*c0855eaaSJohn Baldwin.Lxts_enc_epilogue: 2041*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 2042*c0855eaaSJohn Baldwin.cfi_endproc 2043*c0855eaaSJohn Baldwin.size ossl_bsaes_xts_encrypt,.-ossl_bsaes_xts_encrypt 2044*c0855eaaSJohn Baldwin 2045*c0855eaaSJohn Baldwin.globl ossl_bsaes_xts_decrypt 2046*c0855eaaSJohn Baldwin.type ossl_bsaes_xts_decrypt,@function 2047*c0855eaaSJohn Baldwin.align 16 2048*c0855eaaSJohn Baldwinossl_bsaes_xts_decrypt: 2049*c0855eaaSJohn Baldwin.cfi_startproc 2050*c0855eaaSJohn Baldwin movq %rsp,%rax 2051*c0855eaaSJohn Baldwin.Lxts_dec_prologue: 2052*c0855eaaSJohn Baldwin pushq %rbp 2053*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2054*c0855eaaSJohn Baldwin.cfi_offset %rbp,-16 2055*c0855eaaSJohn Baldwin pushq %rbx 2056*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2057*c0855eaaSJohn Baldwin.cfi_offset %rbx,-24 2058*c0855eaaSJohn Baldwin pushq %r12 2059*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2060*c0855eaaSJohn Baldwin.cfi_offset %r12,-32 2061*c0855eaaSJohn Baldwin pushq %r13 2062*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2063*c0855eaaSJohn Baldwin.cfi_offset %r13,-40 2064*c0855eaaSJohn Baldwin pushq %r14 2065*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2066*c0855eaaSJohn Baldwin.cfi_offset %r14,-48 2067*c0855eaaSJohn Baldwin pushq %r15 2068*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 8 2069*c0855eaaSJohn Baldwin.cfi_offset %r15,-56 2070*c0855eaaSJohn Baldwin leaq -72(%rsp),%rsp 2071*c0855eaaSJohn Baldwin.cfi_adjust_cfa_offset 0x48 2072*c0855eaaSJohn Baldwin movq %rsp,%rbp 2073*c0855eaaSJohn Baldwin movq %rdi,%r12 2074*c0855eaaSJohn Baldwin movq %rsi,%r13 2075*c0855eaaSJohn Baldwin movq %rdx,%r14 2076*c0855eaaSJohn Baldwin movq %rcx,%r15 2077*c0855eaaSJohn Baldwin 2078*c0855eaaSJohn Baldwin leaq (%r9),%rdi 2079*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 2080*c0855eaaSJohn Baldwin leaq (%r8),%rdx 2081*c0855eaaSJohn Baldwin call asm_AES_encrypt 2082*c0855eaaSJohn Baldwin 2083*c0855eaaSJohn Baldwin movl 240(%r15),%eax 2084*c0855eaaSJohn Baldwin movq %r14,%rbx 2085*c0855eaaSJohn Baldwin 2086*c0855eaaSJohn Baldwin movl %eax,%edx 2087*c0855eaaSJohn Baldwin shlq $7,%rax 2088*c0855eaaSJohn Baldwin subq $96,%rax 2089*c0855eaaSJohn Baldwin subq %rax,%rsp 2090*c0855eaaSJohn Baldwin 2091*c0855eaaSJohn Baldwin movq %rsp,%rax 2092*c0855eaaSJohn Baldwin movq %r15,%rcx 2093*c0855eaaSJohn Baldwin movl %edx,%r10d 2094*c0855eaaSJohn Baldwin call _bsaes_key_convert 2095*c0855eaaSJohn Baldwin pxor (%rsp),%xmm7 2096*c0855eaaSJohn Baldwin movdqa %xmm6,(%rax) 2097*c0855eaaSJohn Baldwin movdqa %xmm7,(%rsp) 2098*c0855eaaSJohn Baldwin 2099*c0855eaaSJohn Baldwin xorl %eax,%eax 2100*c0855eaaSJohn Baldwin andq $-16,%r14 2101*c0855eaaSJohn Baldwin testl $15,%ebx 2102*c0855eaaSJohn Baldwin setnz %al 2103*c0855eaaSJohn Baldwin shlq $4,%rax 2104*c0855eaaSJohn Baldwin subq %rax,%r14 2105*c0855eaaSJohn Baldwin 2106*c0855eaaSJohn Baldwin subq $0x80,%rsp 2107*c0855eaaSJohn Baldwin movdqa 32(%rbp),%xmm6 2108*c0855eaaSJohn Baldwin 2109*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2110*c0855eaaSJohn Baldwin movdqa .Lxts_magic(%rip),%xmm12 2111*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2112*c0855eaaSJohn Baldwin 2113*c0855eaaSJohn Baldwin subq $0x80,%r14 2114*c0855eaaSJohn Baldwin jc .Lxts_dec_short 2115*c0855eaaSJohn Baldwin jmp .Lxts_dec_loop 2116*c0855eaaSJohn Baldwin 2117*c0855eaaSJohn Baldwin.align 16 2118*c0855eaaSJohn Baldwin.Lxts_dec_loop: 2119*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2120*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2121*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm15 2122*c0855eaaSJohn Baldwin movdqa %xmm6,0(%rsp) 2123*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2124*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2125*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2126*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2127*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2128*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2129*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm0 2130*c0855eaaSJohn Baldwin movdqa %xmm6,16(%rsp) 2131*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2132*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2133*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2134*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2135*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 2136*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2137*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2138*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm1 2139*c0855eaaSJohn Baldwin movdqa %xmm6,32(%rsp) 2140*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2141*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2142*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2143*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2144*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 2145*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 2146*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2147*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2148*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm2 2149*c0855eaaSJohn Baldwin movdqa %xmm6,48(%rsp) 2150*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2151*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2152*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2153*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2154*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 2155*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 2156*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2157*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2158*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm3 2159*c0855eaaSJohn Baldwin movdqa %xmm6,64(%rsp) 2160*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2161*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2162*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2163*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2164*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 2165*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 2166*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2167*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2168*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm4 2169*c0855eaaSJohn Baldwin movdqa %xmm6,80(%rsp) 2170*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2171*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2172*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2173*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2174*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 2175*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 2176*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2177*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2178*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm5 2179*c0855eaaSJohn Baldwin movdqa %xmm6,96(%rsp) 2180*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2181*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2182*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2183*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2184*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 2185*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 2186*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 2187*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 2188*c0855eaaSJohn Baldwin movdqu 112(%r12),%xmm14 2189*c0855eaaSJohn Baldwin leaq 128(%r12),%r12 2190*c0855eaaSJohn Baldwin movdqa %xmm6,112(%rsp) 2191*c0855eaaSJohn Baldwin pxor %xmm13,%xmm5 2192*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2193*c0855eaaSJohn Baldwin pxor %xmm14,%xmm6 2194*c0855eaaSJohn Baldwin movl %edx,%r10d 2195*c0855eaaSJohn Baldwin 2196*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2197*c0855eaaSJohn Baldwin 2198*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2199*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2200*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2201*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2202*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2203*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm3 2204*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2205*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm1 2206*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 2207*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 2208*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 2209*c0855eaaSJohn Baldwin pxor 96(%rsp),%xmm2 2210*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 2211*c0855eaaSJohn Baldwin pxor 112(%rsp),%xmm4 2212*c0855eaaSJohn Baldwin movdqu %xmm2,96(%r13) 2213*c0855eaaSJohn Baldwin movdqu %xmm4,112(%r13) 2214*c0855eaaSJohn Baldwin leaq 128(%r13),%r13 2215*c0855eaaSJohn Baldwin 2216*c0855eaaSJohn Baldwin movdqa 112(%rsp),%xmm6 2217*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2218*c0855eaaSJohn Baldwin movdqa .Lxts_magic(%rip),%xmm12 2219*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2220*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2221*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2222*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2223*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2224*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2225*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2226*c0855eaaSJohn Baldwin 2227*c0855eaaSJohn Baldwin subq $0x80,%r14 2228*c0855eaaSJohn Baldwin jnc .Lxts_dec_loop 2229*c0855eaaSJohn Baldwin 2230*c0855eaaSJohn Baldwin.Lxts_dec_short: 2231*c0855eaaSJohn Baldwin addq $0x80,%r14 2232*c0855eaaSJohn Baldwin jz .Lxts_dec_done 2233*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2234*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2235*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm15 2236*c0855eaaSJohn Baldwin movdqa %xmm6,0(%rsp) 2237*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2238*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2239*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2240*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2241*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2242*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2243*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm0 2244*c0855eaaSJohn Baldwin movdqa %xmm6,16(%rsp) 2245*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2246*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2247*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2248*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2249*c0855eaaSJohn Baldwin movdqu 0(%r12),%xmm7 2250*c0855eaaSJohn Baldwin cmpq $16,%r14 2251*c0855eaaSJohn Baldwin je .Lxts_dec_1 2252*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2253*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2254*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm1 2255*c0855eaaSJohn Baldwin movdqa %xmm6,32(%rsp) 2256*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2257*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2258*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2259*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2260*c0855eaaSJohn Baldwin movdqu 16(%r12),%xmm8 2261*c0855eaaSJohn Baldwin cmpq $32,%r14 2262*c0855eaaSJohn Baldwin je .Lxts_dec_2 2263*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 2264*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2265*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2266*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm2 2267*c0855eaaSJohn Baldwin movdqa %xmm6,48(%rsp) 2268*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2269*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2270*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2271*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2272*c0855eaaSJohn Baldwin movdqu 32(%r12),%xmm9 2273*c0855eaaSJohn Baldwin cmpq $48,%r14 2274*c0855eaaSJohn Baldwin je .Lxts_dec_3 2275*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 2276*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2277*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2278*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm3 2279*c0855eaaSJohn Baldwin movdqa %xmm6,64(%rsp) 2280*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2281*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2282*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2283*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2284*c0855eaaSJohn Baldwin movdqu 48(%r12),%xmm10 2285*c0855eaaSJohn Baldwin cmpq $64,%r14 2286*c0855eaaSJohn Baldwin je .Lxts_dec_4 2287*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 2288*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2289*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2290*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm4 2291*c0855eaaSJohn Baldwin movdqa %xmm6,80(%rsp) 2292*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2293*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2294*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2295*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2296*c0855eaaSJohn Baldwin movdqu 64(%r12),%xmm11 2297*c0855eaaSJohn Baldwin cmpq $80,%r14 2298*c0855eaaSJohn Baldwin je .Lxts_dec_5 2299*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 2300*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2301*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2302*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm5 2303*c0855eaaSJohn Baldwin movdqa %xmm6,96(%rsp) 2304*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2305*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2306*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2307*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2308*c0855eaaSJohn Baldwin movdqu 80(%r12),%xmm12 2309*c0855eaaSJohn Baldwin cmpq $96,%r14 2310*c0855eaaSJohn Baldwin je .Lxts_dec_6 2311*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 2312*c0855eaaSJohn Baldwin movdqu 96(%r12),%xmm13 2313*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 2314*c0855eaaSJohn Baldwin movdqa %xmm6,112(%rsp) 2315*c0855eaaSJohn Baldwin leaq 112(%r12),%r12 2316*c0855eaaSJohn Baldwin pxor %xmm13,%xmm5 2317*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2318*c0855eaaSJohn Baldwin movl %edx,%r10d 2319*c0855eaaSJohn Baldwin 2320*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2321*c0855eaaSJohn Baldwin 2322*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2323*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2324*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2325*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2326*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2327*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm3 2328*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2329*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm1 2330*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 2331*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 2332*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 2333*c0855eaaSJohn Baldwin pxor 96(%rsp),%xmm2 2334*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 2335*c0855eaaSJohn Baldwin movdqu %xmm2,96(%r13) 2336*c0855eaaSJohn Baldwin leaq 112(%r13),%r13 2337*c0855eaaSJohn Baldwin 2338*c0855eaaSJohn Baldwin movdqa 112(%rsp),%xmm6 2339*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2340*c0855eaaSJohn Baldwin.align 16 2341*c0855eaaSJohn Baldwin.Lxts_dec_6: 2342*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 2343*c0855eaaSJohn Baldwin leaq 96(%r12),%r12 2344*c0855eaaSJohn Baldwin pxor %xmm12,%xmm4 2345*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2346*c0855eaaSJohn Baldwin movl %edx,%r10d 2347*c0855eaaSJohn Baldwin 2348*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2349*c0855eaaSJohn Baldwin 2350*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2351*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2352*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2353*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2354*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2355*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm3 2356*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2357*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm1 2358*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 2359*c0855eaaSJohn Baldwin pxor 80(%rsp),%xmm6 2360*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 2361*c0855eaaSJohn Baldwin movdqu %xmm6,80(%r13) 2362*c0855eaaSJohn Baldwin leaq 96(%r13),%r13 2363*c0855eaaSJohn Baldwin 2364*c0855eaaSJohn Baldwin movdqa 96(%rsp),%xmm6 2365*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2366*c0855eaaSJohn Baldwin.align 16 2367*c0855eaaSJohn Baldwin.Lxts_dec_5: 2368*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 2369*c0855eaaSJohn Baldwin leaq 80(%r12),%r12 2370*c0855eaaSJohn Baldwin pxor %xmm11,%xmm3 2371*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2372*c0855eaaSJohn Baldwin movl %edx,%r10d 2373*c0855eaaSJohn Baldwin 2374*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2375*c0855eaaSJohn Baldwin 2376*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2377*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2378*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2379*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2380*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2381*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm3 2382*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2383*c0855eaaSJohn Baldwin pxor 64(%rsp),%xmm1 2384*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 2385*c0855eaaSJohn Baldwin movdqu %xmm1,64(%r13) 2386*c0855eaaSJohn Baldwin leaq 80(%r13),%r13 2387*c0855eaaSJohn Baldwin 2388*c0855eaaSJohn Baldwin movdqa 80(%rsp),%xmm6 2389*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2390*c0855eaaSJohn Baldwin.align 16 2391*c0855eaaSJohn Baldwin.Lxts_dec_4: 2392*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 2393*c0855eaaSJohn Baldwin leaq 64(%r12),%r12 2394*c0855eaaSJohn Baldwin pxor %xmm10,%xmm2 2395*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2396*c0855eaaSJohn Baldwin movl %edx,%r10d 2397*c0855eaaSJohn Baldwin 2398*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2399*c0855eaaSJohn Baldwin 2400*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2401*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2402*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2403*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2404*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2405*c0855eaaSJohn Baldwin pxor 48(%rsp),%xmm3 2406*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2407*c0855eaaSJohn Baldwin movdqu %xmm3,48(%r13) 2408*c0855eaaSJohn Baldwin leaq 64(%r13),%r13 2409*c0855eaaSJohn Baldwin 2410*c0855eaaSJohn Baldwin movdqa 64(%rsp),%xmm6 2411*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2412*c0855eaaSJohn Baldwin.align 16 2413*c0855eaaSJohn Baldwin.Lxts_dec_3: 2414*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 2415*c0855eaaSJohn Baldwin leaq 48(%r12),%r12 2416*c0855eaaSJohn Baldwin pxor %xmm9,%xmm1 2417*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2418*c0855eaaSJohn Baldwin movl %edx,%r10d 2419*c0855eaaSJohn Baldwin 2420*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2421*c0855eaaSJohn Baldwin 2422*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2423*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2424*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2425*c0855eaaSJohn Baldwin pxor 32(%rsp),%xmm5 2426*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2427*c0855eaaSJohn Baldwin movdqu %xmm5,32(%r13) 2428*c0855eaaSJohn Baldwin leaq 48(%r13),%r13 2429*c0855eaaSJohn Baldwin 2430*c0855eaaSJohn Baldwin movdqa 48(%rsp),%xmm6 2431*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2432*c0855eaaSJohn Baldwin.align 16 2433*c0855eaaSJohn Baldwin.Lxts_dec_2: 2434*c0855eaaSJohn Baldwin pxor %xmm7,%xmm15 2435*c0855eaaSJohn Baldwin leaq 32(%r12),%r12 2436*c0855eaaSJohn Baldwin pxor %xmm8,%xmm0 2437*c0855eaaSJohn Baldwin leaq 128(%rsp),%rax 2438*c0855eaaSJohn Baldwin movl %edx,%r10d 2439*c0855eaaSJohn Baldwin 2440*c0855eaaSJohn Baldwin call _bsaes_decrypt8 2441*c0855eaaSJohn Baldwin 2442*c0855eaaSJohn Baldwin pxor 0(%rsp),%xmm15 2443*c0855eaaSJohn Baldwin pxor 16(%rsp),%xmm0 2444*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2445*c0855eaaSJohn Baldwin movdqu %xmm0,16(%r13) 2446*c0855eaaSJohn Baldwin leaq 32(%r13),%r13 2447*c0855eaaSJohn Baldwin 2448*c0855eaaSJohn Baldwin movdqa 32(%rsp),%xmm6 2449*c0855eaaSJohn Baldwin jmp .Lxts_dec_done 2450*c0855eaaSJohn Baldwin.align 16 2451*c0855eaaSJohn Baldwin.Lxts_dec_1: 2452*c0855eaaSJohn Baldwin pxor %xmm15,%xmm7 2453*c0855eaaSJohn Baldwin leaq 16(%r12),%r12 2454*c0855eaaSJohn Baldwin movdqa %xmm7,32(%rbp) 2455*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 2456*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 2457*c0855eaaSJohn Baldwin leaq (%r15),%rdx 2458*c0855eaaSJohn Baldwin call asm_AES_decrypt 2459*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm15 2460*c0855eaaSJohn Baldwin 2461*c0855eaaSJohn Baldwin 2462*c0855eaaSJohn Baldwin 2463*c0855eaaSJohn Baldwin 2464*c0855eaaSJohn Baldwin 2465*c0855eaaSJohn Baldwin movdqu %xmm15,0(%r13) 2466*c0855eaaSJohn Baldwin leaq 16(%r13),%r13 2467*c0855eaaSJohn Baldwin 2468*c0855eaaSJohn Baldwin movdqa 16(%rsp),%xmm6 2469*c0855eaaSJohn Baldwin 2470*c0855eaaSJohn Baldwin.Lxts_dec_done: 2471*c0855eaaSJohn Baldwin andl $15,%ebx 2472*c0855eaaSJohn Baldwin jz .Lxts_dec_ret 2473*c0855eaaSJohn Baldwin 2474*c0855eaaSJohn Baldwin pxor %xmm14,%xmm14 2475*c0855eaaSJohn Baldwin movdqa .Lxts_magic(%rip),%xmm12 2476*c0855eaaSJohn Baldwin pcmpgtd %xmm6,%xmm14 2477*c0855eaaSJohn Baldwin pshufd $0x13,%xmm14,%xmm13 2478*c0855eaaSJohn Baldwin movdqa %xmm6,%xmm5 2479*c0855eaaSJohn Baldwin paddq %xmm6,%xmm6 2480*c0855eaaSJohn Baldwin pand %xmm12,%xmm13 2481*c0855eaaSJohn Baldwin movdqu (%r12),%xmm15 2482*c0855eaaSJohn Baldwin pxor %xmm13,%xmm6 2483*c0855eaaSJohn Baldwin 2484*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 2485*c0855eaaSJohn Baldwin pxor %xmm6,%xmm15 2486*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 2487*c0855eaaSJohn Baldwin movdqa %xmm15,32(%rbp) 2488*c0855eaaSJohn Baldwin leaq (%r15),%rdx 2489*c0855eaaSJohn Baldwin call asm_AES_decrypt 2490*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm6 2491*c0855eaaSJohn Baldwin movq %r13,%rdx 2492*c0855eaaSJohn Baldwin movdqu %xmm6,(%r13) 2493*c0855eaaSJohn Baldwin 2494*c0855eaaSJohn Baldwin.Lxts_dec_steal: 2495*c0855eaaSJohn Baldwin movzbl 16(%r12),%eax 2496*c0855eaaSJohn Baldwin movzbl (%rdx),%ecx 2497*c0855eaaSJohn Baldwin leaq 1(%r12),%r12 2498*c0855eaaSJohn Baldwin movb %al,(%rdx) 2499*c0855eaaSJohn Baldwin movb %cl,16(%rdx) 2500*c0855eaaSJohn Baldwin leaq 1(%rdx),%rdx 2501*c0855eaaSJohn Baldwin subl $1,%ebx 2502*c0855eaaSJohn Baldwin jnz .Lxts_dec_steal 2503*c0855eaaSJohn Baldwin 2504*c0855eaaSJohn Baldwin movdqu (%r13),%xmm15 2505*c0855eaaSJohn Baldwin leaq 32(%rbp),%rdi 2506*c0855eaaSJohn Baldwin pxor %xmm5,%xmm15 2507*c0855eaaSJohn Baldwin leaq 32(%rbp),%rsi 2508*c0855eaaSJohn Baldwin movdqa %xmm15,32(%rbp) 2509*c0855eaaSJohn Baldwin leaq (%r15),%rdx 2510*c0855eaaSJohn Baldwin call asm_AES_decrypt 2511*c0855eaaSJohn Baldwin pxor 32(%rbp),%xmm5 2512*c0855eaaSJohn Baldwin movdqu %xmm5,(%r13) 2513*c0855eaaSJohn Baldwin 2514*c0855eaaSJohn Baldwin.Lxts_dec_ret: 2515*c0855eaaSJohn Baldwin leaq (%rsp),%rax 2516*c0855eaaSJohn Baldwin pxor %xmm0,%xmm0 2517*c0855eaaSJohn Baldwin.Lxts_dec_bzero: 2518*c0855eaaSJohn Baldwin movdqa %xmm0,0(%rax) 2519*c0855eaaSJohn Baldwin movdqa %xmm0,16(%rax) 2520*c0855eaaSJohn Baldwin leaq 32(%rax),%rax 2521*c0855eaaSJohn Baldwin cmpq %rax,%rbp 2522*c0855eaaSJohn Baldwin ja .Lxts_dec_bzero 2523*c0855eaaSJohn Baldwin 2524*c0855eaaSJohn Baldwin leaq 120(%rbp),%rax 2525*c0855eaaSJohn Baldwin.cfi_def_cfa %rax,8 2526*c0855eaaSJohn Baldwin movq -48(%rax),%r15 2527*c0855eaaSJohn Baldwin.cfi_restore %r15 2528*c0855eaaSJohn Baldwin movq -40(%rax),%r14 2529*c0855eaaSJohn Baldwin.cfi_restore %r14 2530*c0855eaaSJohn Baldwin movq -32(%rax),%r13 2531*c0855eaaSJohn Baldwin.cfi_restore %r13 2532*c0855eaaSJohn Baldwin movq -24(%rax),%r12 2533*c0855eaaSJohn Baldwin.cfi_restore %r12 2534*c0855eaaSJohn Baldwin movq -16(%rax),%rbx 2535*c0855eaaSJohn Baldwin.cfi_restore %rbx 2536*c0855eaaSJohn Baldwin movq -8(%rax),%rbp 2537*c0855eaaSJohn Baldwin.cfi_restore %rbp 2538*c0855eaaSJohn Baldwin leaq (%rax),%rsp 2539*c0855eaaSJohn Baldwin.cfi_def_cfa_register %rsp 2540*c0855eaaSJohn Baldwin.Lxts_dec_epilogue: 2541*c0855eaaSJohn Baldwin .byte 0xf3,0xc3 2542*c0855eaaSJohn Baldwin.cfi_endproc 2543*c0855eaaSJohn Baldwin.size ossl_bsaes_xts_decrypt,.-ossl_bsaes_xts_decrypt 2544*c0855eaaSJohn Baldwin.type _bsaes_const,@object 2545*c0855eaaSJohn Baldwin.align 64 2546*c0855eaaSJohn Baldwin_bsaes_const: 2547*c0855eaaSJohn Baldwin.LM0ISR: 2548*c0855eaaSJohn Baldwin.quad 0x0a0e0206070b0f03, 0x0004080c0d010509 2549*c0855eaaSJohn Baldwin.LISRM0: 2550*c0855eaaSJohn Baldwin.quad 0x01040b0e0205080f, 0x0306090c00070a0d 2551*c0855eaaSJohn Baldwin.LISR: 2552*c0855eaaSJohn Baldwin.quad 0x0504070602010003, 0x0f0e0d0c080b0a09 2553*c0855eaaSJohn Baldwin.LBS0: 2554*c0855eaaSJohn Baldwin.quad 0x5555555555555555, 0x5555555555555555 2555*c0855eaaSJohn Baldwin.LBS1: 2556*c0855eaaSJohn Baldwin.quad 0x3333333333333333, 0x3333333333333333 2557*c0855eaaSJohn Baldwin.LBS2: 2558*c0855eaaSJohn Baldwin.quad 0x0f0f0f0f0f0f0f0f, 0x0f0f0f0f0f0f0f0f 2559*c0855eaaSJohn Baldwin.LSR: 2560*c0855eaaSJohn Baldwin.quad 0x0504070600030201, 0x0f0e0d0c0a09080b 2561*c0855eaaSJohn Baldwin.LSRM0: 2562*c0855eaaSJohn Baldwin.quad 0x0304090e00050a0f, 0x01060b0c0207080d 2563*c0855eaaSJohn Baldwin.LM0SR: 2564*c0855eaaSJohn Baldwin.quad 0x0a0e02060f03070b, 0x0004080c05090d01 2565*c0855eaaSJohn Baldwin.LSWPUP: 2566*c0855eaaSJohn Baldwin.quad 0x0706050403020100, 0x0c0d0e0f0b0a0908 2567*c0855eaaSJohn Baldwin.LSWPUPM0SR: 2568*c0855eaaSJohn Baldwin.quad 0x0a0d02060c03070b, 0x0004080f05090e01 2569*c0855eaaSJohn Baldwin.LADD1: 2570*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000100000000 2571*c0855eaaSJohn Baldwin.LADD2: 2572*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000200000000 2573*c0855eaaSJohn Baldwin.LADD3: 2574*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000300000000 2575*c0855eaaSJohn Baldwin.LADD4: 2576*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000400000000 2577*c0855eaaSJohn Baldwin.LADD5: 2578*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000500000000 2579*c0855eaaSJohn Baldwin.LADD6: 2580*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000600000000 2581*c0855eaaSJohn Baldwin.LADD7: 2582*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000700000000 2583*c0855eaaSJohn Baldwin.LADD8: 2584*c0855eaaSJohn Baldwin.quad 0x0000000000000000, 0x0000000800000000 2585*c0855eaaSJohn Baldwin.Lxts_magic: 2586*c0855eaaSJohn Baldwin.long 0x87,0,1,0 2587*c0855eaaSJohn Baldwin.Lmasks: 2588*c0855eaaSJohn Baldwin.quad 0x0101010101010101, 0x0101010101010101 2589*c0855eaaSJohn Baldwin.quad 0x0202020202020202, 0x0202020202020202 2590*c0855eaaSJohn Baldwin.quad 0x0404040404040404, 0x0404040404040404 2591*c0855eaaSJohn Baldwin.quad 0x0808080808080808, 0x0808080808080808 2592*c0855eaaSJohn Baldwin.LM0: 2593*c0855eaaSJohn Baldwin.quad 0x02060a0e03070b0f, 0x0004080c0105090d 2594*c0855eaaSJohn Baldwin.L63: 2595*c0855eaaSJohn Baldwin.quad 0x6363636363636363, 0x6363636363636363 2596*c0855eaaSJohn Baldwin.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 2597*c0855eaaSJohn Baldwin.align 64 2598*c0855eaaSJohn Baldwin.size _bsaes_const,.-_bsaes_const 2599*c0855eaaSJohn Baldwin .section ".note.gnu.property", "a" 2600*c0855eaaSJohn Baldwin .p2align 3 2601*c0855eaaSJohn Baldwin .long 1f - 0f 2602*c0855eaaSJohn Baldwin .long 4f - 1f 2603*c0855eaaSJohn Baldwin .long 5 2604*c0855eaaSJohn Baldwin0: 2605*c0855eaaSJohn Baldwin # "GNU" encoded with .byte, since .asciz isn't supported 2606*c0855eaaSJohn Baldwin # on Solaris. 2607*c0855eaaSJohn Baldwin .byte 0x47 2608*c0855eaaSJohn Baldwin .byte 0x4e 2609*c0855eaaSJohn Baldwin .byte 0x55 2610*c0855eaaSJohn Baldwin .byte 0 2611*c0855eaaSJohn Baldwin1: 2612*c0855eaaSJohn Baldwin .p2align 3 2613*c0855eaaSJohn Baldwin .long 0xc0000002 2614*c0855eaaSJohn Baldwin .long 3f - 2f 2615*c0855eaaSJohn Baldwin2: 2616*c0855eaaSJohn Baldwin .long 3 2617*c0855eaaSJohn Baldwin3: 2618*c0855eaaSJohn Baldwin .p2align 3 2619*c0855eaaSJohn Baldwin4: 2620