| OLD | NEW |
| 1 default rel | 1 default rel |
| 2 %define XMMWORD | 2 %define XMMWORD |
| 3 %define YMMWORD | 3 %define YMMWORD |
| 4 %define ZMMWORD | 4 %define ZMMWORD |
| 5 section .text code align=64 | 5 section .text code align=64 |
| 6 | 6 |
| 7 | 7 |
| 8 EXTERN OPENSSL_ia32cap_P | 8 EXTERN OPENSSL_ia32cap_P |
| 9 | 9 |
| 10 ALIGN 64 | 10 ALIGN 64 |
| (...skipping 1073 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1084 | 1084 |
| 1085 | 1085 |
| 1086 | 1086 |
| 1087 | 1087 |
| 1088 | 1088 |
| 1089 | 1089 |
| 1090 | 1090 |
| 1091 | 1091 |
| 1092 | 1092 |
| 1093 | 1093 |
| 1094 » vbroadcasti128» ymm11,YMMWORD[$L$sigma] | 1094 » vbroadcasti128» ymm11,XMMWORD[$L$sigma] |
| 1095 » vbroadcasti128» ymm3,YMMWORD[rcx] | 1095 » vbroadcasti128» ymm3,XMMWORD[rcx] |
| 1096 » vbroadcasti128» ymm15,YMMWORD[16+rcx] | 1096 » vbroadcasti128» ymm15,XMMWORD[16+rcx] |
| 1097 » vbroadcasti128» ymm7,YMMWORD[r8] | 1097 » vbroadcasti128» ymm7,XMMWORD[r8] |
| 1098 lea rcx,[256+rsp] | 1098 lea rcx,[256+rsp] |
| 1099 lea rax,[512+rsp] | 1099 lea rax,[512+rsp] |
| 1100 lea r10,[$L$rot16] | 1100 lea r10,[$L$rot16] |
| 1101 lea r11,[$L$rot24] | 1101 lea r11,[$L$rot24] |
| 1102 | 1102 |
| 1103 vpshufd ymm8,ymm11,0x00 | 1103 vpshufd ymm8,ymm11,0x00 |
| 1104 vpshufd ymm9,ymm11,0x55 | 1104 vpshufd ymm9,ymm11,0x55 |
| 1105 vmovdqa YMMWORD[(128-256)+rcx],ymm8 | 1105 vmovdqa YMMWORD[(128-256)+rcx],ymm8 |
| 1106 vpshufd ymm10,ymm11,0xaa | 1106 vpshufd ymm10,ymm11,0xaa |
| 1107 vmovdqa YMMWORD[(160-256)+rcx],ymm9 | 1107 vmovdqa YMMWORD[(160-256)+rcx],ymm9 |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1154 vmovdqa ymm15,YMMWORD[((480-512))+rax] | 1154 vmovdqa ymm15,YMMWORD[((480-512))+rax] |
| 1155 vmovdqa ymm4,YMMWORD[((512-512))+rax] | 1155 vmovdqa ymm4,YMMWORD[((512-512))+rax] |
| 1156 vmovdqa ymm5,YMMWORD[((544-512))+rax] | 1156 vmovdqa ymm5,YMMWORD[((544-512))+rax] |
| 1157 vmovdqa ymm6,YMMWORD[((576-512))+rax] | 1157 vmovdqa ymm6,YMMWORD[((576-512))+rax] |
| 1158 vmovdqa ymm7,YMMWORD[((608-512))+rax] | 1158 vmovdqa ymm7,YMMWORD[((608-512))+rax] |
| 1159 vpaddd ymm4,ymm4,YMMWORD[$L$eight] | 1159 vpaddd ymm4,ymm4,YMMWORD[$L$eight] |
| 1160 | 1160 |
| 1161 $L$oop_enter8x: | 1161 $L$oop_enter8x: |
| 1162 vmovdqa YMMWORD[64+rsp],ymm14 | 1162 vmovdqa YMMWORD[64+rsp],ymm14 |
| 1163 vmovdqa YMMWORD[96+rsp],ymm15 | 1163 vmovdqa YMMWORD[96+rsp],ymm15 |
| 1164 » vbroadcasti128» ymm15,YMMWORD[r10] | 1164 » vbroadcasti128» ymm15,XMMWORD[r10] |
| 1165 vmovdqa YMMWORD[(512-512)+rax],ymm4 | 1165 vmovdqa YMMWORD[(512-512)+rax],ymm4 |
| 1166 mov eax,10 | 1166 mov eax,10 |
| 1167 jmp NEAR $L$oop8x | 1167 jmp NEAR $L$oop8x |
| 1168 | 1168 |
| 1169 ALIGN 32 | 1169 ALIGN 32 |
| 1170 $L$oop8x: | 1170 $L$oop8x: |
| 1171 vpaddd ymm8,ymm8,ymm0 | 1171 vpaddd ymm8,ymm8,ymm0 |
| 1172 vpxor ymm4,ymm8,ymm4 | 1172 vpxor ymm4,ymm8,ymm4 |
| 1173 vpshufb ymm4,ymm4,ymm15 | 1173 vpshufb ymm4,ymm4,ymm15 |
| 1174 vpaddd ymm9,ymm9,ymm1 | 1174 vpaddd ymm9,ymm9,ymm1 |
| 1175 vpxor ymm5,ymm9,ymm5 | 1175 vpxor ymm5,ymm9,ymm5 |
| 1176 vpshufb ymm5,ymm5,ymm15 | 1176 vpshufb ymm5,ymm5,ymm15 |
| 1177 vpaddd ymm12,ymm12,ymm4 | 1177 vpaddd ymm12,ymm12,ymm4 |
| 1178 vpxor ymm0,ymm12,ymm0 | 1178 vpxor ymm0,ymm12,ymm0 |
| 1179 vpslld ymm14,ymm0,12 | 1179 vpslld ymm14,ymm0,12 |
| 1180 vpsrld ymm0,ymm0,20 | 1180 vpsrld ymm0,ymm0,20 |
| 1181 vpor ymm0,ymm14,ymm0 | 1181 vpor ymm0,ymm14,ymm0 |
| 1182 » vbroadcasti128» ymm14,YMMWORD[r11] | 1182 » vbroadcasti128» ymm14,XMMWORD[r11] |
| 1183 vpaddd ymm13,ymm13,ymm5 | 1183 vpaddd ymm13,ymm13,ymm5 |
| 1184 vpxor ymm1,ymm13,ymm1 | 1184 vpxor ymm1,ymm13,ymm1 |
| 1185 vpslld ymm15,ymm1,12 | 1185 vpslld ymm15,ymm1,12 |
| 1186 vpsrld ymm1,ymm1,20 | 1186 vpsrld ymm1,ymm1,20 |
| 1187 vpor ymm1,ymm15,ymm1 | 1187 vpor ymm1,ymm15,ymm1 |
| 1188 vpaddd ymm8,ymm8,ymm0 | 1188 vpaddd ymm8,ymm8,ymm0 |
| 1189 vpxor ymm4,ymm8,ymm4 | 1189 vpxor ymm4,ymm8,ymm4 |
| 1190 vpshufb ymm4,ymm4,ymm14 | 1190 vpshufb ymm4,ymm4,ymm14 |
| 1191 vpaddd ymm9,ymm9,ymm1 | 1191 vpaddd ymm9,ymm9,ymm1 |
| 1192 vpxor ymm5,ymm9,ymm5 | 1192 vpxor ymm5,ymm9,ymm5 |
| 1193 vpshufb ymm5,ymm5,ymm14 | 1193 vpshufb ymm5,ymm5,ymm14 |
| 1194 vpaddd ymm12,ymm12,ymm4 | 1194 vpaddd ymm12,ymm12,ymm4 |
| 1195 vpxor ymm0,ymm12,ymm0 | 1195 vpxor ymm0,ymm12,ymm0 |
| 1196 vpslld ymm15,ymm0,7 | 1196 vpslld ymm15,ymm0,7 |
| 1197 vpsrld ymm0,ymm0,25 | 1197 vpsrld ymm0,ymm0,25 |
| 1198 vpor ymm0,ymm15,ymm0 | 1198 vpor ymm0,ymm15,ymm0 |
| 1199 » vbroadcasti128» ymm15,YMMWORD[r10] | 1199 » vbroadcasti128» ymm15,XMMWORD[r10] |
| 1200 vpaddd ymm13,ymm13,ymm5 | 1200 vpaddd ymm13,ymm13,ymm5 |
| 1201 vpxor ymm1,ymm13,ymm1 | 1201 vpxor ymm1,ymm13,ymm1 |
| 1202 vpslld ymm14,ymm1,7 | 1202 vpslld ymm14,ymm1,7 |
| 1203 vpsrld ymm1,ymm1,25 | 1203 vpsrld ymm1,ymm1,25 |
| 1204 vpor ymm1,ymm14,ymm1 | 1204 vpor ymm1,ymm14,ymm1 |
| 1205 vmovdqa YMMWORD[rsp],ymm12 | 1205 vmovdqa YMMWORD[rsp],ymm12 |
| 1206 vmovdqa YMMWORD[32+rsp],ymm13 | 1206 vmovdqa YMMWORD[32+rsp],ymm13 |
| 1207 vmovdqa ymm12,YMMWORD[64+rsp] | 1207 vmovdqa ymm12,YMMWORD[64+rsp] |
| 1208 vmovdqa ymm13,YMMWORD[96+rsp] | 1208 vmovdqa ymm13,YMMWORD[96+rsp] |
| 1209 vpaddd ymm10,ymm10,ymm2 | 1209 vpaddd ymm10,ymm10,ymm2 |
| 1210 vpxor ymm6,ymm10,ymm6 | 1210 vpxor ymm6,ymm10,ymm6 |
| 1211 vpshufb ymm6,ymm6,ymm15 | 1211 vpshufb ymm6,ymm6,ymm15 |
| 1212 vpaddd ymm11,ymm11,ymm3 | 1212 vpaddd ymm11,ymm11,ymm3 |
| 1213 vpxor ymm7,ymm11,ymm7 | 1213 vpxor ymm7,ymm11,ymm7 |
| 1214 vpshufb ymm7,ymm7,ymm15 | 1214 vpshufb ymm7,ymm7,ymm15 |
| 1215 vpaddd ymm12,ymm12,ymm6 | 1215 vpaddd ymm12,ymm12,ymm6 |
| 1216 vpxor ymm2,ymm12,ymm2 | 1216 vpxor ymm2,ymm12,ymm2 |
| 1217 vpslld ymm14,ymm2,12 | 1217 vpslld ymm14,ymm2,12 |
| 1218 vpsrld ymm2,ymm2,20 | 1218 vpsrld ymm2,ymm2,20 |
| 1219 vpor ymm2,ymm14,ymm2 | 1219 vpor ymm2,ymm14,ymm2 |
| 1220 » vbroadcasti128» ymm14,YMMWORD[r11] | 1220 » vbroadcasti128» ymm14,XMMWORD[r11] |
| 1221 vpaddd ymm13,ymm13,ymm7 | 1221 vpaddd ymm13,ymm13,ymm7 |
| 1222 vpxor ymm3,ymm13,ymm3 | 1222 vpxor ymm3,ymm13,ymm3 |
| 1223 vpslld ymm15,ymm3,12 | 1223 vpslld ymm15,ymm3,12 |
| 1224 vpsrld ymm3,ymm3,20 | 1224 vpsrld ymm3,ymm3,20 |
| 1225 vpor ymm3,ymm15,ymm3 | 1225 vpor ymm3,ymm15,ymm3 |
| 1226 vpaddd ymm10,ymm10,ymm2 | 1226 vpaddd ymm10,ymm10,ymm2 |
| 1227 vpxor ymm6,ymm10,ymm6 | 1227 vpxor ymm6,ymm10,ymm6 |
| 1228 vpshufb ymm6,ymm6,ymm14 | 1228 vpshufb ymm6,ymm6,ymm14 |
| 1229 vpaddd ymm11,ymm11,ymm3 | 1229 vpaddd ymm11,ymm11,ymm3 |
| 1230 vpxor ymm7,ymm11,ymm7 | 1230 vpxor ymm7,ymm11,ymm7 |
| 1231 vpshufb ymm7,ymm7,ymm14 | 1231 vpshufb ymm7,ymm7,ymm14 |
| 1232 vpaddd ymm12,ymm12,ymm6 | 1232 vpaddd ymm12,ymm12,ymm6 |
| 1233 vpxor ymm2,ymm12,ymm2 | 1233 vpxor ymm2,ymm12,ymm2 |
| 1234 vpslld ymm15,ymm2,7 | 1234 vpslld ymm15,ymm2,7 |
| 1235 vpsrld ymm2,ymm2,25 | 1235 vpsrld ymm2,ymm2,25 |
| 1236 vpor ymm2,ymm15,ymm2 | 1236 vpor ymm2,ymm15,ymm2 |
| 1237 » vbroadcasti128» ymm15,YMMWORD[r10] | 1237 » vbroadcasti128» ymm15,XMMWORD[r10] |
| 1238 vpaddd ymm13,ymm13,ymm7 | 1238 vpaddd ymm13,ymm13,ymm7 |
| 1239 vpxor ymm3,ymm13,ymm3 | 1239 vpxor ymm3,ymm13,ymm3 |
| 1240 vpslld ymm14,ymm3,7 | 1240 vpslld ymm14,ymm3,7 |
| 1241 vpsrld ymm3,ymm3,25 | 1241 vpsrld ymm3,ymm3,25 |
| 1242 vpor ymm3,ymm14,ymm3 | 1242 vpor ymm3,ymm14,ymm3 |
| 1243 vpaddd ymm8,ymm8,ymm1 | 1243 vpaddd ymm8,ymm8,ymm1 |
| 1244 vpxor ymm7,ymm8,ymm7 | 1244 vpxor ymm7,ymm8,ymm7 |
| 1245 vpshufb ymm7,ymm7,ymm15 | 1245 vpshufb ymm7,ymm7,ymm15 |
| 1246 vpaddd ymm9,ymm9,ymm2 | 1246 vpaddd ymm9,ymm9,ymm2 |
| 1247 vpxor ymm4,ymm9,ymm4 | 1247 vpxor ymm4,ymm9,ymm4 |
| 1248 vpshufb ymm4,ymm4,ymm15 | 1248 vpshufb ymm4,ymm4,ymm15 |
| 1249 vpaddd ymm12,ymm12,ymm7 | 1249 vpaddd ymm12,ymm12,ymm7 |
| 1250 vpxor ymm1,ymm12,ymm1 | 1250 vpxor ymm1,ymm12,ymm1 |
| 1251 vpslld ymm14,ymm1,12 | 1251 vpslld ymm14,ymm1,12 |
| 1252 vpsrld ymm1,ymm1,20 | 1252 vpsrld ymm1,ymm1,20 |
| 1253 vpor ymm1,ymm14,ymm1 | 1253 vpor ymm1,ymm14,ymm1 |
| 1254 » vbroadcasti128» ymm14,YMMWORD[r11] | 1254 » vbroadcasti128» ymm14,XMMWORD[r11] |
| 1255 vpaddd ymm13,ymm13,ymm4 | 1255 vpaddd ymm13,ymm13,ymm4 |
| 1256 vpxor ymm2,ymm13,ymm2 | 1256 vpxor ymm2,ymm13,ymm2 |
| 1257 vpslld ymm15,ymm2,12 | 1257 vpslld ymm15,ymm2,12 |
| 1258 vpsrld ymm2,ymm2,20 | 1258 vpsrld ymm2,ymm2,20 |
| 1259 vpor ymm2,ymm15,ymm2 | 1259 vpor ymm2,ymm15,ymm2 |
| 1260 vpaddd ymm8,ymm8,ymm1 | 1260 vpaddd ymm8,ymm8,ymm1 |
| 1261 vpxor ymm7,ymm8,ymm7 | 1261 vpxor ymm7,ymm8,ymm7 |
| 1262 vpshufb ymm7,ymm7,ymm14 | 1262 vpshufb ymm7,ymm7,ymm14 |
| 1263 vpaddd ymm9,ymm9,ymm2 | 1263 vpaddd ymm9,ymm9,ymm2 |
| 1264 vpxor ymm4,ymm9,ymm4 | 1264 vpxor ymm4,ymm9,ymm4 |
| 1265 vpshufb ymm4,ymm4,ymm14 | 1265 vpshufb ymm4,ymm4,ymm14 |
| 1266 vpaddd ymm12,ymm12,ymm7 | 1266 vpaddd ymm12,ymm12,ymm7 |
| 1267 vpxor ymm1,ymm12,ymm1 | 1267 vpxor ymm1,ymm12,ymm1 |
| 1268 vpslld ymm15,ymm1,7 | 1268 vpslld ymm15,ymm1,7 |
| 1269 vpsrld ymm1,ymm1,25 | 1269 vpsrld ymm1,ymm1,25 |
| 1270 vpor ymm1,ymm15,ymm1 | 1270 vpor ymm1,ymm15,ymm1 |
| 1271 » vbroadcasti128» ymm15,YMMWORD[r10] | 1271 » vbroadcasti128» ymm15,XMMWORD[r10] |
| 1272 vpaddd ymm13,ymm13,ymm4 | 1272 vpaddd ymm13,ymm13,ymm4 |
| 1273 vpxor ymm2,ymm13,ymm2 | 1273 vpxor ymm2,ymm13,ymm2 |
| 1274 vpslld ymm14,ymm2,7 | 1274 vpslld ymm14,ymm2,7 |
| 1275 vpsrld ymm2,ymm2,25 | 1275 vpsrld ymm2,ymm2,25 |
| 1276 vpor ymm2,ymm14,ymm2 | 1276 vpor ymm2,ymm14,ymm2 |
| 1277 vmovdqa YMMWORD[64+rsp],ymm12 | 1277 vmovdqa YMMWORD[64+rsp],ymm12 |
| 1278 vmovdqa YMMWORD[96+rsp],ymm13 | 1278 vmovdqa YMMWORD[96+rsp],ymm13 |
| 1279 vmovdqa ymm12,YMMWORD[rsp] | 1279 vmovdqa ymm12,YMMWORD[rsp] |
| 1280 vmovdqa ymm13,YMMWORD[32+rsp] | 1280 vmovdqa ymm13,YMMWORD[32+rsp] |
| 1281 vpaddd ymm10,ymm10,ymm3 | 1281 vpaddd ymm10,ymm10,ymm3 |
| 1282 vpxor ymm5,ymm10,ymm5 | 1282 vpxor ymm5,ymm10,ymm5 |
| 1283 vpshufb ymm5,ymm5,ymm15 | 1283 vpshufb ymm5,ymm5,ymm15 |
| 1284 vpaddd ymm11,ymm11,ymm0 | 1284 vpaddd ymm11,ymm11,ymm0 |
| 1285 vpxor ymm6,ymm11,ymm6 | 1285 vpxor ymm6,ymm11,ymm6 |
| 1286 vpshufb ymm6,ymm6,ymm15 | 1286 vpshufb ymm6,ymm6,ymm15 |
| 1287 vpaddd ymm12,ymm12,ymm5 | 1287 vpaddd ymm12,ymm12,ymm5 |
| 1288 vpxor ymm3,ymm12,ymm3 | 1288 vpxor ymm3,ymm12,ymm3 |
| 1289 vpslld ymm14,ymm3,12 | 1289 vpslld ymm14,ymm3,12 |
| 1290 vpsrld ymm3,ymm3,20 | 1290 vpsrld ymm3,ymm3,20 |
| 1291 vpor ymm3,ymm14,ymm3 | 1291 vpor ymm3,ymm14,ymm3 |
| 1292 » vbroadcasti128» ymm14,YMMWORD[r11] | 1292 » vbroadcasti128» ymm14,XMMWORD[r11] |
| 1293 vpaddd ymm13,ymm13,ymm6 | 1293 vpaddd ymm13,ymm13,ymm6 |
| 1294 vpxor ymm0,ymm13,ymm0 | 1294 vpxor ymm0,ymm13,ymm0 |
| 1295 vpslld ymm15,ymm0,12 | 1295 vpslld ymm15,ymm0,12 |
| 1296 vpsrld ymm0,ymm0,20 | 1296 vpsrld ymm0,ymm0,20 |
| 1297 vpor ymm0,ymm15,ymm0 | 1297 vpor ymm0,ymm15,ymm0 |
| 1298 vpaddd ymm10,ymm10,ymm3 | 1298 vpaddd ymm10,ymm10,ymm3 |
| 1299 vpxor ymm5,ymm10,ymm5 | 1299 vpxor ymm5,ymm10,ymm5 |
| 1300 vpshufb ymm5,ymm5,ymm14 | 1300 vpshufb ymm5,ymm5,ymm14 |
| 1301 vpaddd ymm11,ymm11,ymm0 | 1301 vpaddd ymm11,ymm11,ymm0 |
| 1302 vpxor ymm6,ymm11,ymm6 | 1302 vpxor ymm6,ymm11,ymm6 |
| 1303 vpshufb ymm6,ymm6,ymm14 | 1303 vpshufb ymm6,ymm6,ymm14 |
| 1304 vpaddd ymm12,ymm12,ymm5 | 1304 vpaddd ymm12,ymm12,ymm5 |
| 1305 vpxor ymm3,ymm12,ymm3 | 1305 vpxor ymm3,ymm12,ymm3 |
| 1306 vpslld ymm15,ymm3,7 | 1306 vpslld ymm15,ymm3,7 |
| 1307 vpsrld ymm3,ymm3,25 | 1307 vpsrld ymm3,ymm3,25 |
| 1308 vpor ymm3,ymm15,ymm3 | 1308 vpor ymm3,ymm15,ymm3 |
| 1309 » vbroadcasti128» ymm15,YMMWORD[r10] | 1309 » vbroadcasti128» ymm15,XMMWORD[r10] |
| 1310 vpaddd ymm13,ymm13,ymm6 | 1310 vpaddd ymm13,ymm13,ymm6 |
| 1311 vpxor ymm0,ymm13,ymm0 | 1311 vpxor ymm0,ymm13,ymm0 |
| 1312 vpslld ymm14,ymm0,7 | 1312 vpslld ymm14,ymm0,7 |
| 1313 vpsrld ymm0,ymm0,25 | 1313 vpsrld ymm0,ymm0,25 |
| 1314 vpor ymm0,ymm14,ymm0 | 1314 vpor ymm0,ymm14,ymm0 |
| 1315 dec eax | 1315 dec eax |
| 1316 jnz NEAR $L$oop8x | 1316 jnz NEAR $L$oop8x |
| 1317 | 1317 |
| 1318 lea rax,[512+rsp] | 1318 lea rax,[512+rsp] |
| 1319 vpaddd ymm8,ymm8,YMMWORD[((128-256))+rcx] | 1319 vpaddd ymm8,ymm8,YMMWORD[((128-256))+rcx] |
| (...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1680 movaps xmm11,XMMWORD[32+r11] | 1680 movaps xmm11,XMMWORD[32+r11] |
| 1681 movaps xmm12,XMMWORD[48+r11] | 1681 movaps xmm12,XMMWORD[48+r11] |
| 1682 movaps xmm13,XMMWORD[64+r11] | 1682 movaps xmm13,XMMWORD[64+r11] |
| 1683 movaps xmm14,XMMWORD[80+r11] | 1683 movaps xmm14,XMMWORD[80+r11] |
| 1684 movaps xmm15,XMMWORD[96+r11] | 1684 movaps xmm15,XMMWORD[96+r11] |
| 1685 mov rsp,QWORD[640+rsp] | 1685 mov rsp,QWORD[640+rsp] |
| 1686 mov rdi,QWORD[8+rsp] ;WIN64 epilogue | 1686 mov rdi,QWORD[8+rsp] ;WIN64 epilogue |
| 1687 mov rsi,QWORD[16+rsp] | 1687 mov rsi,QWORD[16+rsp] |
| 1688 DB 0F3h,0C3h ;repret | 1688 DB 0F3h,0C3h ;repret |
| 1689 $L$SEH_end_ChaCha20_8x: | 1689 $L$SEH_end_ChaCha20_8x: |
| OLD | NEW |