VirtualBox

Ignore:
Timestamp:
Jun 8, 2022 8:35:57 AM (3 years ago)
Author:
vboxsync
Message:

libs/openssl-3.0.3: Recreated openssl assembler files, bugref:10128

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/libs/openssl-3.0.3/crypto/genasm-nasm/ghash-x86_64.S

    r94083 r95221  
    13551355gcm_init_avx:
    13561356
    1357 $L$SEH_begin_gcm_init_avx:
    1358 
    1359 DB      0x48,0x83,0xec,0x18
    1360 DB      0x0f,0x29,0x34,0x24
    1361         vzeroupper
    1362 
    1363         vmovdqu xmm2,XMMWORD[rdx]
    1364         vpshufd xmm2,xmm2,78
    1365 
    1366 
    1367         vpshufd xmm4,xmm2,255
    1368         vpsrlq  xmm3,xmm2,63
    1369         vpsllq  xmm2,xmm2,1
    1370         vpxor   xmm5,xmm5,xmm5
    1371         vpcmpgtd        xmm5,xmm5,xmm4
    1372         vpslldq xmm3,xmm3,8
    1373         vpor    xmm2,xmm2,xmm3
    1374 
    1375 
    1376         vpand   xmm5,xmm5,XMMWORD[$L$0x1c2_polynomial]
    1377         vpxor   xmm2,xmm2,xmm5
    1378 
    1379         vpunpckhqdq     xmm6,xmm2,xmm2
    1380         vmovdqa xmm0,xmm2
    1381         vpxor   xmm6,xmm6,xmm2
    1382         mov     r10,4
    1383         jmp     NEAR $L$init_start_avx
    1384 ALIGN   32
    1385 $L$init_loop_avx:
    1386         vpalignr        xmm5,xmm4,xmm3,8
    1387         vmovdqu XMMWORD[(-16)+rcx],xmm5
    1388         vpunpckhqdq     xmm3,xmm0,xmm0
    1389         vpxor   xmm3,xmm3,xmm0
    1390         vpclmulqdq      xmm1,xmm0,xmm2,0x11
    1391         vpclmulqdq      xmm0,xmm0,xmm2,0x00
    1392         vpclmulqdq      xmm3,xmm3,xmm6,0x00
    1393         vpxor   xmm4,xmm1,xmm0
    1394         vpxor   xmm3,xmm3,xmm4
    1395 
    1396         vpslldq xmm4,xmm3,8
    1397         vpsrldq xmm3,xmm3,8
    1398         vpxor   xmm0,xmm0,xmm4
    1399         vpxor   xmm1,xmm1,xmm3
    1400         vpsllq  xmm3,xmm0,57
    1401         vpsllq  xmm4,xmm0,62
    1402         vpxor   xmm4,xmm4,xmm3
    1403         vpsllq  xmm3,xmm0,63
    1404         vpxor   xmm4,xmm4,xmm3
    1405         vpslldq xmm3,xmm4,8
    1406         vpsrldq xmm4,xmm4,8
    1407         vpxor   xmm0,xmm0,xmm3
    1408         vpxor   xmm1,xmm1,xmm4
    1409 
    1410         vpsrlq  xmm4,xmm0,1
    1411         vpxor   xmm1,xmm1,xmm0
    1412         vpxor   xmm0,xmm0,xmm4
    1413         vpsrlq  xmm4,xmm4,5
    1414         vpxor   xmm0,xmm0,xmm4
    1415         vpsrlq  xmm0,xmm0,1
    1416         vpxor   xmm0,xmm0,xmm1
    1417 $L$init_start_avx:
    1418         vmovdqa xmm5,xmm0
    1419         vpunpckhqdq     xmm3,xmm0,xmm0
    1420         vpxor   xmm3,xmm3,xmm0
    1421         vpclmulqdq      xmm1,xmm0,xmm2,0x11
    1422         vpclmulqdq      xmm0,xmm0,xmm2,0x00
    1423         vpclmulqdq      xmm3,xmm3,xmm6,0x00
    1424         vpxor   xmm4,xmm1,xmm0
    1425         vpxor   xmm3,xmm3,xmm4
    1426 
    1427         vpslldq xmm4,xmm3,8
    1428         vpsrldq xmm3,xmm3,8
    1429         vpxor   xmm0,xmm0,xmm4
    1430         vpxor   xmm1,xmm1,xmm3
    1431         vpsllq  xmm3,xmm0,57
    1432         vpsllq  xmm4,xmm0,62
    1433         vpxor   xmm4,xmm4,xmm3
    1434         vpsllq  xmm3,xmm0,63
    1435         vpxor   xmm4,xmm4,xmm3
    1436         vpslldq xmm3,xmm4,8
    1437         vpsrldq xmm4,xmm4,8
    1438         vpxor   xmm0,xmm0,xmm3
    1439         vpxor   xmm1,xmm1,xmm4
    1440 
    1441         vpsrlq  xmm4,xmm0,1
    1442         vpxor   xmm1,xmm1,xmm0
    1443         vpxor   xmm0,xmm0,xmm4
    1444         vpsrlq  xmm4,xmm4,5
    1445         vpxor   xmm0,xmm0,xmm4
    1446         vpsrlq  xmm0,xmm0,1
    1447         vpxor   xmm0,xmm0,xmm1
    1448         vpshufd xmm3,xmm5,78
    1449         vpshufd xmm4,xmm0,78
    1450         vpxor   xmm3,xmm3,xmm5
    1451         vmovdqu XMMWORD[rcx],xmm5
    1452         vpxor   xmm4,xmm4,xmm0
    1453         vmovdqu XMMWORD[16+rcx],xmm0
    1454         lea     rcx,[48+rcx]
    1455         sub     r10,1
    1456         jnz     NEAR $L$init_loop_avx
    1457 
    1458         vpalignr        xmm5,xmm3,xmm4,8
    1459         vmovdqu XMMWORD[(-16)+rcx],xmm5
    1460 
    1461         vzeroupper
    1462         movaps  xmm6,XMMWORD[rsp]
    1463         lea     rsp,[24+rsp]
    1464 $L$SEH_end_gcm_init_avx:
    1465         DB      0F3h,0C3h               ;repret
     1357        jmp     NEAR $L$_init_clmul
    14661358
    14671359
     
    14811373
    14821374DB      243,15,30,250
    1483         lea     rax,[((-136))+rsp]
    1484 $L$SEH_begin_gcm_ghash_avx:
    1485 
    1486 DB      0x48,0x8d,0x60,0xe0
    1487 DB      0x0f,0x29,0x70,0xe0
    1488 DB      0x0f,0x29,0x78,0xf0
    1489 DB      0x44,0x0f,0x29,0x00
    1490 DB      0x44,0x0f,0x29,0x48,0x10
    1491 DB      0x44,0x0f,0x29,0x50,0x20
    1492 DB      0x44,0x0f,0x29,0x58,0x30
    1493 DB      0x44,0x0f,0x29,0x60,0x40
    1494 DB      0x44,0x0f,0x29,0x68,0x50
    1495 DB      0x44,0x0f,0x29,0x70,0x60
    1496 DB      0x44,0x0f,0x29,0x78,0x70
    1497         vzeroupper
    1498 
    1499         vmovdqu xmm10,XMMWORD[rcx]
    1500         lea     r10,[$L$0x1c2_polynomial]
    1501         lea     rdx,[64+rdx]
    1502         vmovdqu xmm13,XMMWORD[$L$bswap_mask]
    1503         vpshufb xmm10,xmm10,xmm13
    1504         cmp     r9,0x80
    1505         jb      NEAR $L$short_avx
    1506         sub     r9,0x80
    1507 
    1508         vmovdqu xmm14,XMMWORD[112+r8]
    1509         vmovdqu xmm6,XMMWORD[((0-64))+rdx]
    1510         vpshufb xmm14,xmm14,xmm13
    1511         vmovdqu xmm7,XMMWORD[((32-64))+rdx]
    1512 
    1513         vpunpckhqdq     xmm9,xmm14,xmm14
    1514         vmovdqu xmm15,XMMWORD[96+r8]
    1515         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1516         vpxor   xmm9,xmm9,xmm14
    1517         vpshufb xmm15,xmm15,xmm13
    1518         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1519         vmovdqu xmm6,XMMWORD[((16-64))+rdx]
    1520         vpunpckhqdq     xmm8,xmm15,xmm15
    1521         vmovdqu xmm14,XMMWORD[80+r8]
    1522         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1523         vpxor   xmm8,xmm8,xmm15
    1524 
    1525         vpshufb xmm14,xmm14,xmm13
    1526         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1527         vpunpckhqdq     xmm9,xmm14,xmm14
    1528         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1529         vmovdqu xmm6,XMMWORD[((48-64))+rdx]
    1530         vpxor   xmm9,xmm9,xmm14
    1531         vmovdqu xmm15,XMMWORD[64+r8]
    1532         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1533         vmovdqu xmm7,XMMWORD[((80-64))+rdx]
    1534 
    1535         vpshufb xmm15,xmm15,xmm13
    1536         vpxor   xmm3,xmm3,xmm0
    1537         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1538         vpxor   xmm4,xmm4,xmm1
    1539         vpunpckhqdq     xmm8,xmm15,xmm15
    1540         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1541         vmovdqu xmm6,XMMWORD[((64-64))+rdx]
    1542         vpxor   xmm5,xmm5,xmm2
    1543         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1544         vpxor   xmm8,xmm8,xmm15
    1545 
    1546         vmovdqu xmm14,XMMWORD[48+r8]
    1547         vpxor   xmm0,xmm0,xmm3
    1548         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1549         vpxor   xmm1,xmm1,xmm4
    1550         vpshufb xmm14,xmm14,xmm13
    1551         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1552         vmovdqu xmm6,XMMWORD[((96-64))+rdx]
    1553         vpxor   xmm2,xmm2,xmm5
    1554         vpunpckhqdq     xmm9,xmm14,xmm14
    1555         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1556         vmovdqu xmm7,XMMWORD[((128-64))+rdx]
    1557         vpxor   xmm9,xmm9,xmm14
    1558 
    1559         vmovdqu xmm15,XMMWORD[32+r8]
    1560         vpxor   xmm3,xmm3,xmm0
    1561         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1562         vpxor   xmm4,xmm4,xmm1
    1563         vpshufb xmm15,xmm15,xmm13
    1564         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1565         vmovdqu xmm6,XMMWORD[((112-64))+rdx]
    1566         vpxor   xmm5,xmm5,xmm2
    1567         vpunpckhqdq     xmm8,xmm15,xmm15
    1568         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1569         vpxor   xmm8,xmm8,xmm15
    1570 
    1571         vmovdqu xmm14,XMMWORD[16+r8]
    1572         vpxor   xmm0,xmm0,xmm3
    1573         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1574         vpxor   xmm1,xmm1,xmm4
    1575         vpshufb xmm14,xmm14,xmm13
    1576         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1577         vmovdqu xmm6,XMMWORD[((144-64))+rdx]
    1578         vpxor   xmm2,xmm2,xmm5
    1579         vpunpckhqdq     xmm9,xmm14,xmm14
    1580         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1581         vmovdqu xmm7,XMMWORD[((176-64))+rdx]
    1582         vpxor   xmm9,xmm9,xmm14
    1583 
    1584         vmovdqu xmm15,XMMWORD[r8]
    1585         vpxor   xmm3,xmm3,xmm0
    1586         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1587         vpxor   xmm4,xmm4,xmm1
    1588         vpshufb xmm15,xmm15,xmm13
    1589         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1590         vmovdqu xmm6,XMMWORD[((160-64))+rdx]
    1591         vpxor   xmm5,xmm5,xmm2
    1592         vpclmulqdq      xmm2,xmm9,xmm7,0x10
    1593 
    1594         lea     r8,[128+r8]
    1595         cmp     r9,0x80
    1596         jb      NEAR $L$tail_avx
    1597 
    1598         vpxor   xmm15,xmm15,xmm10
    1599         sub     r9,0x80
    1600         jmp     NEAR $L$oop8x_avx
    1601 
    1602 ALIGN   32
    1603 $L$oop8x_avx:
    1604         vpunpckhqdq     xmm8,xmm15,xmm15
    1605         vmovdqu xmm14,XMMWORD[112+r8]
    1606         vpxor   xmm3,xmm3,xmm0
    1607         vpxor   xmm8,xmm8,xmm15
    1608         vpclmulqdq      xmm10,xmm15,xmm6,0x00
    1609         vpshufb xmm14,xmm14,xmm13
    1610         vpxor   xmm4,xmm4,xmm1
    1611         vpclmulqdq      xmm11,xmm15,xmm6,0x11
    1612         vmovdqu xmm6,XMMWORD[((0-64))+rdx]
    1613         vpunpckhqdq     xmm9,xmm14,xmm14
    1614         vpxor   xmm5,xmm5,xmm2
    1615         vpclmulqdq      xmm12,xmm8,xmm7,0x00
    1616         vmovdqu xmm7,XMMWORD[((32-64))+rdx]
    1617         vpxor   xmm9,xmm9,xmm14
    1618 
    1619         vmovdqu xmm15,XMMWORD[96+r8]
    1620         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1621         vpxor   xmm10,xmm10,xmm3
    1622         vpshufb xmm15,xmm15,xmm13
    1623         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1624         vxorps  xmm11,xmm11,xmm4
    1625         vmovdqu xmm6,XMMWORD[((16-64))+rdx]
    1626         vpunpckhqdq     xmm8,xmm15,xmm15
    1627         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1628         vpxor   xmm12,xmm12,xmm5
    1629         vxorps  xmm8,xmm8,xmm15
    1630 
    1631         vmovdqu xmm14,XMMWORD[80+r8]
    1632         vpxor   xmm12,xmm12,xmm10
    1633         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1634         vpxor   xmm12,xmm12,xmm11
    1635         vpslldq xmm9,xmm12,8
    1636         vpxor   xmm3,xmm3,xmm0
    1637         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1638         vpsrldq xmm12,xmm12,8
    1639         vpxor   xmm10,xmm10,xmm9
    1640         vmovdqu xmm6,XMMWORD[((48-64))+rdx]
    1641         vpshufb xmm14,xmm14,xmm13
    1642         vxorps  xmm11,xmm11,xmm12
    1643         vpxor   xmm4,xmm4,xmm1
    1644         vpunpckhqdq     xmm9,xmm14,xmm14
    1645         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1646         vmovdqu xmm7,XMMWORD[((80-64))+rdx]
    1647         vpxor   xmm9,xmm9,xmm14
    1648         vpxor   xmm5,xmm5,xmm2
    1649 
    1650         vmovdqu xmm15,XMMWORD[64+r8]
    1651         vpalignr        xmm12,xmm10,xmm10,8
    1652         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1653         vpshufb xmm15,xmm15,xmm13
    1654         vpxor   xmm0,xmm0,xmm3
    1655         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1656         vmovdqu xmm6,XMMWORD[((64-64))+rdx]
    1657         vpunpckhqdq     xmm8,xmm15,xmm15
    1658         vpxor   xmm1,xmm1,xmm4
    1659         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1660         vxorps  xmm8,xmm8,xmm15
    1661         vpxor   xmm2,xmm2,xmm5
    1662 
    1663         vmovdqu xmm14,XMMWORD[48+r8]
    1664         vpclmulqdq      xmm10,xmm10,XMMWORD[r10],0x10
    1665         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1666         vpshufb xmm14,xmm14,xmm13
    1667         vpxor   xmm3,xmm3,xmm0
    1668         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1669         vmovdqu xmm6,XMMWORD[((96-64))+rdx]
    1670         vpunpckhqdq     xmm9,xmm14,xmm14
    1671         vpxor   xmm4,xmm4,xmm1
    1672         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1673         vmovdqu xmm7,XMMWORD[((128-64))+rdx]
    1674         vpxor   xmm9,xmm9,xmm14
    1675         vpxor   xmm5,xmm5,xmm2
    1676 
    1677         vmovdqu xmm15,XMMWORD[32+r8]
    1678         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1679         vpshufb xmm15,xmm15,xmm13
    1680         vpxor   xmm0,xmm0,xmm3
    1681         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1682         vmovdqu xmm6,XMMWORD[((112-64))+rdx]
    1683         vpunpckhqdq     xmm8,xmm15,xmm15
    1684         vpxor   xmm1,xmm1,xmm4
    1685         vpclmulqdq      xmm2,xmm9,xmm7,0x00
    1686         vpxor   xmm8,xmm8,xmm15
    1687         vpxor   xmm2,xmm2,xmm5
    1688         vxorps  xmm10,xmm10,xmm12
    1689 
    1690         vmovdqu xmm14,XMMWORD[16+r8]
    1691         vpalignr        xmm12,xmm10,xmm10,8
    1692         vpclmulqdq      xmm3,xmm15,xmm6,0x00
    1693         vpshufb xmm14,xmm14,xmm13
    1694         vpxor   xmm3,xmm3,xmm0
    1695         vpclmulqdq      xmm4,xmm15,xmm6,0x11
    1696         vmovdqu xmm6,XMMWORD[((144-64))+rdx]
    1697         vpclmulqdq      xmm10,xmm10,XMMWORD[r10],0x10
    1698         vxorps  xmm12,xmm12,xmm11
    1699         vpunpckhqdq     xmm9,xmm14,xmm14
    1700         vpxor   xmm4,xmm4,xmm1
    1701         vpclmulqdq      xmm5,xmm8,xmm7,0x10
    1702         vmovdqu xmm7,XMMWORD[((176-64))+rdx]
    1703         vpxor   xmm9,xmm9,xmm14
    1704         vpxor   xmm5,xmm5,xmm2
    1705 
    1706         vmovdqu xmm15,XMMWORD[r8]
    1707         vpclmulqdq      xmm0,xmm14,xmm6,0x00
    1708         vpshufb xmm15,xmm15,xmm13
    1709         vpclmulqdq      xmm1,xmm14,xmm6,0x11
    1710         vmovdqu xmm6,XMMWORD[((160-64))+rdx]
    1711         vpxor   xmm15,xmm15,xmm12
    1712         vpclmulqdq      xmm2,xmm9,xmm7,0x10
    1713         vpxor   xmm15,xmm15,xmm10
    1714 
    1715         lea     r8,[128+r8]
    1716         sub     r9,0x80
    1717         jnc     NEAR $L$oop8x_avx
    1718 
    1719         add     r9,0x80
    1720         jmp     NEAR $L$tail_no_xor_avx
    1721 
    1722 ALIGN   32
    1723 $L$short_avx:
    1724         vmovdqu xmm14,XMMWORD[((-16))+r9*1+r8]
    1725         lea     r8,[r9*1+r8]
    1726         vmovdqu xmm6,XMMWORD[((0-64))+rdx]
    1727         vmovdqu xmm7,XMMWORD[((32-64))+rdx]
    1728         vpshufb xmm15,xmm14,xmm13
    1729 
    1730         vmovdqa xmm3,xmm0
    1731         vmovdqa xmm4,xmm1
    1732         vmovdqa xmm5,xmm2
    1733         sub     r9,0x10
    1734         jz      NEAR $L$tail_avx
    1735 
    1736         vpunpckhqdq     xmm8,xmm15,xmm15
    1737         vpxor   xmm3,xmm3,xmm0
    1738         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1739         vpxor   xmm8,xmm8,xmm15
    1740         vmovdqu xmm14,XMMWORD[((-32))+r8]
    1741         vpxor   xmm4,xmm4,xmm1
    1742         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1743         vmovdqu xmm6,XMMWORD[((16-64))+rdx]
    1744         vpshufb xmm15,xmm14,xmm13
    1745         vpxor   xmm5,xmm5,xmm2
    1746         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1747         vpsrldq xmm7,xmm7,8
    1748         sub     r9,0x10
    1749         jz      NEAR $L$tail_avx
    1750 
    1751         vpunpckhqdq     xmm8,xmm15,xmm15
    1752         vpxor   xmm3,xmm3,xmm0
    1753         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1754         vpxor   xmm8,xmm8,xmm15
    1755         vmovdqu xmm14,XMMWORD[((-48))+r8]
    1756         vpxor   xmm4,xmm4,xmm1
    1757         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1758         vmovdqu xmm6,XMMWORD[((48-64))+rdx]
    1759         vpshufb xmm15,xmm14,xmm13
    1760         vpxor   xmm5,xmm5,xmm2
    1761         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1762         vmovdqu xmm7,XMMWORD[((80-64))+rdx]
    1763         sub     r9,0x10
    1764         jz      NEAR $L$tail_avx
    1765 
    1766         vpunpckhqdq     xmm8,xmm15,xmm15
    1767         vpxor   xmm3,xmm3,xmm0
    1768         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1769         vpxor   xmm8,xmm8,xmm15
    1770         vmovdqu xmm14,XMMWORD[((-64))+r8]
    1771         vpxor   xmm4,xmm4,xmm1
    1772         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1773         vmovdqu xmm6,XMMWORD[((64-64))+rdx]
    1774         vpshufb xmm15,xmm14,xmm13
    1775         vpxor   xmm5,xmm5,xmm2
    1776         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1777         vpsrldq xmm7,xmm7,8
    1778         sub     r9,0x10
    1779         jz      NEAR $L$tail_avx
    1780 
    1781         vpunpckhqdq     xmm8,xmm15,xmm15
    1782         vpxor   xmm3,xmm3,xmm0
    1783         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1784         vpxor   xmm8,xmm8,xmm15
    1785         vmovdqu xmm14,XMMWORD[((-80))+r8]
    1786         vpxor   xmm4,xmm4,xmm1
    1787         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1788         vmovdqu xmm6,XMMWORD[((96-64))+rdx]
    1789         vpshufb xmm15,xmm14,xmm13
    1790         vpxor   xmm5,xmm5,xmm2
    1791         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1792         vmovdqu xmm7,XMMWORD[((128-64))+rdx]
    1793         sub     r9,0x10
    1794         jz      NEAR $L$tail_avx
    1795 
    1796         vpunpckhqdq     xmm8,xmm15,xmm15
    1797         vpxor   xmm3,xmm3,xmm0
    1798         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1799         vpxor   xmm8,xmm8,xmm15
    1800         vmovdqu xmm14,XMMWORD[((-96))+r8]
    1801         vpxor   xmm4,xmm4,xmm1
    1802         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1803         vmovdqu xmm6,XMMWORD[((112-64))+rdx]
    1804         vpshufb xmm15,xmm14,xmm13
    1805         vpxor   xmm5,xmm5,xmm2
    1806         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1807         vpsrldq xmm7,xmm7,8
    1808         sub     r9,0x10
    1809         jz      NEAR $L$tail_avx
    1810 
    1811         vpunpckhqdq     xmm8,xmm15,xmm15
    1812         vpxor   xmm3,xmm3,xmm0
    1813         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1814         vpxor   xmm8,xmm8,xmm15
    1815         vmovdqu xmm14,XMMWORD[((-112))+r8]
    1816         vpxor   xmm4,xmm4,xmm1
    1817         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1818         vmovdqu xmm6,XMMWORD[((144-64))+rdx]
    1819         vpshufb xmm15,xmm14,xmm13
    1820         vpxor   xmm5,xmm5,xmm2
    1821         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1822         vmovq   xmm7,QWORD[((184-64))+rdx]
    1823         sub     r9,0x10
    1824         jmp     NEAR $L$tail_avx
    1825 
    1826 ALIGN   32
    1827 $L$tail_avx:
    1828         vpxor   xmm15,xmm15,xmm10
    1829 $L$tail_no_xor_avx:
    1830         vpunpckhqdq     xmm8,xmm15,xmm15
    1831         vpxor   xmm3,xmm3,xmm0
    1832         vpclmulqdq      xmm0,xmm15,xmm6,0x00
    1833         vpxor   xmm8,xmm8,xmm15
    1834         vpxor   xmm4,xmm4,xmm1
    1835         vpclmulqdq      xmm1,xmm15,xmm6,0x11
    1836         vpxor   xmm5,xmm5,xmm2
    1837         vpclmulqdq      xmm2,xmm8,xmm7,0x00
    1838 
    1839         vmovdqu xmm12,XMMWORD[r10]
    1840 
    1841         vpxor   xmm10,xmm3,xmm0
    1842         vpxor   xmm11,xmm4,xmm1
    1843         vpxor   xmm5,xmm5,xmm2
    1844 
    1845         vpxor   xmm5,xmm5,xmm10
    1846         vpxor   xmm5,xmm5,xmm11
    1847         vpslldq xmm9,xmm5,8
    1848         vpsrldq xmm5,xmm5,8
    1849         vpxor   xmm10,xmm10,xmm9
    1850         vpxor   xmm11,xmm11,xmm5
    1851 
    1852         vpclmulqdq      xmm9,xmm10,xmm12,0x10
    1853         vpalignr        xmm10,xmm10,xmm10,8
    1854         vpxor   xmm10,xmm10,xmm9
    1855 
    1856         vpclmulqdq      xmm9,xmm10,xmm12,0x10
    1857         vpalignr        xmm10,xmm10,xmm10,8
    1858         vpxor   xmm10,xmm10,xmm11
    1859         vpxor   xmm10,xmm10,xmm9
    1860 
    1861         cmp     r9,0
    1862         jne     NEAR $L$short_avx
    1863 
    1864         vpshufb xmm10,xmm10,xmm13
    1865         vmovdqu XMMWORD[rcx],xmm10
    1866         vzeroupper
    1867         movaps  xmm6,XMMWORD[rsp]
    1868         movaps  xmm7,XMMWORD[16+rsp]
    1869         movaps  xmm8,XMMWORD[32+rsp]
    1870         movaps  xmm9,XMMWORD[48+rsp]
    1871         movaps  xmm10,XMMWORD[64+rsp]
    1872         movaps  xmm11,XMMWORD[80+rsp]
    1873         movaps  xmm12,XMMWORD[96+rsp]
    1874         movaps  xmm13,XMMWORD[112+rsp]
    1875         movaps  xmm14,XMMWORD[128+rsp]
    1876         movaps  xmm15,XMMWORD[144+rsp]
    1877         lea     rsp,[168+rsp]
    1878 $L$SEH_end_gcm_ghash_avx:
    1879         DB      0F3h,0C3h               ;repret
     1375        jmp     NEAR $L$_ghash_clmul
    18801376
    18811377
     
    20411537        DD      $L$SEH_end_gcm_ghash_clmul wrt ..imagebase
    20421538        DD      $L$SEH_info_gcm_ghash_clmul wrt ..imagebase
    2043         DD      $L$SEH_begin_gcm_init_avx wrt ..imagebase
    2044         DD      $L$SEH_end_gcm_init_avx wrt ..imagebase
    2045         DD      $L$SEH_info_gcm_init_clmul wrt ..imagebase
    2046 
    2047         DD      $L$SEH_begin_gcm_ghash_avx wrt ..imagebase
    2048         DD      $L$SEH_end_gcm_ghash_avx wrt ..imagebase
    2049         DD      $L$SEH_info_gcm_ghash_clmul wrt ..imagebase
    20501539section .xdata rdata align=8
    20511540ALIGN   8
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette