Ticket #50771: change-binary-literals-to-hex.patch

File change-binary-literals-to-hex.patch, 10.0 KB (added by jmroot (Joshua Root), 8 years ago)
  • crypto/sha/asm/sha1-x86_64.pl

    old new  
    357357        movdqa  K_XX_XX+0xa0(%rip),$BSWAP       # byte-n-word swap
    358358
    359359        movdqu  ($inp),@MSG[0]
    360         pshufd  \$0b00011011,$ABCD,$ABCD        # flip word order
     360        pshufd  \$0x1b,$ABCD,$ABCD      # flip word order
    361361        movdqu  0x10($inp),@MSG[1]
    362         pshufd  \$0b00011011,$E,$E              # flip word order
     362        pshufd  \$0x1b,$E,$E            # flip word order
    363363        movdqu  0x20($inp),@MSG[2]
    364364        pshufb  $BSWAP,@MSG[0]
    365365        movdqu  0x30($inp),@MSG[3]
     
    425425
    426426        jnz             .Loop_shaext
    427427
    428         pshufd  \$0b00011011,$ABCD,$ABCD
    429         pshufd  \$0b00011011,$E,$E
     428        pshufd  \$0x1b,$ABCD,$ABCD
     429        pshufd  \$0x1b,$E,$E
    430430        movdqu  $ABCD,($ctx)
    431431        movd    $E,16($ctx)
    432432___
  • crypto/sha/asm/sha1-mb-x86_64.pl

    old new  
    569569        punpcklqdq      @MSG0[1],$ABCD0         # d0.c0.b0.a0
    570570        punpckhqdq      @MSG0[1],$ABCD1         # d1.c1.b1.a1
    571571
    572         pshufd          \$0b00111111,@MSG0[3],$E0
    573         pshufd          \$0b01111111,@MSG0[3],$E1
    574         pshufd          \$0b00011011,$ABCD0,$ABCD0
    575         pshufd          \$0b00011011,$ABCD1,$ABCD1
     572        pshufd          \$0x3f,@MSG0[3],$E0
     573        pshufd          \$0x7f,@MSG0[3],$E1
     574        pshufd          \$0x1b,$ABCD0,$ABCD0
     575        pshufd          \$0x1b,$ABCD1,$ABCD1
    576576        jmp             .Loop_shaext
    577577
    578578.align  32
     
    710710
    711711        mov             `$REG_SZ*17+8`(%rsp),$num
    712712
    713         pshufd          \$0b00011011,$ABCD0,$ABCD0
    714         pshufd          \$0b00011011,$ABCD1,$ABCD1
     713        pshufd          \$0x1b,$ABCD0,$ABCD0
     714        pshufd          \$0x1b,$ABCD1,$ABCD1
    715715
    716716        movdqa          $ABCD0,@MSG0[0]
    717717        punpckldq       $ABCD1,$ABCD0           # b1.b0.a1.a0
  • crypto/sha/asm/sha256-mb-x86_64.pl

    old new  
    482482        punpckhqdq      @MSG1[0],$ABEF1                 # F1.E1.B1.A1
    483483        punpckhqdq      @MSG1[2],$CDGH1                 # H1.G1.D1.C1
    484484
    485         pshufd          \$0b00011011,$ABEF0,$ABEF0
    486         pshufd          \$0b00011011,$CDGH0,$CDGH0
    487         pshufd          \$0b00011011,$ABEF1,$ABEF1
    488         pshufd          \$0b00011011,$CDGH1,$CDGH1
     485        pshufd          \$0x1b,$ABEF0,$ABEF0
     486        pshufd          \$0x1b,$CDGH0,$CDGH0
     487        pshufd          \$0x1b,$ABEF1,$ABEF1
     488        pshufd          \$0x1b,$CDGH1,$CDGH1
    489489        jmp             .Loop_shaext
    490490
    491491.align  32
     
    702702
    703703        mov             `$REG_SZ*17+8`(%rsp),$num
    704704
    705         pshufd          \$0b00011011,$ABEF0,$ABEF0
    706         pshufd          \$0b00011011,$CDGH0,$CDGH0
    707         pshufd          \$0b00011011,$ABEF1,$ABEF1
    708         pshufd          \$0b00011011,$CDGH1,$CDGH1
     705        pshufd          \$0x1b,$ABEF0,$ABEF0
     706        pshufd          \$0x1b,$CDGH0,$CDGH0
     707        pshufd          \$0x1b,$ABEF1,$ABEF1
     708        pshufd          \$0x1b,$CDGH1,$CDGH1
    709709
    710710        movdqa          $ABEF0,@MSG0[0]
    711711        movdqa          $CDGH0,@MSG0[1]
  • crypto/aes/asm/aesni-x86_64.pl

    old new  
    36333633        $movkey %xmm0,(%rax)
    36343634        lea     16(%rax),%rax
    36353635.Lkey_expansion_128_cold:
    3636         shufps  \$0b00010000,%xmm0,%xmm4
     3636        shufps  \$0x10,%xmm0,%xmm4
    36373637        xorps   %xmm4, %xmm0
    3638         shufps  \$0b10001100,%xmm0,%xmm4
     3638        shufps  \$0x8c,%xmm0,%xmm4
    36393639        xorps   %xmm4, %xmm0
    3640         shufps  \$0b11111111,%xmm1,%xmm1        # critical path
     3640        shufps  \$0xff,%xmm1,%xmm1      # critical path
    36413641        xorps   %xmm1,%xmm0
    36423642        ret
    36433643
     
    36483648.Lkey_expansion_192a_cold:
    36493649        movaps  %xmm2, %xmm5
    36503650.Lkey_expansion_192b_warm:
    3651         shufps  \$0b00010000,%xmm0,%xmm4
     3651        shufps  \$0x10,%xmm0,%xmm4
    36523652        movdqa  %xmm2,%xmm3
    36533653        xorps   %xmm4,%xmm0
    3654         shufps  \$0b10001100,%xmm0,%xmm4
     3654        shufps  \$0x8c,%xmm0,%xmm4
    36553655        pslldq  \$4,%xmm3
    36563656        xorps   %xmm4,%xmm0
    3657         pshufd  \$0b01010101,%xmm1,%xmm1        # critical path
     3657        pshufd  \$0x55,%xmm1,%xmm1      # critical path
    36583658        pxor    %xmm3,%xmm2
    36593659        pxor    %xmm1,%xmm0
    3660         pshufd  \$0b11111111,%xmm0,%xmm3
     3660        pshufd  \$0xff,%xmm0,%xmm3
    36613661        pxor    %xmm3,%xmm2
    36623662        ret
    36633663
    36643664.align 16
    36653665.Lkey_expansion_192b:
    36663666        movaps  %xmm0,%xmm3
    3667         shufps  \$0b01000100,%xmm0,%xmm5
     3667        shufps  \$0x44,%xmm0,%xmm5
    36683668        $movkey %xmm5,(%rax)
    3669         shufps  \$0b01001110,%xmm2,%xmm3
     3669        shufps  \$0x4e,%xmm2,%xmm3
    36703670        $movkey %xmm3,16(%rax)
    36713671        lea     32(%rax),%rax
    36723672        jmp     .Lkey_expansion_192b_warm
     
    36763676        $movkey %xmm2,(%rax)
    36773677        lea     16(%rax),%rax
    36783678.Lkey_expansion_256a_cold:
    3679         shufps  \$0b00010000,%xmm0,%xmm4
     3679        shufps  \$0x10,%xmm0,%xmm4
    36803680        xorps   %xmm4,%xmm0
    3681         shufps  \$0b10001100,%xmm0,%xmm4
     3681        shufps  \$0x8c,%xmm0,%xmm4
    36823682        xorps   %xmm4,%xmm0
    3683         shufps  \$0b11111111,%xmm1,%xmm1        # critical path
     3683        shufps  \$0xff,%xmm1,%xmm1      # critical path
    36843684        xorps   %xmm1,%xmm0
    36853685        ret
    36863686
     
    36893689        $movkey %xmm0,(%rax)
    36903690        lea     16(%rax),%rax
    36913691
    3692         shufps  \$0b00010000,%xmm2,%xmm4
     3692        shufps  \$0x10,%xmm2,%xmm4
    36933693        xorps   %xmm4,%xmm2
    3694         shufps  \$0b10001100,%xmm2,%xmm4
     3694        shufps  \$0x8c,%xmm2,%xmm4
    36953695        xorps   %xmm4,%xmm2
    3696         shufps  \$0b10101010,%xmm1,%xmm1        # critical path
     3696        shufps  \$0xaa,%xmm1,%xmm1      # critical path
    36973697        xorps   %xmm1,%xmm2
    36983698        ret
    36993699.size   ${PREFIX}_set_encrypt_key,.-${PREFIX}_set_encrypt_key
  • crypto/aes/asm/aesni-sha1-x86_64.pl

    old new  
    17051705        movups  16($key),$rndkey[0]             # forward reference
    17061706        lea     112($key),$key                  # size optimization
    17071707
    1708         pshufd  \$0b00011011,$ABCD,$ABCD        # flip word order
    1709         pshufd  \$0b00011011,$E,$E              # flip word order
     1708        pshufd  \$0x1b,$ABCD,$ABCD      # flip word order
     1709        pshufd  \$0x1b,$E,$E            # flip word order
    17101710        jmp     .Loop_shaext
    17111711
    17121712.align  16
     
    18061806        lea             64($in0),$in0
    18071807        jnz             .Loop_shaext
    18081808
    1809         pshufd  \$0b00011011,$ABCD,$ABCD
    1810         pshufd  \$0b00011011,$E,$E
     1809        pshufd  \$0x1b,$ABCD,$ABCD
     1810        pshufd  \$0x1b,$E,$E
    18111811        movups  $iv,($ivp)                      # write IV
    18121812        movdqu  $ABCD,($ctx)
    18131813        movd    $E,16($ctx)
  • crypto/modes/asm/ghash-x86_64.pl

    old new  
    419419if (!defined($HK)) {    $HK = $T2;
    420420$code.=<<___;
    421421        movdqa          $Xi,$Xhi                #
    422         pshufd          \$0b01001110,$Xi,$T1
    423         pshufd          \$0b01001110,$Hkey,$T2
     422        pshufd          \$0x4e,$Xi,$T1
     423        pshufd          \$0x4e,$Hkey,$T2
    424424        pxor            $Xi,$T1                 #
    425425        pxor            $Hkey,$T2
    426426___
    427427} else {
    428428$code.=<<___;
    429429        movdqa          $Xi,$Xhi                #
    430         pshufd          \$0b01001110,$Xi,$T1
     430        pshufd          \$0x4e,$Xi,$T1
    431431        pxor            $Xi,$T1                 #
    432432___
    433433}
     
    494494___
    495495$code.=<<___;
    496496        movdqu          ($Xip),$Hkey
    497         pshufd          \$0b01001110,$Hkey,$Hkey        # dword swap
     497        pshufd          \$0x4e,$Hkey,$Hkey      # dword swap
    498498
    499499        # <<1 twist
    500         pshufd          \$0b11111111,$Hkey,$T2  # broadcast uppermost dword
     500        pshufd          \$0xff,$Hkey,$T2        # broadcast uppermost dword
    501501        movdqa          $Hkey,$T1
    502502        psllq           \$1,$Hkey
    503503        pxor            $T3,$T3                 #
     
    511511        pxor            $T3,$Hkey               # if(carry) H^=0x1c2_polynomial
    512512
    513513        # calculate H^2
    514         pshufd          \$0b01001110,$Hkey,$HK
     514        pshufd          \$0x4e,$Hkey,$HK
    515515        movdqa          $Hkey,$Xi
    516516        pxor            $Hkey,$HK
    517517___
    518518        &clmul64x64_T2  ($Xhi,$Xi,$Hkey,$HK);
    519519        &reduction_alg9 ($Xhi,$Xi);
    520520$code.=<<___;
    521         pshufd          \$0b01001110,$Hkey,$T1
    522         pshufd          \$0b01001110,$Xi,$T2
     521        pshufd          \$0x4e,$Hkey,$T1
     522        pshufd          \$0x4e,$Xi,$T2
    523523        pxor            $Hkey,$T1               # Karatsuba pre-processing
    524524        movdqu          $Hkey,0x00($Htbl)       # save H
    525525        pxor            $Xi,$T2                 # Karatsuba pre-processing
     
    536536        &clmul64x64_T2  ($Xhi,$Xi,$Hkey,$HK);   # H^4
    537537        &reduction_alg9 ($Xhi,$Xi);
    538538$code.=<<___;
    539         pshufd          \$0b01001110,$T3,$T1
    540         pshufd          \$0b01001110,$Xi,$T2
     539        pshufd          \$0x4e,$T3,$T1
     540        pshufd          \$0x4e,$Xi,$T2
    541541        pxor            $T3,$T1                 # Karatsuba pre-processing
    542542        movdqu          $T3,0x30($Htbl)         # save H^3
    543543        pxor            $Xi,$T2                 # Karatsuba pre-processing
     
    669669        pshufb          $T3,$Xln
    670670         pshufb         $T3,$Xl
    671671        movdqa          $Xln,$Xhn
    672         pshufd          \$0b01001110,$Xln,$Xmn
     672        pshufd          \$0x4e,$Xln,$Xmn
    673673        pxor            $Xln,$Xmn
    674674        pclmulqdq       \$0x00,$Hkey,$Xln
    675675        pclmulqdq       \$0x11,$Hkey,$Xhn
    676676        pclmulqdq       \$0x00,$HK,$Xmn
    677677
    678678        movdqa          $Xl,$Xh
    679         pshufd          \$0b01001110,$Xl,$Xm
     679        pshufd          \$0x4e,$Xl,$Xm
    680680        pxor            $Xl,$Xm
    681681        pclmulqdq       \$0x00,$Hkey2,$Xl
    682682        pclmulqdq       \$0x11,$Hkey2,$Xh
     
    691691        pshufb          $T3,$Xl
    692692         pshufb         $T3,$T1
    693693        movdqa          $Xl,$Xh
    694         pshufd          \$0b01001110,$Xl,$Xm
     694        pshufd          \$0x4e,$Xl,$Xm
    695695         pxor           $T1,$Xi
    696696        pxor            $Xl,$Xm
    697697        pclmulqdq       \$0x00,$Hkey3,$Xl
    698698         movdqa         $Xi,$Xhi
    699          pshufd         \$0b01001110,$Xi,$T1
     699         pshufd         \$0x4e,$Xi,$T1
    700700         pxor           $Xi,$T1
    701701        pclmulqdq       \$0x11,$Hkey3,$Xh
    702702        pclmulqdq       \$0x00,$HK,$Xm
     
    719719         movdqu         0x20($inp),$Xln
    720720         movdqa         $Xl,$Xh
    721721        pclmulqdq       \$0x10,$HK,$T1
    722          pshufd         \$0b01001110,$Xl,$Xm
     722         pshufd         \$0x4e,$Xl,$Xm
    723723        xorps           $Xhn,$Xhi
    724724         pxor           $Xl,$Xm
    725725         pshufb         $T3,$Xln
    726726        movups          0x20($Htbl),$HK
    727727        xorps           $Xmn,$T1
    728728         pclmulqdq      \$0x00,$Hkey,$Xl
    729          pshufd         \$0b01001110,$Xln,$Xmn
     729         pshufd         \$0x4e,$Xln,$Xmn
    730730
    731731        pxor            $Xi,$T1                 # aggregated Karatsuba post-processing
    732732         movdqa         $Xln,$Xhn
     
    770770
    771771         movdqa         $Xl,$Xh
    772772         pxor           $Xm,$Xmn
    773          pshufd         \$0b01001110,$Xl,$Xm
     773         pshufd         \$0x4e,$Xl,$Xm
    774774        pxor            $T2,$Xi                 #
    775775        pxor            $T1,$Xhi
    776776         pxor           $Xl,$Xm
     
    780780        movdqa          $Xi,$Xhi
    781781         pclmulqdq      \$0x11,$Hkey3,$Xh
    782782         xorps          $Xl,$Xln
    783         pshufd          \$0b01001110,$Xi,$T1
     783        pshufd          \$0x4e,$Xi,$T1
    784784        pxor            $Xi,$T1
    785785
    786786         pclmulqdq      \$0x00,$HK,$Xm
     
    832832        pxor            $T1,$Xi                 # Ii+Xi
    833833
    834834        movdqa          $Xln,$Xhn
    835         pshufd          \$0b01001110,$Xln,$Xmn
     835        pshufd          \$0x4e,$Xln,$Xmn
    836836        pxor            $Xln,$Xmn
    837837        pclmulqdq       \$0x00,$Hkey,$Xln
    838838        pclmulqdq       \$0x11,$Hkey,$Xhn
     
    849849.Lmod_loop:
    850850        movdqa          $Xi,$Xhi
    851851        movdqa          $Xmn,$T1
    852         pshufd          \$0b01001110,$Xi,$Xmn   #
     852        pshufd          \$0x4e,$Xi,$Xmn #
    853853        pxor            $Xi,$Xmn                #
    854854
    855855        pclmulqdq       \$0x00,$Hkey2,$Xi
     
    887887          pslldq        \$8,$Xi
    888888          psrldq        \$8,$T1                 #       
    889889          pxor          $T2,$Xi
    890         pshufd          \$0b01001110,$Xhn,$Xmn
     890        pshufd          \$0x4e,$Xhn,$Xmn
    891891          pxor          $T1,$Xhi                #
    892892        pxor            $Xhn,$Xmn               #
    893893
     
    909909.Leven_tail:
    910910         movdqa         $Xi,$Xhi
    911911         movdqa         $Xmn,$T1
    912          pshufd         \$0b01001110,$Xi,$Xmn   #
     912         pshufd         \$0x4e,$Xi,$Xmn #
    913913         pxor           $Xi,$Xmn                #
    914914
    915915        pclmulqdq       \$0x00,$Hkey2,$Xi
     
    984984        vzeroupper
    985985
    986986        vmovdqu         ($Xip),$Hkey
    987         vpshufd         \$0b01001110,$Hkey,$Hkey        # dword swap
     987        vpshufd         \$0x4e,$Hkey,$Hkey      # dword swap
    988988
    989989        # <<1 twist
    990         vpshufd         \$0b11111111,$Hkey,$T2  # broadcast uppermost dword
     990        vpshufd         \$0xff,$Hkey,$T2        # broadcast uppermost dword
    991991        vpsrlq          \$63,$Hkey,$T1
    992992        vpsllq          \$1,$Hkey,$Hkey
    993993        vpxor           $T3,$T3,$T3             #
     
    10751075        &clmul64x64_avx ($Xhi,$Xi,$Hkey,$HK);   # calculate H^2,4,6,8
    10761076        &reduction_avx  ($Xhi,$Xi);
    10771077$code.=<<___;
    1078         vpshufd         \$0b01001110,$T3,$T1
    1079         vpshufd         \$0b01001110,$Xi,$T2
     1078        vpshufd         \$0x4e,$T3,$T1
     1079        vpshufd         \$0x4e,$Xi,$T2
    10801080        vpxor           $T3,$T1,$T1             # Karatsuba pre-processing
    10811081        vmovdqu         $T3,0x00($Htbl)         # save H^1,3,5,7
    10821082        vpxor           $Xi,$T2,$T2             # Karatsuba pre-processing