| @@ -89,6 +89,7 @@ QPEL_TABLE 10, 8, w, avx2 · 88 unmodified lines |
| 89 | | 89 | |
| 90 | QPEL_TABLE 8, 1, b, avx512icl_h | 90 | QPEL_TABLE 8, 1, b, avx512icl_h |
| 91 | QPEL_TABLE 8, 1, d, avx512icl_v | 91 | QPEL_TABLE 8, 1, d, avx512icl_v |
| | 92 | QPEL_TABLE 16, 1, b, avx512icl_h |
| 92 | | 93 | |
| 93 | pb_qpel_shuffle_index: db 0, 1, 2, 3 | 94 | pb_qpel_shuffle_index: db 0, 1, 2, 3 |
| 94 | db 1, 2, 3, 4 | 95 | db 1, 2, 3, 4 |
| @@ -98,6 +99,14 @@ pb_qpel_shuffle_index: db 0, 1, 2, 3 · 3 unmodified lines |
| 98 | db 5, 6, 7, 8 | 99 | db 5, 6, 7, 8 |
| 99 | db 6, 7, 8, 9 | 100 | db 6, 7, 8, 9 |
| 100 | db 7, 8, 9, 10 | 101 | db 7, 8, 9, 10 |
| | 102 | db 8, 9, 10, 11 |
| | 103 | db 9, 10, 11, 12 |
| | 104 | db 10, 11, 12, 13 |
| | 105 | db 11, 12, 13, 14 |
| | 106 | db 12, 13, 14, 15 |
| | 107 | db 13, 14, 15, 16 |
| | 108 | db 14, 15, 16, 17 |
| | 109 | db 15, 16, 17, 18 |
| 101 | db 4, 5, 6, 7 | 110 | db 4, 5, 6, 7 |
| 102 | db 5, 6, 7, 8 | 111 | db 5, 6, 7, 8 |
| 103 | db 6, 7, 8, 9 | 112 | db 6, 7, 8, 9 |
| @@ -106,6 +115,14 @@ pb_qpel_shuffle_index: db 0, 1, 2, 3 · 2 unmodified lines |
| 106 | db 9, 10, 11, 12 | 115 | db 9, 10, 11, 12 |
| 107 | db 10, 11, 12, 13 | 116 | db 10, 11, 12, 13 |
| 108 | db 11, 12, 13, 14 | 117 | db 11, 12, 13, 14 |
| | 118 | db 12, 13, 14, 15 |
| | 119 | db 13, 14, 15, 16 |
| | 120 | db 14, 15, 16, 17 |
| | 121 | db 15, 16, 17, 18 |
| | 122 | db 16, 17, 18, 19 |
| | 123 | db 17, 18, 19, 20 |
| | 124 | db 18, 19, 20, 21 |
| | 125 | db 19, 20, 21, 22 |
| 109 | | 126 | |
| 110 | SECTION .text | 127 | SECTION .text |
| 111 | | 128 | |
| @@ -1712,7 +1729,7 @@ HEVC_PUT_HEVC_QPEL_HV 16, 10 · 1600 unmodified lines |
| 1712 | | 1729 | |
| 1713 | %macro QPEL_LOAD_SHUF 2 | 1730 | %macro QPEL_LOAD_SHUF 2 |
| 1714 | movu m%1, [pb_qpel_shuffle_index + 0] | 1731 | movu m%1, [pb_qpel_shuffle_index + 0] |
| 1715 | movu m%2, [pb_qpel_shuffle_index + 32] | 1732 | movu m%2, [pb_qpel_shuffle_index + 64] |
| 1716 | %endmacro | 1733 | %endmacro |
| 1717 | | 1734 | |
| 1718 | ; required: m0-m5 | 1735 | ; required: m0-m5 |
| @@ -1720,7 +1737,11 @@ HEVC_PUT_HEVC_QPEL_HV 16, 10 · 1 unmodified line |
| 1720 | ; %2: name for src | 1737 | ; %2: name for src |
| 1721 | %macro QPEL_H_LOAD_COMPUTE 2 | 1738 | %macro QPEL_H_LOAD_COMPUTE 2 |
| 1722 | pxor m%1, m%1 | 1739 | pxor m%1, m%1 |
| | 1740 | %if mmsize == 64 |
| | 1741 | movu ym4, [%2q - 3] |
| | 1742 | %else |
| 1723 | movu xm4, [%2q - 3] | 1743 | movu xm4, [%2q - 3] |
| | 1744 | %endif |
| 1724 | vpermb m5, m2, m4 | 1745 | vpermb m5, m2, m4 |
| 1725 | vpermb m4, m3, m4 | 1746 | vpermb m4, m3, m4 |
| 1726 | vpdpbusd m%1, m5, m0 | 1747 | vpdpbusd m%1, m5, m0 |
| @@ -1805,5 +1826,8 @@ INIT_YMM avx512icl · 78 unmodified lines |
| 1805 | HEVC_PUT_HEVC_QPEL_AVX512ICL 8, 8 | 1826 | HEVC_PUT_HEVC_QPEL_AVX512ICL 8, 8 |
| 1806 | HEVC_PUT_HEVC_QPEL_HV_AVX512ICL 8, 8 | 1827 | HEVC_PUT_HEVC_QPEL_HV_AVX512ICL 8, 8 |
| 1807 | | 1828 | |
| | 1829 | INIT_ZMM avx512icl |
| | 1830 | HEVC_PUT_HEVC_QPEL_AVX512ICL 16, 8 |
| | 1831 | |
| 1808 | %endif | 1832 | %endif |
| 1809 | %endif | 1833 | %endif |