Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: third_party/boringssl/linux-x86_64/crypto/sha/sha256-x86_64.S

Issue 1924693003: Rolls BoringSSL forward (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #if defined(__x86_64__) 1 #if defined(__x86_64__)
2 .text 2 .text
3 3
4 .extern OPENSSL_ia32cap_P 4 .extern OPENSSL_ia32cap_P
5 .hidden OPENSSL_ia32cap_P 5 .hidden OPENSSL_ia32cap_P
6 .globl sha256_block_data_order 6 .globl sha256_block_data_order
7 .hidden sha256_block_data_order 7 .hidden sha256_block_data_order
8 .type sha256_block_data_order,@function 8 .type sha256_block_data_order,@function
9 .align 16 9 .align 16
10 sha256_block_data_order: 10 sha256_block_data_order:
11 leaq OPENSSL_ia32cap_P(%rip),%r11 11 leaq OPENSSL_ia32cap_P(%rip),%r11
12 movl 0(%r11),%r9d 12 movl 0(%r11),%r9d
13 movl 4(%r11),%r10d 13 movl 4(%r11),%r10d
14 movl 8(%r11),%r11d 14 movl 8(%r11),%r11d
15 andl $1073741824,%r9d
16 andl $268435968,%r10d
17 orl %r9d,%r10d
18 cmpl $1342177792,%r10d
19 je .Lavx_shortcut
15 testl $512,%r10d 20 testl $512,%r10d
16 jnz .Lssse3_shortcut 21 jnz .Lssse3_shortcut
17 pushq %rbx 22 pushq %rbx
18 pushq %rbp 23 pushq %rbp
19 pushq %r12 24 pushq %r12
20 pushq %r13 25 pushq %r13
21 pushq %r14 26 pushq %r14
22 pushq %r15 27 pushq %r15
23 movq %rsp,%r11 28 movq %rsp,%r11
24 shlq $4,%rdx 29 shlq $4,%rdx
(...skipping 2809 matching lines...) Expand 10 before | Expand all | Expand 10 after
2834 movq (%rsi),%r15 2839 movq (%rsi),%r15
2835 movq 8(%rsi),%r14 2840 movq 8(%rsi),%r14
2836 movq 16(%rsi),%r13 2841 movq 16(%rsi),%r13
2837 movq 24(%rsi),%r12 2842 movq 24(%rsi),%r12
2838 movq 32(%rsi),%rbp 2843 movq 32(%rsi),%rbp
2839 movq 40(%rsi),%rbx 2844 movq 40(%rsi),%rbx
2840 leaq 48(%rsi),%rsp 2845 leaq 48(%rsi),%rsp
2841 .Lepilogue_ssse3: 2846 .Lepilogue_ssse3:
2842 .byte 0xf3,0xc3 2847 .byte 0xf3,0xc3
2843 .size sha256_block_data_order_ssse3,.-sha256_block_data_order_ssse3 2848 .size sha256_block_data_order_ssse3,.-sha256_block_data_order_ssse3
2849 .type sha256_block_data_order_avx,@function
2850 .align 64
2851 sha256_block_data_order_avx:
2852 .Lavx_shortcut:
2853 pushq %rbx
2854 pushq %rbp
2855 pushq %r12
2856 pushq %r13
2857 pushq %r14
2858 pushq %r15
2859 movq %rsp,%r11
2860 shlq $4,%rdx
2861 subq $96,%rsp
2862 leaq (%rsi,%rdx,4),%rdx
2863 andq $-64,%rsp
2864 movq %rdi,64+0(%rsp)
2865 movq %rsi,64+8(%rsp)
2866 movq %rdx,64+16(%rsp)
2867 movq %r11,64+24(%rsp)
2868 .Lprologue_avx:
2869
2870 vzeroupper
2871 movl 0(%rdi),%eax
2872 movl 4(%rdi),%ebx
2873 movl 8(%rdi),%ecx
2874 movl 12(%rdi),%edx
2875 movl 16(%rdi),%r8d
2876 movl 20(%rdi),%r9d
2877 movl 24(%rdi),%r10d
2878 movl 28(%rdi),%r11d
2879 vmovdqa K256+512+32(%rip),%xmm8
2880 vmovdqa K256+512+64(%rip),%xmm9
2881 jmp .Lloop_avx
2882 .align 16
2883 .Lloop_avx:
2884 vmovdqa K256+512(%rip),%xmm7
2885 vmovdqu 0(%rsi),%xmm0
2886 vmovdqu 16(%rsi),%xmm1
2887 vmovdqu 32(%rsi),%xmm2
2888 vmovdqu 48(%rsi),%xmm3
2889 vpshufb %xmm7,%xmm0,%xmm0
2890 leaq K256(%rip),%rbp
2891 vpshufb %xmm7,%xmm1,%xmm1
2892 vpshufb %xmm7,%xmm2,%xmm2
2893 vpaddd 0(%rbp),%xmm0,%xmm4
2894 vpshufb %xmm7,%xmm3,%xmm3
2895 vpaddd 32(%rbp),%xmm1,%xmm5
2896 vpaddd 64(%rbp),%xmm2,%xmm6
2897 vpaddd 96(%rbp),%xmm3,%xmm7
2898 vmovdqa %xmm4,0(%rsp)
2899 movl %eax,%r14d
2900 vmovdqa %xmm5,16(%rsp)
2901 movl %ebx,%edi
2902 vmovdqa %xmm6,32(%rsp)
2903 xorl %ecx,%edi
2904 vmovdqa %xmm7,48(%rsp)
2905 movl %r8d,%r13d
2906 jmp .Lavx_00_47
2907
2908 .align 16
2909 .Lavx_00_47:
2910 subq $-128,%rbp
2911 vpalignr $4,%xmm0,%xmm1,%xmm4
2912 shrdl $14,%r13d,%r13d
2913 movl %r14d,%eax
2914 movl %r9d,%r12d
2915 vpalignr $4,%xmm2,%xmm3,%xmm7
2916 shrdl $9,%r14d,%r14d
2917 xorl %r8d,%r13d
2918 xorl %r10d,%r12d
2919 vpsrld $7,%xmm4,%xmm6
2920 shrdl $5,%r13d,%r13d
2921 xorl %eax,%r14d
2922 andl %r8d,%r12d
2923 vpaddd %xmm7,%xmm0,%xmm0
2924 xorl %r8d,%r13d
2925 addl 0(%rsp),%r11d
2926 movl %eax,%r15d
2927 vpsrld $3,%xmm4,%xmm7
2928 xorl %r10d,%r12d
2929 shrdl $11,%r14d,%r14d
2930 xorl %ebx,%r15d
2931 vpslld $14,%xmm4,%xmm5
2932 addl %r12d,%r11d
2933 shrdl $6,%r13d,%r13d
2934 andl %r15d,%edi
2935 vpxor %xmm6,%xmm7,%xmm4
2936 xorl %eax,%r14d
2937 addl %r13d,%r11d
2938 xorl %ebx,%edi
2939 vpshufd $250,%xmm3,%xmm7
2940 shrdl $2,%r14d,%r14d
2941 addl %r11d,%edx
2942 addl %edi,%r11d
2943 vpsrld $11,%xmm6,%xmm6
2944 movl %edx,%r13d
2945 addl %r11d,%r14d
2946 shrdl $14,%r13d,%r13d
2947 vpxor %xmm5,%xmm4,%xmm4
2948 movl %r14d,%r11d
2949 movl %r8d,%r12d
2950 shrdl $9,%r14d,%r14d
2951 vpslld $11,%xmm5,%xmm5
2952 xorl %edx,%r13d
2953 xorl %r9d,%r12d
2954 shrdl $5,%r13d,%r13d
2955 vpxor %xmm6,%xmm4,%xmm4
2956 xorl %r11d,%r14d
2957 andl %edx,%r12d
2958 xorl %edx,%r13d
2959 vpsrld $10,%xmm7,%xmm6
2960 addl 4(%rsp),%r10d
2961 movl %r11d,%edi
2962 xorl %r9d,%r12d
2963 vpxor %xmm5,%xmm4,%xmm4
2964 shrdl $11,%r14d,%r14d
2965 xorl %eax,%edi
2966 addl %r12d,%r10d
2967 vpsrlq $17,%xmm7,%xmm7
2968 shrdl $6,%r13d,%r13d
2969 andl %edi,%r15d
2970 xorl %r11d,%r14d
2971 vpaddd %xmm4,%xmm0,%xmm0
2972 addl %r13d,%r10d
2973 xorl %eax,%r15d
2974 shrdl $2,%r14d,%r14d
2975 vpxor %xmm7,%xmm6,%xmm6
2976 addl %r10d,%ecx
2977 addl %r15d,%r10d
2978 movl %ecx,%r13d
2979 vpsrlq $2,%xmm7,%xmm7
2980 addl %r10d,%r14d
2981 shrdl $14,%r13d,%r13d
2982 movl %r14d,%r10d
2983 vpxor %xmm7,%xmm6,%xmm6
2984 movl %edx,%r12d
2985 shrdl $9,%r14d,%r14d
2986 xorl %ecx,%r13d
2987 vpshufb %xmm8,%xmm6,%xmm6
2988 xorl %r8d,%r12d
2989 shrdl $5,%r13d,%r13d
2990 xorl %r10d,%r14d
2991 vpaddd %xmm6,%xmm0,%xmm0
2992 andl %ecx,%r12d
2993 xorl %ecx,%r13d
2994 addl 8(%rsp),%r9d
2995 vpshufd $80,%xmm0,%xmm7
2996 movl %r10d,%r15d
2997 xorl %r8d,%r12d
2998 shrdl $11,%r14d,%r14d
2999 vpsrld $10,%xmm7,%xmm6
3000 xorl %r11d,%r15d
3001 addl %r12d,%r9d
3002 shrdl $6,%r13d,%r13d
3003 vpsrlq $17,%xmm7,%xmm7
3004 andl %r15d,%edi
3005 xorl %r10d,%r14d
3006 addl %r13d,%r9d
3007 vpxor %xmm7,%xmm6,%xmm6
3008 xorl %r11d,%edi
3009 shrdl $2,%r14d,%r14d
3010 addl %r9d,%ebx
3011 vpsrlq $2,%xmm7,%xmm7
3012 addl %edi,%r9d
3013 movl %ebx,%r13d
3014 addl %r9d,%r14d
3015 vpxor %xmm7,%xmm6,%xmm6
3016 shrdl $14,%r13d,%r13d
3017 movl %r14d,%r9d
3018 movl %ecx,%r12d
3019 vpshufb %xmm9,%xmm6,%xmm6
3020 shrdl $9,%r14d,%r14d
3021 xorl %ebx,%r13d
3022 xorl %edx,%r12d
3023 vpaddd %xmm6,%xmm0,%xmm0
3024 shrdl $5,%r13d,%r13d
3025 xorl %r9d,%r14d
3026 andl %ebx,%r12d
3027 vpaddd 0(%rbp),%xmm0,%xmm6
3028 xorl %ebx,%r13d
3029 addl 12(%rsp),%r8d
3030 movl %r9d,%edi
3031 xorl %edx,%r12d
3032 shrdl $11,%r14d,%r14d
3033 xorl %r10d,%edi
3034 addl %r12d,%r8d
3035 shrdl $6,%r13d,%r13d
3036 andl %edi,%r15d
3037 xorl %r9d,%r14d
3038 addl %r13d,%r8d
3039 xorl %r10d,%r15d
3040 shrdl $2,%r14d,%r14d
3041 addl %r8d,%eax
3042 addl %r15d,%r8d
3043 movl %eax,%r13d
3044 addl %r8d,%r14d
3045 vmovdqa %xmm6,0(%rsp)
3046 vpalignr $4,%xmm1,%xmm2,%xmm4
3047 shrdl $14,%r13d,%r13d
3048 movl %r14d,%r8d
3049 movl %ebx,%r12d
3050 vpalignr $4,%xmm3,%xmm0,%xmm7
3051 shrdl $9,%r14d,%r14d
3052 xorl %eax,%r13d
3053 xorl %ecx,%r12d
3054 vpsrld $7,%xmm4,%xmm6
3055 shrdl $5,%r13d,%r13d
3056 xorl %r8d,%r14d
3057 andl %eax,%r12d
3058 vpaddd %xmm7,%xmm1,%xmm1
3059 xorl %eax,%r13d
3060 addl 16(%rsp),%edx
3061 movl %r8d,%r15d
3062 vpsrld $3,%xmm4,%xmm7
3063 xorl %ecx,%r12d
3064 shrdl $11,%r14d,%r14d
3065 xorl %r9d,%r15d
3066 vpslld $14,%xmm4,%xmm5
3067 addl %r12d,%edx
3068 shrdl $6,%r13d,%r13d
3069 andl %r15d,%edi
3070 vpxor %xmm6,%xmm7,%xmm4
3071 xorl %r8d,%r14d
3072 addl %r13d,%edx
3073 xorl %r9d,%edi
3074 vpshufd $250,%xmm0,%xmm7
3075 shrdl $2,%r14d,%r14d
3076 addl %edx,%r11d
3077 addl %edi,%edx
3078 vpsrld $11,%xmm6,%xmm6
3079 movl %r11d,%r13d
3080 addl %edx,%r14d
3081 shrdl $14,%r13d,%r13d
3082 vpxor %xmm5,%xmm4,%xmm4
3083 movl %r14d,%edx
3084 movl %eax,%r12d
3085 shrdl $9,%r14d,%r14d
3086 vpslld $11,%xmm5,%xmm5
3087 xorl %r11d,%r13d
3088 xorl %ebx,%r12d
3089 shrdl $5,%r13d,%r13d
3090 vpxor %xmm6,%xmm4,%xmm4
3091 xorl %edx,%r14d
3092 andl %r11d,%r12d
3093 xorl %r11d,%r13d
3094 vpsrld $10,%xmm7,%xmm6
3095 addl 20(%rsp),%ecx
3096 movl %edx,%edi
3097 xorl %ebx,%r12d
3098 vpxor %xmm5,%xmm4,%xmm4
3099 shrdl $11,%r14d,%r14d
3100 xorl %r8d,%edi
3101 addl %r12d,%ecx
3102 vpsrlq $17,%xmm7,%xmm7
3103 shrdl $6,%r13d,%r13d
3104 andl %edi,%r15d
3105 xorl %edx,%r14d
3106 vpaddd %xmm4,%xmm1,%xmm1
3107 addl %r13d,%ecx
3108 xorl %r8d,%r15d
3109 shrdl $2,%r14d,%r14d
3110 vpxor %xmm7,%xmm6,%xmm6
3111 addl %ecx,%r10d
3112 addl %r15d,%ecx
3113 movl %r10d,%r13d
3114 vpsrlq $2,%xmm7,%xmm7
3115 addl %ecx,%r14d
3116 shrdl $14,%r13d,%r13d
3117 movl %r14d,%ecx
3118 vpxor %xmm7,%xmm6,%xmm6
3119 movl %r11d,%r12d
3120 shrdl $9,%r14d,%r14d
3121 xorl %r10d,%r13d
3122 vpshufb %xmm8,%xmm6,%xmm6
3123 xorl %eax,%r12d
3124 shrdl $5,%r13d,%r13d
3125 xorl %ecx,%r14d
3126 vpaddd %xmm6,%xmm1,%xmm1
3127 andl %r10d,%r12d
3128 xorl %r10d,%r13d
3129 addl 24(%rsp),%ebx
3130 vpshufd $80,%xmm1,%xmm7
3131 movl %ecx,%r15d
3132 xorl %eax,%r12d
3133 shrdl $11,%r14d,%r14d
3134 vpsrld $10,%xmm7,%xmm6
3135 xorl %edx,%r15d
3136 addl %r12d,%ebx
3137 shrdl $6,%r13d,%r13d
3138 vpsrlq $17,%xmm7,%xmm7
3139 andl %r15d,%edi
3140 xorl %ecx,%r14d
3141 addl %r13d,%ebx
3142 vpxor %xmm7,%xmm6,%xmm6
3143 xorl %edx,%edi
3144 shrdl $2,%r14d,%r14d
3145 addl %ebx,%r9d
3146 vpsrlq $2,%xmm7,%xmm7
3147 addl %edi,%ebx
3148 movl %r9d,%r13d
3149 addl %ebx,%r14d
3150 vpxor %xmm7,%xmm6,%xmm6
3151 shrdl $14,%r13d,%r13d
3152 movl %r14d,%ebx
3153 movl %r10d,%r12d
3154 vpshufb %xmm9,%xmm6,%xmm6
3155 shrdl $9,%r14d,%r14d
3156 xorl %r9d,%r13d
3157 xorl %r11d,%r12d
3158 vpaddd %xmm6,%xmm1,%xmm1
3159 shrdl $5,%r13d,%r13d
3160 xorl %ebx,%r14d
3161 andl %r9d,%r12d
3162 vpaddd 32(%rbp),%xmm1,%xmm6
3163 xorl %r9d,%r13d
3164 addl 28(%rsp),%eax
3165 movl %ebx,%edi
3166 xorl %r11d,%r12d
3167 shrdl $11,%r14d,%r14d
3168 xorl %ecx,%edi
3169 addl %r12d,%eax
3170 shrdl $6,%r13d,%r13d
3171 andl %edi,%r15d
3172 xorl %ebx,%r14d
3173 addl %r13d,%eax
3174 xorl %ecx,%r15d
3175 shrdl $2,%r14d,%r14d
3176 addl %eax,%r8d
3177 addl %r15d,%eax
3178 movl %r8d,%r13d
3179 addl %eax,%r14d
3180 vmovdqa %xmm6,16(%rsp)
3181 vpalignr $4,%xmm2,%xmm3,%xmm4
3182 shrdl $14,%r13d,%r13d
3183 movl %r14d,%eax
3184 movl %r9d,%r12d
3185 vpalignr $4,%xmm0,%xmm1,%xmm7
3186 shrdl $9,%r14d,%r14d
3187 xorl %r8d,%r13d
3188 xorl %r10d,%r12d
3189 vpsrld $7,%xmm4,%xmm6
3190 shrdl $5,%r13d,%r13d
3191 xorl %eax,%r14d
3192 andl %r8d,%r12d
3193 vpaddd %xmm7,%xmm2,%xmm2
3194 xorl %r8d,%r13d
3195 addl 32(%rsp),%r11d
3196 movl %eax,%r15d
3197 vpsrld $3,%xmm4,%xmm7
3198 xorl %r10d,%r12d
3199 shrdl $11,%r14d,%r14d
3200 xorl %ebx,%r15d
3201 vpslld $14,%xmm4,%xmm5
3202 addl %r12d,%r11d
3203 shrdl $6,%r13d,%r13d
3204 andl %r15d,%edi
3205 vpxor %xmm6,%xmm7,%xmm4
3206 xorl %eax,%r14d
3207 addl %r13d,%r11d
3208 xorl %ebx,%edi
3209 vpshufd $250,%xmm1,%xmm7
3210 shrdl $2,%r14d,%r14d
3211 addl %r11d,%edx
3212 addl %edi,%r11d
3213 vpsrld $11,%xmm6,%xmm6
3214 movl %edx,%r13d
3215 addl %r11d,%r14d
3216 shrdl $14,%r13d,%r13d
3217 vpxor %xmm5,%xmm4,%xmm4
3218 movl %r14d,%r11d
3219 movl %r8d,%r12d
3220 shrdl $9,%r14d,%r14d
3221 vpslld $11,%xmm5,%xmm5
3222 xorl %edx,%r13d
3223 xorl %r9d,%r12d
3224 shrdl $5,%r13d,%r13d
3225 vpxor %xmm6,%xmm4,%xmm4
3226 xorl %r11d,%r14d
3227 andl %edx,%r12d
3228 xorl %edx,%r13d
3229 vpsrld $10,%xmm7,%xmm6
3230 addl 36(%rsp),%r10d
3231 movl %r11d,%edi
3232 xorl %r9d,%r12d
3233 vpxor %xmm5,%xmm4,%xmm4
3234 shrdl $11,%r14d,%r14d
3235 xorl %eax,%edi
3236 addl %r12d,%r10d
3237 vpsrlq $17,%xmm7,%xmm7
3238 shrdl $6,%r13d,%r13d
3239 andl %edi,%r15d
3240 xorl %r11d,%r14d
3241 vpaddd %xmm4,%xmm2,%xmm2
3242 addl %r13d,%r10d
3243 xorl %eax,%r15d
3244 shrdl $2,%r14d,%r14d
3245 vpxor %xmm7,%xmm6,%xmm6
3246 addl %r10d,%ecx
3247 addl %r15d,%r10d
3248 movl %ecx,%r13d
3249 vpsrlq $2,%xmm7,%xmm7
3250 addl %r10d,%r14d
3251 shrdl $14,%r13d,%r13d
3252 movl %r14d,%r10d
3253 vpxor %xmm7,%xmm6,%xmm6
3254 movl %edx,%r12d
3255 shrdl $9,%r14d,%r14d
3256 xorl %ecx,%r13d
3257 vpshufb %xmm8,%xmm6,%xmm6
3258 xorl %r8d,%r12d
3259 shrdl $5,%r13d,%r13d
3260 xorl %r10d,%r14d
3261 vpaddd %xmm6,%xmm2,%xmm2
3262 andl %ecx,%r12d
3263 xorl %ecx,%r13d
3264 addl 40(%rsp),%r9d
3265 vpshufd $80,%xmm2,%xmm7
3266 movl %r10d,%r15d
3267 xorl %r8d,%r12d
3268 shrdl $11,%r14d,%r14d
3269 vpsrld $10,%xmm7,%xmm6
3270 xorl %r11d,%r15d
3271 addl %r12d,%r9d
3272 shrdl $6,%r13d,%r13d
3273 vpsrlq $17,%xmm7,%xmm7
3274 andl %r15d,%edi
3275 xorl %r10d,%r14d
3276 addl %r13d,%r9d
3277 vpxor %xmm7,%xmm6,%xmm6
3278 xorl %r11d,%edi
3279 shrdl $2,%r14d,%r14d
3280 addl %r9d,%ebx
3281 vpsrlq $2,%xmm7,%xmm7
3282 addl %edi,%r9d
3283 movl %ebx,%r13d
3284 addl %r9d,%r14d
3285 vpxor %xmm7,%xmm6,%xmm6
3286 shrdl $14,%r13d,%r13d
3287 movl %r14d,%r9d
3288 movl %ecx,%r12d
3289 vpshufb %xmm9,%xmm6,%xmm6
3290 shrdl $9,%r14d,%r14d
3291 xorl %ebx,%r13d
3292 xorl %edx,%r12d
3293 vpaddd %xmm6,%xmm2,%xmm2
3294 shrdl $5,%r13d,%r13d
3295 xorl %r9d,%r14d
3296 andl %ebx,%r12d
3297 vpaddd 64(%rbp),%xmm2,%xmm6
3298 xorl %ebx,%r13d
3299 addl 44(%rsp),%r8d
3300 movl %r9d,%edi
3301 xorl %edx,%r12d
3302 shrdl $11,%r14d,%r14d
3303 xorl %r10d,%edi
3304 addl %r12d,%r8d
3305 shrdl $6,%r13d,%r13d
3306 andl %edi,%r15d
3307 xorl %r9d,%r14d
3308 addl %r13d,%r8d
3309 xorl %r10d,%r15d
3310 shrdl $2,%r14d,%r14d
3311 addl %r8d,%eax
3312 addl %r15d,%r8d
3313 movl %eax,%r13d
3314 addl %r8d,%r14d
3315 vmovdqa %xmm6,32(%rsp)
3316 vpalignr $4,%xmm3,%xmm0,%xmm4
3317 shrdl $14,%r13d,%r13d
3318 movl %r14d,%r8d
3319 movl %ebx,%r12d
3320 vpalignr $4,%xmm1,%xmm2,%xmm7
3321 shrdl $9,%r14d,%r14d
3322 xorl %eax,%r13d
3323 xorl %ecx,%r12d
3324 vpsrld $7,%xmm4,%xmm6
3325 shrdl $5,%r13d,%r13d
3326 xorl %r8d,%r14d
3327 andl %eax,%r12d
3328 vpaddd %xmm7,%xmm3,%xmm3
3329 xorl %eax,%r13d
3330 addl 48(%rsp),%edx
3331 movl %r8d,%r15d
3332 vpsrld $3,%xmm4,%xmm7
3333 xorl %ecx,%r12d
3334 shrdl $11,%r14d,%r14d
3335 xorl %r9d,%r15d
3336 vpslld $14,%xmm4,%xmm5
3337 addl %r12d,%edx
3338 shrdl $6,%r13d,%r13d
3339 andl %r15d,%edi
3340 vpxor %xmm6,%xmm7,%xmm4
3341 xorl %r8d,%r14d
3342 addl %r13d,%edx
3343 xorl %r9d,%edi
3344 vpshufd $250,%xmm2,%xmm7
3345 shrdl $2,%r14d,%r14d
3346 addl %edx,%r11d
3347 addl %edi,%edx
3348 vpsrld $11,%xmm6,%xmm6
3349 movl %r11d,%r13d
3350 addl %edx,%r14d
3351 shrdl $14,%r13d,%r13d
3352 vpxor %xmm5,%xmm4,%xmm4
3353 movl %r14d,%edx
3354 movl %eax,%r12d
3355 shrdl $9,%r14d,%r14d
3356 vpslld $11,%xmm5,%xmm5
3357 xorl %r11d,%r13d
3358 xorl %ebx,%r12d
3359 shrdl $5,%r13d,%r13d
3360 vpxor %xmm6,%xmm4,%xmm4
3361 xorl %edx,%r14d
3362 andl %r11d,%r12d
3363 xorl %r11d,%r13d
3364 vpsrld $10,%xmm7,%xmm6
3365 addl 52(%rsp),%ecx
3366 movl %edx,%edi
3367 xorl %ebx,%r12d
3368 vpxor %xmm5,%xmm4,%xmm4
3369 shrdl $11,%r14d,%r14d
3370 xorl %r8d,%edi
3371 addl %r12d,%ecx
3372 vpsrlq $17,%xmm7,%xmm7
3373 shrdl $6,%r13d,%r13d
3374 andl %edi,%r15d
3375 xorl %edx,%r14d
3376 vpaddd %xmm4,%xmm3,%xmm3
3377 addl %r13d,%ecx
3378 xorl %r8d,%r15d
3379 shrdl $2,%r14d,%r14d
3380 vpxor %xmm7,%xmm6,%xmm6
3381 addl %ecx,%r10d
3382 addl %r15d,%ecx
3383 movl %r10d,%r13d
3384 vpsrlq $2,%xmm7,%xmm7
3385 addl %ecx,%r14d
3386 shrdl $14,%r13d,%r13d
3387 movl %r14d,%ecx
3388 vpxor %xmm7,%xmm6,%xmm6
3389 movl %r11d,%r12d
3390 shrdl $9,%r14d,%r14d
3391 xorl %r10d,%r13d
3392 vpshufb %xmm8,%xmm6,%xmm6
3393 xorl %eax,%r12d
3394 shrdl $5,%r13d,%r13d
3395 xorl %ecx,%r14d
3396 vpaddd %xmm6,%xmm3,%xmm3
3397 andl %r10d,%r12d
3398 xorl %r10d,%r13d
3399 addl 56(%rsp),%ebx
3400 vpshufd $80,%xmm3,%xmm7
3401 movl %ecx,%r15d
3402 xorl %eax,%r12d
3403 shrdl $11,%r14d,%r14d
3404 vpsrld $10,%xmm7,%xmm6
3405 xorl %edx,%r15d
3406 addl %r12d,%ebx
3407 shrdl $6,%r13d,%r13d
3408 vpsrlq $17,%xmm7,%xmm7
3409 andl %r15d,%edi
3410 xorl %ecx,%r14d
3411 addl %r13d,%ebx
3412 vpxor %xmm7,%xmm6,%xmm6
3413 xorl %edx,%edi
3414 shrdl $2,%r14d,%r14d
3415 addl %ebx,%r9d
3416 vpsrlq $2,%xmm7,%xmm7
3417 addl %edi,%ebx
3418 movl %r9d,%r13d
3419 addl %ebx,%r14d
3420 vpxor %xmm7,%xmm6,%xmm6
3421 shrdl $14,%r13d,%r13d
3422 movl %r14d,%ebx
3423 movl %r10d,%r12d
3424 vpshufb %xmm9,%xmm6,%xmm6
3425 shrdl $9,%r14d,%r14d
3426 xorl %r9d,%r13d
3427 xorl %r11d,%r12d
3428 vpaddd %xmm6,%xmm3,%xmm3
3429 shrdl $5,%r13d,%r13d
3430 xorl %ebx,%r14d
3431 andl %r9d,%r12d
3432 vpaddd 96(%rbp),%xmm3,%xmm6
3433 xorl %r9d,%r13d
3434 addl 60(%rsp),%eax
3435 movl %ebx,%edi
3436 xorl %r11d,%r12d
3437 shrdl $11,%r14d,%r14d
3438 xorl %ecx,%edi
3439 addl %r12d,%eax
3440 shrdl $6,%r13d,%r13d
3441 andl %edi,%r15d
3442 xorl %ebx,%r14d
3443 addl %r13d,%eax
3444 xorl %ecx,%r15d
3445 shrdl $2,%r14d,%r14d
3446 addl %eax,%r8d
3447 addl %r15d,%eax
3448 movl %r8d,%r13d
3449 addl %eax,%r14d
3450 vmovdqa %xmm6,48(%rsp)
3451 cmpb $0,131(%rbp)
3452 jne .Lavx_00_47
3453 shrdl $14,%r13d,%r13d
3454 movl %r14d,%eax
3455 movl %r9d,%r12d
3456 shrdl $9,%r14d,%r14d
3457 xorl %r8d,%r13d
3458 xorl %r10d,%r12d
3459 shrdl $5,%r13d,%r13d
3460 xorl %eax,%r14d
3461 andl %r8d,%r12d
3462 xorl %r8d,%r13d
3463 addl 0(%rsp),%r11d
3464 movl %eax,%r15d
3465 xorl %r10d,%r12d
3466 shrdl $11,%r14d,%r14d
3467 xorl %ebx,%r15d
3468 addl %r12d,%r11d
3469 shrdl $6,%r13d,%r13d
3470 andl %r15d,%edi
3471 xorl %eax,%r14d
3472 addl %r13d,%r11d
3473 xorl %ebx,%edi
3474 shrdl $2,%r14d,%r14d
3475 addl %r11d,%edx
3476 addl %edi,%r11d
3477 movl %edx,%r13d
3478 addl %r11d,%r14d
3479 shrdl $14,%r13d,%r13d
3480 movl %r14d,%r11d
3481 movl %r8d,%r12d
3482 shrdl $9,%r14d,%r14d
3483 xorl %edx,%r13d
3484 xorl %r9d,%r12d
3485 shrdl $5,%r13d,%r13d
3486 xorl %r11d,%r14d
3487 andl %edx,%r12d
3488 xorl %edx,%r13d
3489 addl 4(%rsp),%r10d
3490 movl %r11d,%edi
3491 xorl %r9d,%r12d
3492 shrdl $11,%r14d,%r14d
3493 xorl %eax,%edi
3494 addl %r12d,%r10d
3495 shrdl $6,%r13d,%r13d
3496 andl %edi,%r15d
3497 xorl %r11d,%r14d
3498 addl %r13d,%r10d
3499 xorl %eax,%r15d
3500 shrdl $2,%r14d,%r14d
3501 addl %r10d,%ecx
3502 addl %r15d,%r10d
3503 movl %ecx,%r13d
3504 addl %r10d,%r14d
3505 shrdl $14,%r13d,%r13d
3506 movl %r14d,%r10d
3507 movl %edx,%r12d
3508 shrdl $9,%r14d,%r14d
3509 xorl %ecx,%r13d
3510 xorl %r8d,%r12d
3511 shrdl $5,%r13d,%r13d
3512 xorl %r10d,%r14d
3513 andl %ecx,%r12d
3514 xorl %ecx,%r13d
3515 addl 8(%rsp),%r9d
3516 movl %r10d,%r15d
3517 xorl %r8d,%r12d
3518 shrdl $11,%r14d,%r14d
3519 xorl %r11d,%r15d
3520 addl %r12d,%r9d
3521 shrdl $6,%r13d,%r13d
3522 andl %r15d,%edi
3523 xorl %r10d,%r14d
3524 addl %r13d,%r9d
3525 xorl %r11d,%edi
3526 shrdl $2,%r14d,%r14d
3527 addl %r9d,%ebx
3528 addl %edi,%r9d
3529 movl %ebx,%r13d
3530 addl %r9d,%r14d
3531 shrdl $14,%r13d,%r13d
3532 movl %r14d,%r9d
3533 movl %ecx,%r12d
3534 shrdl $9,%r14d,%r14d
3535 xorl %ebx,%r13d
3536 xorl %edx,%r12d
3537 shrdl $5,%r13d,%r13d
3538 xorl %r9d,%r14d
3539 andl %ebx,%r12d
3540 xorl %ebx,%r13d
3541 addl 12(%rsp),%r8d
3542 movl %r9d,%edi
3543 xorl %edx,%r12d
3544 shrdl $11,%r14d,%r14d
3545 xorl %r10d,%edi
3546 addl %r12d,%r8d
3547 shrdl $6,%r13d,%r13d
3548 andl %edi,%r15d
3549 xorl %r9d,%r14d
3550 addl %r13d,%r8d
3551 xorl %r10d,%r15d
3552 shrdl $2,%r14d,%r14d
3553 addl %r8d,%eax
3554 addl %r15d,%r8d
3555 movl %eax,%r13d
3556 addl %r8d,%r14d
3557 shrdl $14,%r13d,%r13d
3558 movl %r14d,%r8d
3559 movl %ebx,%r12d
3560 shrdl $9,%r14d,%r14d
3561 xorl %eax,%r13d
3562 xorl %ecx,%r12d
3563 shrdl $5,%r13d,%r13d
3564 xorl %r8d,%r14d
3565 andl %eax,%r12d
3566 xorl %eax,%r13d
3567 addl 16(%rsp),%edx
3568 movl %r8d,%r15d
3569 xorl %ecx,%r12d
3570 shrdl $11,%r14d,%r14d
3571 xorl %r9d,%r15d
3572 addl %r12d,%edx
3573 shrdl $6,%r13d,%r13d
3574 andl %r15d,%edi
3575 xorl %r8d,%r14d
3576 addl %r13d,%edx
3577 xorl %r9d,%edi
3578 shrdl $2,%r14d,%r14d
3579 addl %edx,%r11d
3580 addl %edi,%edx
3581 movl %r11d,%r13d
3582 addl %edx,%r14d
3583 shrdl $14,%r13d,%r13d
3584 movl %r14d,%edx
3585 movl %eax,%r12d
3586 shrdl $9,%r14d,%r14d
3587 xorl %r11d,%r13d
3588 xorl %ebx,%r12d
3589 shrdl $5,%r13d,%r13d
3590 xorl %edx,%r14d
3591 andl %r11d,%r12d
3592 xorl %r11d,%r13d
3593 addl 20(%rsp),%ecx
3594 movl %edx,%edi
3595 xorl %ebx,%r12d
3596 shrdl $11,%r14d,%r14d
3597 xorl %r8d,%edi
3598 addl %r12d,%ecx
3599 shrdl $6,%r13d,%r13d
3600 andl %edi,%r15d
3601 xorl %edx,%r14d
3602 addl %r13d,%ecx
3603 xorl %r8d,%r15d
3604 shrdl $2,%r14d,%r14d
3605 addl %ecx,%r10d
3606 addl %r15d,%ecx
3607 movl %r10d,%r13d
3608 addl %ecx,%r14d
3609 shrdl $14,%r13d,%r13d
3610 movl %r14d,%ecx
3611 movl %r11d,%r12d
3612 shrdl $9,%r14d,%r14d
3613 xorl %r10d,%r13d
3614 xorl %eax,%r12d
3615 shrdl $5,%r13d,%r13d
3616 xorl %ecx,%r14d
3617 andl %r10d,%r12d
3618 xorl %r10d,%r13d
3619 addl 24(%rsp),%ebx
3620 movl %ecx,%r15d
3621 xorl %eax,%r12d
3622 shrdl $11,%r14d,%r14d
3623 xorl %edx,%r15d
3624 addl %r12d,%ebx
3625 shrdl $6,%r13d,%r13d
3626 andl %r15d,%edi
3627 xorl %ecx,%r14d
3628 addl %r13d,%ebx
3629 xorl %edx,%edi
3630 shrdl $2,%r14d,%r14d
3631 addl %ebx,%r9d
3632 addl %edi,%ebx
3633 movl %r9d,%r13d
3634 addl %ebx,%r14d
3635 shrdl $14,%r13d,%r13d
3636 movl %r14d,%ebx
3637 movl %r10d,%r12d
3638 shrdl $9,%r14d,%r14d
3639 xorl %r9d,%r13d
3640 xorl %r11d,%r12d
3641 shrdl $5,%r13d,%r13d
3642 xorl %ebx,%r14d
3643 andl %r9d,%r12d
3644 xorl %r9d,%r13d
3645 addl 28(%rsp),%eax
3646 movl %ebx,%edi
3647 xorl %r11d,%r12d
3648 shrdl $11,%r14d,%r14d
3649 xorl %ecx,%edi
3650 addl %r12d,%eax
3651 shrdl $6,%r13d,%r13d
3652 andl %edi,%r15d
3653 xorl %ebx,%r14d
3654 addl %r13d,%eax
3655 xorl %ecx,%r15d
3656 shrdl $2,%r14d,%r14d
3657 addl %eax,%r8d
3658 addl %r15d,%eax
3659 movl %r8d,%r13d
3660 addl %eax,%r14d
3661 shrdl $14,%r13d,%r13d
3662 movl %r14d,%eax
3663 movl %r9d,%r12d
3664 shrdl $9,%r14d,%r14d
3665 xorl %r8d,%r13d
3666 xorl %r10d,%r12d
3667 shrdl $5,%r13d,%r13d
3668 xorl %eax,%r14d
3669 andl %r8d,%r12d
3670 xorl %r8d,%r13d
3671 addl 32(%rsp),%r11d
3672 movl %eax,%r15d
3673 xorl %r10d,%r12d
3674 shrdl $11,%r14d,%r14d
3675 xorl %ebx,%r15d
3676 addl %r12d,%r11d
3677 shrdl $6,%r13d,%r13d
3678 andl %r15d,%edi
3679 xorl %eax,%r14d
3680 addl %r13d,%r11d
3681 xorl %ebx,%edi
3682 shrdl $2,%r14d,%r14d
3683 addl %r11d,%edx
3684 addl %edi,%r11d
3685 movl %edx,%r13d
3686 addl %r11d,%r14d
3687 shrdl $14,%r13d,%r13d
3688 movl %r14d,%r11d
3689 movl %r8d,%r12d
3690 shrdl $9,%r14d,%r14d
3691 xorl %edx,%r13d
3692 xorl %r9d,%r12d
3693 shrdl $5,%r13d,%r13d
3694 xorl %r11d,%r14d
3695 andl %edx,%r12d
3696 xorl %edx,%r13d
3697 addl 36(%rsp),%r10d
3698 movl %r11d,%edi
3699 xorl %r9d,%r12d
3700 shrdl $11,%r14d,%r14d
3701 xorl %eax,%edi
3702 addl %r12d,%r10d
3703 shrdl $6,%r13d,%r13d
3704 andl %edi,%r15d
3705 xorl %r11d,%r14d
3706 addl %r13d,%r10d
3707 xorl %eax,%r15d
3708 shrdl $2,%r14d,%r14d
3709 addl %r10d,%ecx
3710 addl %r15d,%r10d
3711 movl %ecx,%r13d
3712 addl %r10d,%r14d
3713 shrdl $14,%r13d,%r13d
3714 movl %r14d,%r10d
3715 movl %edx,%r12d
3716 shrdl $9,%r14d,%r14d
3717 xorl %ecx,%r13d
3718 xorl %r8d,%r12d
3719 shrdl $5,%r13d,%r13d
3720 xorl %r10d,%r14d
3721 andl %ecx,%r12d
3722 xorl %ecx,%r13d
3723 addl 40(%rsp),%r9d
3724 movl %r10d,%r15d
3725 xorl %r8d,%r12d
3726 shrdl $11,%r14d,%r14d
3727 xorl %r11d,%r15d
3728 addl %r12d,%r9d
3729 shrdl $6,%r13d,%r13d
3730 andl %r15d,%edi
3731 xorl %r10d,%r14d
3732 addl %r13d,%r9d
3733 xorl %r11d,%edi
3734 shrdl $2,%r14d,%r14d
3735 addl %r9d,%ebx
3736 addl %edi,%r9d
3737 movl %ebx,%r13d
3738 addl %r9d,%r14d
3739 shrdl $14,%r13d,%r13d
3740 movl %r14d,%r9d
3741 movl %ecx,%r12d
3742 shrdl $9,%r14d,%r14d
3743 xorl %ebx,%r13d
3744 xorl %edx,%r12d
3745 shrdl $5,%r13d,%r13d
3746 xorl %r9d,%r14d
3747 andl %ebx,%r12d
3748 xorl %ebx,%r13d
3749 addl 44(%rsp),%r8d
3750 movl %r9d,%edi
3751 xorl %edx,%r12d
3752 shrdl $11,%r14d,%r14d
3753 xorl %r10d,%edi
3754 addl %r12d,%r8d
3755 shrdl $6,%r13d,%r13d
3756 andl %edi,%r15d
3757 xorl %r9d,%r14d
3758 addl %r13d,%r8d
3759 xorl %r10d,%r15d
3760 shrdl $2,%r14d,%r14d
3761 addl %r8d,%eax
3762 addl %r15d,%r8d
3763 movl %eax,%r13d
3764 addl %r8d,%r14d
3765 shrdl $14,%r13d,%r13d
3766 movl %r14d,%r8d
3767 movl %ebx,%r12d
3768 shrdl $9,%r14d,%r14d
3769 xorl %eax,%r13d
3770 xorl %ecx,%r12d
3771 shrdl $5,%r13d,%r13d
3772 xorl %r8d,%r14d
3773 andl %eax,%r12d
3774 xorl %eax,%r13d
3775 addl 48(%rsp),%edx
3776 movl %r8d,%r15d
3777 xorl %ecx,%r12d
3778 shrdl $11,%r14d,%r14d
3779 xorl %r9d,%r15d
3780 addl %r12d,%edx
3781 shrdl $6,%r13d,%r13d
3782 andl %r15d,%edi
3783 xorl %r8d,%r14d
3784 addl %r13d,%edx
3785 xorl %r9d,%edi
3786 shrdl $2,%r14d,%r14d
3787 addl %edx,%r11d
3788 addl %edi,%edx
3789 movl %r11d,%r13d
3790 addl %edx,%r14d
3791 shrdl $14,%r13d,%r13d
3792 movl %r14d,%edx
3793 movl %eax,%r12d
3794 shrdl $9,%r14d,%r14d
3795 xorl %r11d,%r13d
3796 xorl %ebx,%r12d
3797 shrdl $5,%r13d,%r13d
3798 xorl %edx,%r14d
3799 andl %r11d,%r12d
3800 xorl %r11d,%r13d
3801 addl 52(%rsp),%ecx
3802 movl %edx,%edi
3803 xorl %ebx,%r12d
3804 shrdl $11,%r14d,%r14d
3805 xorl %r8d,%edi
3806 addl %r12d,%ecx
3807 shrdl $6,%r13d,%r13d
3808 andl %edi,%r15d
3809 xorl %edx,%r14d
3810 addl %r13d,%ecx
3811 xorl %r8d,%r15d
3812 shrdl $2,%r14d,%r14d
3813 addl %ecx,%r10d
3814 addl %r15d,%ecx
3815 movl %r10d,%r13d
3816 addl %ecx,%r14d
3817 shrdl $14,%r13d,%r13d
3818 movl %r14d,%ecx
3819 movl %r11d,%r12d
3820 shrdl $9,%r14d,%r14d
3821 xorl %r10d,%r13d
3822 xorl %eax,%r12d
3823 shrdl $5,%r13d,%r13d
3824 xorl %ecx,%r14d
3825 andl %r10d,%r12d
3826 xorl %r10d,%r13d
3827 addl 56(%rsp),%ebx
3828 movl %ecx,%r15d
3829 xorl %eax,%r12d
3830 shrdl $11,%r14d,%r14d
3831 xorl %edx,%r15d
3832 addl %r12d,%ebx
3833 shrdl $6,%r13d,%r13d
3834 andl %r15d,%edi
3835 xorl %ecx,%r14d
3836 addl %r13d,%ebx
3837 xorl %edx,%edi
3838 shrdl $2,%r14d,%r14d
3839 addl %ebx,%r9d
3840 addl %edi,%ebx
3841 movl %r9d,%r13d
3842 addl %ebx,%r14d
3843 shrdl $14,%r13d,%r13d
3844 movl %r14d,%ebx
3845 movl %r10d,%r12d
3846 shrdl $9,%r14d,%r14d
3847 xorl %r9d,%r13d
3848 xorl %r11d,%r12d
3849 shrdl $5,%r13d,%r13d
3850 xorl %ebx,%r14d
3851 andl %r9d,%r12d
3852 xorl %r9d,%r13d
3853 addl 60(%rsp),%eax
3854 movl %ebx,%edi
3855 xorl %r11d,%r12d
3856 shrdl $11,%r14d,%r14d
3857 xorl %ecx,%edi
3858 addl %r12d,%eax
3859 shrdl $6,%r13d,%r13d
3860 andl %edi,%r15d
3861 xorl %ebx,%r14d
3862 addl %r13d,%eax
3863 xorl %ecx,%r15d
3864 shrdl $2,%r14d,%r14d
3865 addl %eax,%r8d
3866 addl %r15d,%eax
3867 movl %r8d,%r13d
3868 addl %eax,%r14d
3869 movq 64+0(%rsp),%rdi
3870 movl %r14d,%eax
3871
3872 addl 0(%rdi),%eax
3873 leaq 64(%rsi),%rsi
3874 addl 4(%rdi),%ebx
3875 addl 8(%rdi),%ecx
3876 addl 12(%rdi),%edx
3877 addl 16(%rdi),%r8d
3878 addl 20(%rdi),%r9d
3879 addl 24(%rdi),%r10d
3880 addl 28(%rdi),%r11d
3881
3882 cmpq 64+16(%rsp),%rsi
3883
3884 movl %eax,0(%rdi)
3885 movl %ebx,4(%rdi)
3886 movl %ecx,8(%rdi)
3887 movl %edx,12(%rdi)
3888 movl %r8d,16(%rdi)
3889 movl %r9d,20(%rdi)
3890 movl %r10d,24(%rdi)
3891 movl %r11d,28(%rdi)
3892 jb .Lloop_avx
3893
3894 movq 64+24(%rsp),%rsi
3895 vzeroupper
3896 movq (%rsi),%r15
3897 movq 8(%rsi),%r14
3898 movq 16(%rsi),%r13
3899 movq 24(%rsi),%r12
3900 movq 32(%rsi),%rbp
3901 movq 40(%rsi),%rbx
3902 leaq 48(%rsi),%rsp
3903 .Lepilogue_avx:
3904 .byte 0xf3,0xc3
3905 .size sha256_block_data_order_avx,.-sha256_block_data_order_avx
2844 #endif 3906 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698