/src/ffmpeg/libavcodec/vp9dsp_template.c
Line | Count | Source |
1 | | /* |
2 | | * VP9 compatible video decoder |
3 | | * |
4 | | * Copyright (C) 2013 Ronald S. Bultje <rsbultje gmail com> |
5 | | * Copyright (C) 2013 Clément Bœsch <u pkh me> |
6 | | * |
7 | | * This file is part of FFmpeg. |
8 | | * |
9 | | * FFmpeg is free software; you can redistribute it and/or |
10 | | * modify it under the terms of the GNU Lesser General Public |
11 | | * License as published by the Free Software Foundation; either |
12 | | * version 2.1 of the License, or (at your option) any later version. |
13 | | * |
14 | | * FFmpeg is distributed in the hope that it will be useful, |
15 | | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
17 | | * Lesser General Public License for more details. |
18 | | * |
19 | | * You should have received a copy of the GNU Lesser General Public |
20 | | * License along with FFmpeg; if not, write to the Free Software |
21 | | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
22 | | */ |
23 | | |
24 | | #include "libavutil/common.h" |
25 | | #include "bit_depth_template.c" |
26 | | #include "vp9dsp.h" |
27 | | |
28 | | #if BIT_DEPTH != 12 |
29 | | |
30 | | // FIXME see whether we can merge parts of this (perhaps at least 4x4 and 8x8) |
31 | | // back with h264pred.[ch] |
32 | | |
33 | | static void vert_4x4_c(uint8_t *restrict _dst, ptrdiff_t stride, |
34 | | const uint8_t *left, const uint8_t *_top) |
35 | 9.97M | { |
36 | 9.97M | pixel *dst = (pixel *) _dst; |
37 | 9.97M | const pixel *top = (const pixel *) _top; |
38 | 9.97M | pixel4 p4 = AV_RN4PA(top); |
39 | | |
40 | 9.97M | stride /= sizeof(pixel); |
41 | 9.97M | AV_WN4PA(dst + stride * 0, p4); |
42 | 9.97M | AV_WN4PA(dst + stride * 1, p4); |
43 | 9.97M | AV_WN4PA(dst + stride * 2, p4); |
44 | 9.97M | AV_WN4PA(dst + stride * 3, p4); |
45 | 9.97M | } vp9dsp_10bpp.c:vert_4x4_c Line | Count | Source | 35 | 7.10M | { | 36 | 7.10M | pixel *dst = (pixel *) _dst; | 37 | 7.10M | const pixel *top = (const pixel *) _top; | 38 | 7.10M | pixel4 p4 = AV_RN4PA(top); | 39 | | | 40 | 7.10M | stride /= sizeof(pixel); | 41 | 7.10M | AV_WN4PA(dst + stride * 0, p4); | 42 | 7.10M | AV_WN4PA(dst + stride * 1, p4); | 43 | 7.10M | AV_WN4PA(dst + stride * 2, p4); | 44 | 7.10M | AV_WN4PA(dst + stride * 3, p4); | 45 | 7.10M | } |
Line | Count | Source | 35 | 2.86M | { | 36 | 2.86M | pixel *dst = (pixel *) _dst; | 37 | 2.86M | const pixel *top = (const pixel *) _top; | 38 | 2.86M | pixel4 p4 = AV_RN4PA(top); | 39 | | | 40 | 2.86M | stride /= sizeof(pixel); | 41 | 2.86M | AV_WN4PA(dst + stride * 0, p4); | 42 | 2.86M | AV_WN4PA(dst + stride * 1, p4); | 43 | 2.86M | AV_WN4PA(dst + stride * 2, p4); | 44 | 2.86M | AV_WN4PA(dst + stride * 3, p4); | 45 | 2.86M | } |
|
46 | | |
47 | | static void vert_8x8_c(uint8_t *restrict _dst, ptrdiff_t stride, |
48 | | const uint8_t *left, const uint8_t *_top) |
49 | 840k | { |
50 | 840k | pixel *dst = (pixel *) _dst; |
51 | 840k | const pixel *top = (const pixel *) _top; |
52 | | #if BIT_DEPTH == 8 |
53 | 274k | uint64_t p8 = AV_RN64A(top); |
54 | | #else |
55 | 565k | pixel4 p4a = AV_RN4PA(top + 0); |
56 | 565k | pixel4 p4b = AV_RN4PA(top + 4); |
57 | | #endif |
58 | 840k | int y; |
59 | | |
60 | 840k | stride /= sizeof(pixel); |
61 | 7.56M | for (y = 0; y < 8; y++) { |
62 | | #if BIT_DEPTH == 8 |
63 | 2.19M | AV_WN64A(dst, p8); |
64 | | #else |
65 | 4.52M | AV_WN4PA(dst + 0, p4a); |
66 | 4.52M | AV_WN4PA(dst + 4, p4b); |
67 | | #endif |
68 | 6.72M | dst += stride; |
69 | 6.72M | } |
70 | 840k | } vp9dsp_10bpp.c:vert_8x8_c Line | Count | Source | 49 | 565k | { | 50 | 565k | pixel *dst = (pixel *) _dst; | 51 | 565k | const pixel *top = (const pixel *) _top; | 52 | | #if BIT_DEPTH == 8 | 53 | | uint64_t p8 = AV_RN64A(top); | 54 | | #else | 55 | 565k | pixel4 p4a = AV_RN4PA(top + 0); | 56 | 565k | pixel4 p4b = AV_RN4PA(top + 4); | 57 | 565k | #endif | 58 | 565k | int y; | 59 | | | 60 | 565k | stride /= sizeof(pixel); | 61 | 5.09M | for (y = 0; y < 8; y++) { | 62 | | #if BIT_DEPTH == 8 | 63 | | AV_WN64A(dst, p8); | 64 | | #else | 65 | 4.52M | AV_WN4PA(dst + 0, p4a); | 66 | 4.52M | AV_WN4PA(dst + 4, p4b); | 67 | 4.52M | #endif | 68 | 4.52M | dst += stride; | 69 | 4.52M | } | 70 | 565k | } |
Line | Count | Source | 49 | 274k | { | 50 | 274k | pixel *dst = (pixel *) _dst; | 51 | 274k | const pixel *top = (const pixel *) _top; | 52 | 274k | #if BIT_DEPTH == 8 | 53 | 274k | uint64_t p8 = AV_RN64A(top); | 54 | | #else | 55 | | pixel4 p4a = AV_RN4PA(top + 0); | 56 | | pixel4 p4b = AV_RN4PA(top + 4); | 57 | | #endif | 58 | 274k | int y; | 59 | | | 60 | 274k | stride /= sizeof(pixel); | 61 | 2.47M | for (y = 0; y < 8; y++) { | 62 | 2.19M | #if BIT_DEPTH == 8 | 63 | 2.19M | AV_WN64A(dst, p8); | 64 | | #else | 65 | | AV_WN4PA(dst + 0, p4a); | 66 | | AV_WN4PA(dst + 4, p4b); | 67 | | #endif | 68 | 2.19M | dst += stride; | 69 | 2.19M | } | 70 | 274k | } |
|
71 | | |
72 | | static void vert_16x16_c(uint8_t *restrict _dst, ptrdiff_t stride, |
73 | | const uint8_t *left, const uint8_t *_top) |
74 | 255k | { |
75 | 255k | pixel *dst = (pixel *) _dst; |
76 | 255k | const pixel *top = (const pixel *) _top; |
77 | | #if BIT_DEPTH == 8 |
78 | 97.3k | uint64_t p8a = AV_RN64A(top); |
79 | 97.3k | uint64_t p8b = AV_RN64A(top + 8); |
80 | | #else |
81 | 158k | pixel4 p4a = AV_RN4PA(top + 0); |
82 | 158k | pixel4 p4b = AV_RN4PA(top + 4); |
83 | 158k | pixel4 p4c = AV_RN4PA(top + 8); |
84 | 158k | pixel4 p4d = AV_RN4PA(top + 12); |
85 | | #endif |
86 | 255k | int y; |
87 | | |
88 | 255k | stride /= sizeof(pixel); |
89 | 4.34M | for (y = 0; y < 16; y++) { |
90 | | #if BIT_DEPTH == 8 |
91 | 1.55M | AV_WN64A(dst + 0, p8a); |
92 | 1.55M | AV_WN64A(dst + 8, p8b); |
93 | | #else |
94 | 2.52M | AV_WN4PA(dst + 0, p4a); |
95 | 2.52M | AV_WN4PA(dst + 4, p4b); |
96 | 2.52M | AV_WN4PA(dst + 8, p4c); |
97 | 2.52M | AV_WN4PA(dst + 12, p4d); |
98 | | #endif |
99 | 4.08M | dst += stride; |
100 | 4.08M | } |
101 | 255k | } vp9dsp_10bpp.c:vert_16x16_c Line | Count | Source | 74 | 158k | { | 75 | 158k | pixel *dst = (pixel *) _dst; | 76 | 158k | const pixel *top = (const pixel *) _top; | 77 | | #if BIT_DEPTH == 8 | 78 | | uint64_t p8a = AV_RN64A(top); | 79 | | uint64_t p8b = AV_RN64A(top + 8); | 80 | | #else | 81 | 158k | pixel4 p4a = AV_RN4PA(top + 0); | 82 | 158k | pixel4 p4b = AV_RN4PA(top + 4); | 83 | 158k | pixel4 p4c = AV_RN4PA(top + 8); | 84 | 158k | pixel4 p4d = AV_RN4PA(top + 12); | 85 | 158k | #endif | 86 | 158k | int y; | 87 | | | 88 | 158k | stride /= sizeof(pixel); | 89 | 2.68M | for (y = 0; y < 16; y++) { | 90 | | #if BIT_DEPTH == 8 | 91 | | AV_WN64A(dst + 0, p8a); | 92 | | AV_WN64A(dst + 8, p8b); | 93 | | #else | 94 | 2.52M | AV_WN4PA(dst + 0, p4a); | 95 | 2.52M | AV_WN4PA(dst + 4, p4b); | 96 | 2.52M | AV_WN4PA(dst + 8, p4c); | 97 | 2.52M | AV_WN4PA(dst + 12, p4d); | 98 | 2.52M | #endif | 99 | 2.52M | dst += stride; | 100 | 2.52M | } | 101 | 158k | } |
vp9dsp_8bpp.c:vert_16x16_c Line | Count | Source | 74 | 97.3k | { | 75 | 97.3k | pixel *dst = (pixel *) _dst; | 76 | 97.3k | const pixel *top = (const pixel *) _top; | 77 | 97.3k | #if BIT_DEPTH == 8 | 78 | 97.3k | uint64_t p8a = AV_RN64A(top); | 79 | 97.3k | uint64_t p8b = AV_RN64A(top + 8); | 80 | | #else | 81 | | pixel4 p4a = AV_RN4PA(top + 0); | 82 | | pixel4 p4b = AV_RN4PA(top + 4); | 83 | | pixel4 p4c = AV_RN4PA(top + 8); | 84 | | pixel4 p4d = AV_RN4PA(top + 12); | 85 | | #endif | 86 | 97.3k | int y; | 87 | | | 88 | 97.3k | stride /= sizeof(pixel); | 89 | 1.65M | for (y = 0; y < 16; y++) { | 90 | 1.55M | #if BIT_DEPTH == 8 | 91 | 1.55M | AV_WN64A(dst + 0, p8a); | 92 | 1.55M | AV_WN64A(dst + 8, p8b); | 93 | | #else | 94 | | AV_WN4PA(dst + 0, p4a); | 95 | | AV_WN4PA(dst + 4, p4b); | 96 | | AV_WN4PA(dst + 8, p4c); | 97 | | AV_WN4PA(dst + 12, p4d); | 98 | | #endif | 99 | 1.55M | dst += stride; | 100 | 1.55M | } | 101 | 97.3k | } |
|
102 | | |
103 | | static void vert_32x32_c(uint8_t *restrict _dst, ptrdiff_t stride, |
104 | | const uint8_t *left, const uint8_t *_top) |
105 | 126k | { |
106 | 126k | pixel *dst = (pixel *) _dst; |
107 | 126k | const pixel *top = (const pixel *) _top; |
108 | | #if BIT_DEPTH == 8 |
109 | 42.2k | uint64_t p8a = AV_RN64A(top); |
110 | 42.2k | uint64_t p8b = AV_RN64A(top + 8); |
111 | 42.2k | uint64_t p8c = AV_RN64A(top + 16); |
112 | 42.2k | uint64_t p8d = AV_RN64A(top + 24); |
113 | | #else |
114 | 84.5k | pixel4 p4a = AV_RN4PA(top + 0); |
115 | 84.5k | pixel4 p4b = AV_RN4PA(top + 4); |
116 | 84.5k | pixel4 p4c = AV_RN4PA(top + 8); |
117 | 84.5k | pixel4 p4d = AV_RN4PA(top + 12); |
118 | 84.5k | pixel4 p4e = AV_RN4PA(top + 16); |
119 | 84.5k | pixel4 p4f = AV_RN4PA(top + 20); |
120 | 84.5k | pixel4 p4g = AV_RN4PA(top + 24); |
121 | 84.5k | pixel4 p4h = AV_RN4PA(top + 28); |
122 | | #endif |
123 | 126k | int y; |
124 | | |
125 | 126k | stride /= sizeof(pixel); |
126 | 4.18M | for (y = 0; y < 32; y++) { |
127 | | #if BIT_DEPTH == 8 |
128 | 1.35M | AV_WN64A(dst + 0, p8a); |
129 | 1.35M | AV_WN64A(dst + 8, p8b); |
130 | 1.35M | AV_WN64A(dst + 16, p8c); |
131 | 1.35M | AV_WN64A(dst + 24, p8d); |
132 | | #else |
133 | 2.70M | AV_WN4PA(dst + 0, p4a); |
134 | 2.70M | AV_WN4PA(dst + 4, p4b); |
135 | 2.70M | AV_WN4PA(dst + 8, p4c); |
136 | 2.70M | AV_WN4PA(dst + 12, p4d); |
137 | 2.70M | AV_WN4PA(dst + 16, p4e); |
138 | 2.70M | AV_WN4PA(dst + 20, p4f); |
139 | 2.70M | AV_WN4PA(dst + 24, p4g); |
140 | 2.70M | AV_WN4PA(dst + 28, p4h); |
141 | | #endif |
142 | 4.05M | dst += stride; |
143 | 4.05M | } |
144 | 126k | } vp9dsp_10bpp.c:vert_32x32_c Line | Count | Source | 105 | 84.5k | { | 106 | 84.5k | pixel *dst = (pixel *) _dst; | 107 | 84.5k | const pixel *top = (const pixel *) _top; | 108 | | #if BIT_DEPTH == 8 | 109 | | uint64_t p8a = AV_RN64A(top); | 110 | | uint64_t p8b = AV_RN64A(top + 8); | 111 | | uint64_t p8c = AV_RN64A(top + 16); | 112 | | uint64_t p8d = AV_RN64A(top + 24); | 113 | | #else | 114 | 84.5k | pixel4 p4a = AV_RN4PA(top + 0); | 115 | 84.5k | pixel4 p4b = AV_RN4PA(top + 4); | 116 | 84.5k | pixel4 p4c = AV_RN4PA(top + 8); | 117 | 84.5k | pixel4 p4d = AV_RN4PA(top + 12); | 118 | 84.5k | pixel4 p4e = AV_RN4PA(top + 16); | 119 | 84.5k | pixel4 p4f = AV_RN4PA(top + 20); | 120 | 84.5k | pixel4 p4g = AV_RN4PA(top + 24); | 121 | 84.5k | pixel4 p4h = AV_RN4PA(top + 28); | 122 | 84.5k | #endif | 123 | 84.5k | int y; | 124 | | | 125 | 84.5k | stride /= sizeof(pixel); | 126 | 2.78M | for (y = 0; y < 32; y++) { | 127 | | #if BIT_DEPTH == 8 | 128 | | AV_WN64A(dst + 0, p8a); | 129 | | AV_WN64A(dst + 8, p8b); | 130 | | AV_WN64A(dst + 16, p8c); | 131 | | AV_WN64A(dst + 24, p8d); | 132 | | #else | 133 | 2.70M | AV_WN4PA(dst + 0, p4a); | 134 | 2.70M | AV_WN4PA(dst + 4, p4b); | 135 | 2.70M | AV_WN4PA(dst + 8, p4c); | 136 | 2.70M | AV_WN4PA(dst + 12, p4d); | 137 | 2.70M | AV_WN4PA(dst + 16, p4e); | 138 | 2.70M | AV_WN4PA(dst + 20, p4f); | 139 | 2.70M | AV_WN4PA(dst + 24, p4g); | 140 | 2.70M | AV_WN4PA(dst + 28, p4h); | 141 | 2.70M | #endif | 142 | 2.70M | dst += stride; | 143 | 2.70M | } | 144 | 84.5k | } |
vp9dsp_8bpp.c:vert_32x32_c Line | Count | Source | 105 | 42.2k | { | 106 | 42.2k | pixel *dst = (pixel *) _dst; | 107 | 42.2k | const pixel *top = (const pixel *) _top; | 108 | 42.2k | #if BIT_DEPTH == 8 | 109 | 42.2k | uint64_t p8a = AV_RN64A(top); | 110 | 42.2k | uint64_t p8b = AV_RN64A(top + 8); | 111 | 42.2k | uint64_t p8c = AV_RN64A(top + 16); | 112 | 42.2k | uint64_t p8d = AV_RN64A(top + 24); | 113 | | #else | 114 | | pixel4 p4a = AV_RN4PA(top + 0); | 115 | | pixel4 p4b = AV_RN4PA(top + 4); | 116 | | pixel4 p4c = AV_RN4PA(top + 8); | 117 | | pixel4 p4d = AV_RN4PA(top + 12); | 118 | | pixel4 p4e = AV_RN4PA(top + 16); | 119 | | pixel4 p4f = AV_RN4PA(top + 20); | 120 | | pixel4 p4g = AV_RN4PA(top + 24); | 121 | | pixel4 p4h = AV_RN4PA(top + 28); | 122 | | #endif | 123 | 42.2k | int y; | 124 | | | 125 | 42.2k | stride /= sizeof(pixel); | 126 | 1.39M | for (y = 0; y < 32; y++) { | 127 | 1.35M | #if BIT_DEPTH == 8 | 128 | 1.35M | AV_WN64A(dst + 0, p8a); | 129 | 1.35M | AV_WN64A(dst + 8, p8b); | 130 | 1.35M | AV_WN64A(dst + 16, p8c); | 131 | 1.35M | AV_WN64A(dst + 24, p8d); | 132 | | #else | 133 | | AV_WN4PA(dst + 0, p4a); | 134 | | AV_WN4PA(dst + 4, p4b); | 135 | | AV_WN4PA(dst + 8, p4c); | 136 | | AV_WN4PA(dst + 12, p4d); | 137 | | AV_WN4PA(dst + 16, p4e); | 138 | | AV_WN4PA(dst + 20, p4f); | 139 | | AV_WN4PA(dst + 24, p4g); | 140 | | AV_WN4PA(dst + 28, p4h); | 141 | | #endif | 142 | 1.35M | dst += stride; | 143 | 1.35M | } | 144 | 42.2k | } |
|
145 | | |
146 | | static void hor_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
147 | | const uint8_t *_left, const uint8_t *top) |
148 | 16.7M | { |
149 | 16.7M | pixel *dst = (pixel *) _dst; |
150 | 16.7M | const pixel *left = (const pixel *) _left; |
151 | | |
152 | 16.7M | stride /= sizeof(pixel); |
153 | 16.7M | AV_WN4PA(dst + stride * 0, PIXEL_SPLAT_X4(left[3])); |
154 | 16.7M | AV_WN4PA(dst + stride * 1, PIXEL_SPLAT_X4(left[2])); |
155 | 16.7M | AV_WN4PA(dst + stride * 2, PIXEL_SPLAT_X4(left[1])); |
156 | 16.7M | AV_WN4PA(dst + stride * 3, PIXEL_SPLAT_X4(left[0])); |
157 | 16.7M | } Line | Count | Source | 148 | 11.3M | { | 149 | 11.3M | pixel *dst = (pixel *) _dst; | 150 | 11.3M | const pixel *left = (const pixel *) _left; | 151 | | | 152 | 11.3M | stride /= sizeof(pixel); | 153 | 11.3M | AV_WN4PA(dst + stride * 0, PIXEL_SPLAT_X4(left[3])); | 154 | 11.3M | AV_WN4PA(dst + stride * 1, PIXEL_SPLAT_X4(left[2])); | 155 | 11.3M | AV_WN4PA(dst + stride * 2, PIXEL_SPLAT_X4(left[1])); | 156 | 11.3M | AV_WN4PA(dst + stride * 3, PIXEL_SPLAT_X4(left[0])); | 157 | 11.3M | } |
Line | Count | Source | 148 | 5.38M | { | 149 | 5.38M | pixel *dst = (pixel *) _dst; | 150 | 5.38M | const pixel *left = (const pixel *) _left; | 151 | | | 152 | 5.38M | stride /= sizeof(pixel); | 153 | 5.38M | AV_WN4PA(dst + stride * 0, PIXEL_SPLAT_X4(left[3])); | 154 | 5.38M | AV_WN4PA(dst + stride * 1, PIXEL_SPLAT_X4(left[2])); | 155 | 5.38M | AV_WN4PA(dst + stride * 2, PIXEL_SPLAT_X4(left[1])); | 156 | 5.38M | AV_WN4PA(dst + stride * 3, PIXEL_SPLAT_X4(left[0])); | 157 | 5.38M | } |
|
158 | | |
159 | | static void hor_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
160 | | const uint8_t *_left, const uint8_t *top) |
161 | 1.43M | { |
162 | 1.43M | pixel *dst = (pixel *) _dst; |
163 | 1.43M | const pixel *left = (const pixel *) _left; |
164 | 1.43M | int y; |
165 | | |
166 | 1.43M | stride /= sizeof(pixel); |
167 | 12.9M | for (y = 0; y < 8; y++) { |
168 | 11.5M | pixel4 p4 = PIXEL_SPLAT_X4(left[7 - y]); |
169 | | |
170 | 11.5M | AV_WN4PA(dst + 0, p4); |
171 | 11.5M | AV_WN4PA(dst + 4, p4); |
172 | 11.5M | dst += stride; |
173 | 11.5M | } |
174 | 1.43M | } Line | Count | Source | 161 | 891k | { | 162 | 891k | pixel *dst = (pixel *) _dst; | 163 | 891k | const pixel *left = (const pixel *) _left; | 164 | 891k | int y; | 165 | | | 166 | 891k | stride /= sizeof(pixel); | 167 | 8.02M | for (y = 0; y < 8; y++) { | 168 | 7.13M | pixel4 p4 = PIXEL_SPLAT_X4(left[7 - y]); | 169 | | | 170 | 7.13M | AV_WN4PA(dst + 0, p4); | 171 | 7.13M | AV_WN4PA(dst + 4, p4); | 172 | 7.13M | dst += stride; | 173 | 7.13M | } | 174 | 891k | } |
Line | Count | Source | 161 | 546k | { | 162 | 546k | pixel *dst = (pixel *) _dst; | 163 | 546k | const pixel *left = (const pixel *) _left; | 164 | 546k | int y; | 165 | | | 166 | 546k | stride /= sizeof(pixel); | 167 | 4.91M | for (y = 0; y < 8; y++) { | 168 | 4.37M | pixel4 p4 = PIXEL_SPLAT_X4(left[7 - y]); | 169 | | | 170 | 4.37M | AV_WN4PA(dst + 0, p4); | 171 | 4.37M | AV_WN4PA(dst + 4, p4); | 172 | 4.37M | dst += stride; | 173 | 4.37M | } | 174 | 546k | } |
|
175 | | |
176 | | static void hor_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
177 | | const uint8_t *_left, const uint8_t *top) |
178 | 354k | { |
179 | 354k | pixel *dst = (pixel *) _dst; |
180 | 354k | const pixel *left = (const pixel *) _left; |
181 | 354k | int y; |
182 | | |
183 | 354k | stride /= sizeof(pixel); |
184 | 6.03M | for (y = 0; y < 16; y++) { |
185 | 5.67M | pixel4 p4 = PIXEL_SPLAT_X4(left[15 - y]); |
186 | | |
187 | 5.67M | AV_WN4PA(dst + 0, p4); |
188 | 5.67M | AV_WN4PA(dst + 4, p4); |
189 | 5.67M | AV_WN4PA(dst + 8, p4); |
190 | 5.67M | AV_WN4PA(dst + 12, p4); |
191 | 5.67M | dst += stride; |
192 | 5.67M | } |
193 | 354k | } vp9dsp_10bpp.c:hor_16x16_c Line | Count | Source | 178 | 216k | { | 179 | 216k | pixel *dst = (pixel *) _dst; | 180 | 216k | const pixel *left = (const pixel *) _left; | 181 | 216k | int y; | 182 | | | 183 | 216k | stride /= sizeof(pixel); | 184 | 3.68M | for (y = 0; y < 16; y++) { | 185 | 3.46M | pixel4 p4 = PIXEL_SPLAT_X4(left[15 - y]); | 186 | | | 187 | 3.46M | AV_WN4PA(dst + 0, p4); | 188 | 3.46M | AV_WN4PA(dst + 4, p4); | 189 | 3.46M | AV_WN4PA(dst + 8, p4); | 190 | 3.46M | AV_WN4PA(dst + 12, p4); | 191 | 3.46M | dst += stride; | 192 | 3.46M | } | 193 | 216k | } |
vp9dsp_8bpp.c:hor_16x16_c Line | Count | Source | 178 | 138k | { | 179 | 138k | pixel *dst = (pixel *) _dst; | 180 | 138k | const pixel *left = (const pixel *) _left; | 181 | 138k | int y; | 182 | | | 183 | 138k | stride /= sizeof(pixel); | 184 | 2.35M | for (y = 0; y < 16; y++) { | 185 | 2.21M | pixel4 p4 = PIXEL_SPLAT_X4(left[15 - y]); | 186 | | | 187 | 2.21M | AV_WN4PA(dst + 0, p4); | 188 | 2.21M | AV_WN4PA(dst + 4, p4); | 189 | 2.21M | AV_WN4PA(dst + 8, p4); | 190 | 2.21M | AV_WN4PA(dst + 12, p4); | 191 | 2.21M | dst += stride; | 192 | 2.21M | } | 193 | 138k | } |
|
194 | | |
195 | | static void hor_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
196 | | const uint8_t *_left, const uint8_t *top) |
197 | 190k | { |
198 | 190k | pixel *dst = (pixel *) _dst; |
199 | 190k | const pixel *left = (const pixel *) _left; |
200 | 190k | int y; |
201 | | |
202 | 190k | stride /= sizeof(pixel); |
203 | 6.30M | for (y = 0; y < 32; y++) { |
204 | 6.10M | pixel4 p4 = PIXEL_SPLAT_X4(left[31 - y]); |
205 | | |
206 | 6.10M | AV_WN4PA(dst + 0, p4); |
207 | 6.10M | AV_WN4PA(dst + 4, p4); |
208 | 6.10M | AV_WN4PA(dst + 8, p4); |
209 | 6.10M | AV_WN4PA(dst + 12, p4); |
210 | 6.10M | AV_WN4PA(dst + 16, p4); |
211 | 6.10M | AV_WN4PA(dst + 20, p4); |
212 | 6.10M | AV_WN4PA(dst + 24, p4); |
213 | 6.10M | AV_WN4PA(dst + 28, p4); |
214 | 6.10M | dst += stride; |
215 | 6.10M | } |
216 | 190k | } vp9dsp_10bpp.c:hor_32x32_c Line | Count | Source | 197 | 99.1k | { | 198 | 99.1k | pixel *dst = (pixel *) _dst; | 199 | 99.1k | const pixel *left = (const pixel *) _left; | 200 | 99.1k | int y; | 201 | | | 202 | 99.1k | stride /= sizeof(pixel); | 203 | 3.27M | for (y = 0; y < 32; y++) { | 204 | 3.17M | pixel4 p4 = PIXEL_SPLAT_X4(left[31 - y]); | 205 | | | 206 | 3.17M | AV_WN4PA(dst + 0, p4); | 207 | 3.17M | AV_WN4PA(dst + 4, p4); | 208 | 3.17M | AV_WN4PA(dst + 8, p4); | 209 | 3.17M | AV_WN4PA(dst + 12, p4); | 210 | 3.17M | AV_WN4PA(dst + 16, p4); | 211 | 3.17M | AV_WN4PA(dst + 20, p4); | 212 | 3.17M | AV_WN4PA(dst + 24, p4); | 213 | 3.17M | AV_WN4PA(dst + 28, p4); | 214 | 3.17M | dst += stride; | 215 | 3.17M | } | 216 | 99.1k | } |
vp9dsp_8bpp.c:hor_32x32_c Line | Count | Source | 197 | 91.7k | { | 198 | 91.7k | pixel *dst = (pixel *) _dst; | 199 | 91.7k | const pixel *left = (const pixel *) _left; | 200 | 91.7k | int y; | 201 | | | 202 | 91.7k | stride /= sizeof(pixel); | 203 | 3.02M | for (y = 0; y < 32; y++) { | 204 | 2.93M | pixel4 p4 = PIXEL_SPLAT_X4(left[31 - y]); | 205 | | | 206 | 2.93M | AV_WN4PA(dst + 0, p4); | 207 | 2.93M | AV_WN4PA(dst + 4, p4); | 208 | 2.93M | AV_WN4PA(dst + 8, p4); | 209 | 2.93M | AV_WN4PA(dst + 12, p4); | 210 | 2.93M | AV_WN4PA(dst + 16, p4); | 211 | 2.93M | AV_WN4PA(dst + 20, p4); | 212 | 2.93M | AV_WN4PA(dst + 24, p4); | 213 | 2.93M | AV_WN4PA(dst + 28, p4); | 214 | 2.93M | dst += stride; | 215 | 2.93M | } | 216 | 91.7k | } |
|
217 | | |
218 | | #endif /* BIT_DEPTH != 12 */ |
219 | | |
220 | | static void tm_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
221 | | const uint8_t *_left, const uint8_t *_top) |
222 | 7.21M | { |
223 | 7.21M | pixel *dst = (pixel *) _dst; |
224 | 7.21M | const pixel *left = (const pixel *) _left; |
225 | 7.21M | const pixel *top = (const pixel *) _top; |
226 | 7.21M | int y, tl = top[-1]; |
227 | | |
228 | 7.21M | stride /= sizeof(pixel); |
229 | 36.0M | for (y = 0; y < 4; y++) { |
230 | 28.8M | int l_m_tl = left[3 - y] - tl; |
231 | | |
232 | 28.8M | dst[0] = av_clip_pixel(top[0] + l_m_tl); |
233 | 28.8M | dst[1] = av_clip_pixel(top[1] + l_m_tl); |
234 | 28.8M | dst[2] = av_clip_pixel(top[2] + l_m_tl); |
235 | 28.8M | dst[3] = av_clip_pixel(top[3] + l_m_tl); |
236 | 28.8M | dst += stride; |
237 | 28.8M | } |
238 | 7.21M | } Line | Count | Source | 222 | 1.10M | { | 223 | 1.10M | pixel *dst = (pixel *) _dst; | 224 | 1.10M | const pixel *left = (const pixel *) _left; | 225 | 1.10M | const pixel *top = (const pixel *) _top; | 226 | 1.10M | int y, tl = top[-1]; | 227 | | | 228 | 1.10M | stride /= sizeof(pixel); | 229 | 5.54M | for (y = 0; y < 4; y++) { | 230 | 4.43M | int l_m_tl = left[3 - y] - tl; | 231 | | | 232 | 4.43M | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 233 | 4.43M | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 234 | 4.43M | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 235 | 4.43M | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 236 | 4.43M | dst += stride; | 237 | 4.43M | } | 238 | 1.10M | } |
Line | Count | Source | 222 | 4.48M | { | 223 | 4.48M | pixel *dst = (pixel *) _dst; | 224 | 4.48M | const pixel *left = (const pixel *) _left; | 225 | 4.48M | const pixel *top = (const pixel *) _top; | 226 | 4.48M | int y, tl = top[-1]; | 227 | | | 228 | 4.48M | stride /= sizeof(pixel); | 229 | 22.4M | for (y = 0; y < 4; y++) { | 230 | 17.9M | int l_m_tl = left[3 - y] - tl; | 231 | | | 232 | 17.9M | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 233 | 17.9M | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 234 | 17.9M | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 235 | 17.9M | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 236 | 17.9M | dst += stride; | 237 | 17.9M | } | 238 | 4.48M | } |
Line | Count | Source | 222 | 1.61M | { | 223 | 1.61M | pixel *dst = (pixel *) _dst; | 224 | 1.61M | const pixel *left = (const pixel *) _left; | 225 | 1.61M | const pixel *top = (const pixel *) _top; | 226 | 1.61M | int y, tl = top[-1]; | 227 | | | 228 | 1.61M | stride /= sizeof(pixel); | 229 | 8.09M | for (y = 0; y < 4; y++) { | 230 | 6.47M | int l_m_tl = left[3 - y] - tl; | 231 | | | 232 | 6.47M | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 233 | 6.47M | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 234 | 6.47M | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 235 | 6.47M | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 236 | 6.47M | dst += stride; | 237 | 6.47M | } | 238 | 1.61M | } |
|
239 | | |
240 | | static void tm_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
241 | | const uint8_t *_left, const uint8_t *_top) |
242 | 425k | { |
243 | 425k | pixel *dst = (pixel *) _dst; |
244 | 425k | const pixel *left = (const pixel *) _left; |
245 | 425k | const pixel *top = (const pixel *) _top; |
246 | 425k | int y, tl = top[-1]; |
247 | | |
248 | 425k | stride /= sizeof(pixel); |
249 | 3.82M | for (y = 0; y < 8; y++) { |
250 | 3.40M | int l_m_tl = left[7 - y] - tl; |
251 | | |
252 | 3.40M | dst[0] = av_clip_pixel(top[0] + l_m_tl); |
253 | 3.40M | dst[1] = av_clip_pixel(top[1] + l_m_tl); |
254 | 3.40M | dst[2] = av_clip_pixel(top[2] + l_m_tl); |
255 | 3.40M | dst[3] = av_clip_pixel(top[3] + l_m_tl); |
256 | 3.40M | dst[4] = av_clip_pixel(top[4] + l_m_tl); |
257 | 3.40M | dst[5] = av_clip_pixel(top[5] + l_m_tl); |
258 | 3.40M | dst[6] = av_clip_pixel(top[6] + l_m_tl); |
259 | 3.40M | dst[7] = av_clip_pixel(top[7] + l_m_tl); |
260 | 3.40M | dst += stride; |
261 | 3.40M | } |
262 | 425k | } Line | Count | Source | 242 | 162k | { | 243 | 162k | pixel *dst = (pixel *) _dst; | 244 | 162k | const pixel *left = (const pixel *) _left; | 245 | 162k | const pixel *top = (const pixel *) _top; | 246 | 162k | int y, tl = top[-1]; | 247 | | | 248 | 162k | stride /= sizeof(pixel); | 249 | 1.45M | for (y = 0; y < 8; y++) { | 250 | 1.29M | int l_m_tl = left[7 - y] - tl; | 251 | | | 252 | 1.29M | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 253 | 1.29M | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 254 | 1.29M | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 255 | 1.29M | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 256 | 1.29M | dst[4] = av_clip_pixel(top[4] + l_m_tl); | 257 | 1.29M | dst[5] = av_clip_pixel(top[5] + l_m_tl); | 258 | 1.29M | dst[6] = av_clip_pixel(top[6] + l_m_tl); | 259 | 1.29M | dst[7] = av_clip_pixel(top[7] + l_m_tl); | 260 | 1.29M | dst += stride; | 261 | 1.29M | } | 262 | 162k | } |
Line | Count | Source | 242 | 118k | { | 243 | 118k | pixel *dst = (pixel *) _dst; | 244 | 118k | const pixel *left = (const pixel *) _left; | 245 | 118k | const pixel *top = (const pixel *) _top; | 246 | 118k | int y, tl = top[-1]; | 247 | | | 248 | 118k | stride /= sizeof(pixel); | 249 | 1.06M | for (y = 0; y < 8; y++) { | 250 | 948k | int l_m_tl = left[7 - y] - tl; | 251 | | | 252 | 948k | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 253 | 948k | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 254 | 948k | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 255 | 948k | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 256 | 948k | dst[4] = av_clip_pixel(top[4] + l_m_tl); | 257 | 948k | dst[5] = av_clip_pixel(top[5] + l_m_tl); | 258 | 948k | dst[6] = av_clip_pixel(top[6] + l_m_tl); | 259 | 948k | dst[7] = av_clip_pixel(top[7] + l_m_tl); | 260 | 948k | dst += stride; | 261 | 948k | } | 262 | 118k | } |
Line | Count | Source | 242 | 144k | { | 243 | 144k | pixel *dst = (pixel *) _dst; | 244 | 144k | const pixel *left = (const pixel *) _left; | 245 | 144k | const pixel *top = (const pixel *) _top; | 246 | 144k | int y, tl = top[-1]; | 247 | | | 248 | 144k | stride /= sizeof(pixel); | 249 | 1.30M | for (y = 0; y < 8; y++) { | 250 | 1.15M | int l_m_tl = left[7 - y] - tl; | 251 | | | 252 | 1.15M | dst[0] = av_clip_pixel(top[0] + l_m_tl); | 253 | 1.15M | dst[1] = av_clip_pixel(top[1] + l_m_tl); | 254 | 1.15M | dst[2] = av_clip_pixel(top[2] + l_m_tl); | 255 | 1.15M | dst[3] = av_clip_pixel(top[3] + l_m_tl); | 256 | 1.15M | dst[4] = av_clip_pixel(top[4] + l_m_tl); | 257 | 1.15M | dst[5] = av_clip_pixel(top[5] + l_m_tl); | 258 | 1.15M | dst[6] = av_clip_pixel(top[6] + l_m_tl); | 259 | 1.15M | dst[7] = av_clip_pixel(top[7] + l_m_tl); | 260 | 1.15M | dst += stride; | 261 | 1.15M | } | 262 | 144k | } |
|
263 | | |
264 | | static void tm_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
265 | | const uint8_t *_left, const uint8_t *_top) |
266 | 119k | { |
267 | 119k | pixel *dst = (pixel *) _dst; |
268 | 119k | const pixel *left = (const pixel *) _left; |
269 | 119k | const pixel *top = (const pixel *) _top; |
270 | 119k | int y, tl = top[-1]; |
271 | | |
272 | 119k | stride /= sizeof(pixel); |
273 | 2.03M | for (y = 0; y < 16; y++) { |
274 | 1.91M | int l_m_tl = left[15 - y] - tl; |
275 | | |
276 | 1.91M | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); |
277 | 1.91M | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); |
278 | 1.91M | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); |
279 | 1.91M | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); |
280 | 1.91M | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); |
281 | 1.91M | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); |
282 | 1.91M | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); |
283 | 1.91M | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); |
284 | 1.91M | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); |
285 | 1.91M | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); |
286 | 1.91M | dst[10] = av_clip_pixel(top[10] + l_m_tl); |
287 | 1.91M | dst[11] = av_clip_pixel(top[11] + l_m_tl); |
288 | 1.91M | dst[12] = av_clip_pixel(top[12] + l_m_tl); |
289 | 1.91M | dst[13] = av_clip_pixel(top[13] + l_m_tl); |
290 | 1.91M | dst[14] = av_clip_pixel(top[14] + l_m_tl); |
291 | 1.91M | dst[15] = av_clip_pixel(top[15] + l_m_tl); |
292 | 1.91M | dst += stride; |
293 | 1.91M | } |
294 | 119k | } vp9dsp_10bpp.c:tm_16x16_c Line | Count | Source | 266 | 33.8k | { | 267 | 33.8k | pixel *dst = (pixel *) _dst; | 268 | 33.8k | const pixel *left = (const pixel *) _left; | 269 | 33.8k | const pixel *top = (const pixel *) _top; | 270 | 33.8k | int y, tl = top[-1]; | 271 | | | 272 | 33.8k | stride /= sizeof(pixel); | 273 | 575k | for (y = 0; y < 16; y++) { | 274 | 541k | int l_m_tl = left[15 - y] - tl; | 275 | | | 276 | 541k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 277 | 541k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 278 | 541k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 279 | 541k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 280 | 541k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 281 | 541k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 282 | 541k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 283 | 541k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 284 | 541k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 285 | 541k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 286 | 541k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 287 | 541k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 288 | 541k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 289 | 541k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 290 | 541k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 291 | 541k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 292 | 541k | dst += stride; | 293 | 541k | } | 294 | 33.8k | } |
vp9dsp_12bpp.c:tm_16x16_c Line | Count | Source | 266 | 38.6k | { | 267 | 38.6k | pixel *dst = (pixel *) _dst; | 268 | 38.6k | const pixel *left = (const pixel *) _left; | 269 | 38.6k | const pixel *top = (const pixel *) _top; | 270 | 38.6k | int y, tl = top[-1]; | 271 | | | 272 | 38.6k | stride /= sizeof(pixel); | 273 | 657k | for (y = 0; y < 16; y++) { | 274 | 618k | int l_m_tl = left[15 - y] - tl; | 275 | | | 276 | 618k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 277 | 618k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 278 | 618k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 279 | 618k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 280 | 618k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 281 | 618k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 282 | 618k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 283 | 618k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 284 | 618k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 285 | 618k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 286 | 618k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 287 | 618k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 288 | 618k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 289 | 618k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 290 | 618k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 291 | 618k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 292 | 618k | dst += stride; | 293 | 618k | } | 294 | 38.6k | } |
Line | Count | Source | 266 | 46.9k | { | 267 | 46.9k | pixel *dst = (pixel *) _dst; | 268 | 46.9k | const pixel *left = (const pixel *) _left; | 269 | 46.9k | const pixel *top = (const pixel *) _top; | 270 | 46.9k | int y, tl = top[-1]; | 271 | | | 272 | 46.9k | stride /= sizeof(pixel); | 273 | 798k | for (y = 0; y < 16; y++) { | 274 | 751k | int l_m_tl = left[15 - y] - tl; | 275 | | | 276 | 751k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 277 | 751k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 278 | 751k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 279 | 751k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 280 | 751k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 281 | 751k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 282 | 751k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 283 | 751k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 284 | 751k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 285 | 751k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 286 | 751k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 287 | 751k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 288 | 751k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 289 | 751k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 290 | 751k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 291 | 751k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 292 | 751k | dst += stride; | 293 | 751k | } | 294 | 46.9k | } |
|
295 | | |
296 | | static void tm_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
297 | | const uint8_t *_left, const uint8_t *_top) |
298 | 57.8k | { |
299 | 57.8k | pixel *dst = (pixel *) _dst; |
300 | 57.8k | const pixel *left = (const pixel *) _left; |
301 | 57.8k | const pixel *top = (const pixel *) _top; |
302 | 57.8k | int y, tl = top[-1]; |
303 | | |
304 | 57.8k | stride /= sizeof(pixel); |
305 | 1.91M | for (y = 0; y < 32; y++) { |
306 | 1.85M | int l_m_tl = left[31 - y] - tl; |
307 | | |
308 | 1.85M | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); |
309 | 1.85M | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); |
310 | 1.85M | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); |
311 | 1.85M | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); |
312 | 1.85M | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); |
313 | 1.85M | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); |
314 | 1.85M | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); |
315 | 1.85M | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); |
316 | 1.85M | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); |
317 | 1.85M | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); |
318 | 1.85M | dst[10] = av_clip_pixel(top[10] + l_m_tl); |
319 | 1.85M | dst[11] = av_clip_pixel(top[11] + l_m_tl); |
320 | 1.85M | dst[12] = av_clip_pixel(top[12] + l_m_tl); |
321 | 1.85M | dst[13] = av_clip_pixel(top[13] + l_m_tl); |
322 | 1.85M | dst[14] = av_clip_pixel(top[14] + l_m_tl); |
323 | 1.85M | dst[15] = av_clip_pixel(top[15] + l_m_tl); |
324 | 1.85M | dst[16] = av_clip_pixel(top[16] + l_m_tl); |
325 | 1.85M | dst[17] = av_clip_pixel(top[17] + l_m_tl); |
326 | 1.85M | dst[18] = av_clip_pixel(top[18] + l_m_tl); |
327 | 1.85M | dst[19] = av_clip_pixel(top[19] + l_m_tl); |
328 | 1.85M | dst[20] = av_clip_pixel(top[20] + l_m_tl); |
329 | 1.85M | dst[21] = av_clip_pixel(top[21] + l_m_tl); |
330 | 1.85M | dst[22] = av_clip_pixel(top[22] + l_m_tl); |
331 | 1.85M | dst[23] = av_clip_pixel(top[23] + l_m_tl); |
332 | 1.85M | dst[24] = av_clip_pixel(top[24] + l_m_tl); |
333 | 1.85M | dst[25] = av_clip_pixel(top[25] + l_m_tl); |
334 | 1.85M | dst[26] = av_clip_pixel(top[26] + l_m_tl); |
335 | 1.85M | dst[27] = av_clip_pixel(top[27] + l_m_tl); |
336 | 1.85M | dst[28] = av_clip_pixel(top[28] + l_m_tl); |
337 | 1.85M | dst[29] = av_clip_pixel(top[29] + l_m_tl); |
338 | 1.85M | dst[30] = av_clip_pixel(top[30] + l_m_tl); |
339 | 1.85M | dst[31] = av_clip_pixel(top[31] + l_m_tl); |
340 | 1.85M | dst += stride; |
341 | 1.85M | } |
342 | 57.8k | } vp9dsp_10bpp.c:tm_32x32_c Line | Count | Source | 298 | 20.6k | { | 299 | 20.6k | pixel *dst = (pixel *) _dst; | 300 | 20.6k | const pixel *left = (const pixel *) _left; | 301 | 20.6k | const pixel *top = (const pixel *) _top; | 302 | 20.6k | int y, tl = top[-1]; | 303 | | | 304 | 20.6k | stride /= sizeof(pixel); | 305 | 682k | for (y = 0; y < 32; y++) { | 306 | 661k | int l_m_tl = left[31 - y] - tl; | 307 | | | 308 | 661k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 309 | 661k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 310 | 661k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 311 | 661k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 312 | 661k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 313 | 661k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 314 | 661k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 315 | 661k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 316 | 661k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 317 | 661k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 318 | 661k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 319 | 661k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 320 | 661k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 321 | 661k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 322 | 661k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 323 | 661k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 324 | 661k | dst[16] = av_clip_pixel(top[16] + l_m_tl); | 325 | 661k | dst[17] = av_clip_pixel(top[17] + l_m_tl); | 326 | 661k | dst[18] = av_clip_pixel(top[18] + l_m_tl); | 327 | 661k | dst[19] = av_clip_pixel(top[19] + l_m_tl); | 328 | 661k | dst[20] = av_clip_pixel(top[20] + l_m_tl); | 329 | 661k | dst[21] = av_clip_pixel(top[21] + l_m_tl); | 330 | 661k | dst[22] = av_clip_pixel(top[22] + l_m_tl); | 331 | 661k | dst[23] = av_clip_pixel(top[23] + l_m_tl); | 332 | 661k | dst[24] = av_clip_pixel(top[24] + l_m_tl); | 333 | 661k | dst[25] = av_clip_pixel(top[25] + l_m_tl); | 334 | 661k | dst[26] = av_clip_pixel(top[26] + l_m_tl); | 335 | 661k | dst[27] = av_clip_pixel(top[27] + l_m_tl); | 336 | 661k | dst[28] = av_clip_pixel(top[28] + l_m_tl); | 337 | 661k | dst[29] = av_clip_pixel(top[29] + l_m_tl); | 338 | 661k | dst[30] = av_clip_pixel(top[30] + l_m_tl); | 339 | 661k | dst[31] = av_clip_pixel(top[31] + l_m_tl); | 340 | 661k | dst += stride; | 341 | 661k | } | 342 | 20.6k | } |
vp9dsp_12bpp.c:tm_32x32_c Line | Count | Source | 298 | 13.3k | { | 299 | 13.3k | pixel *dst = (pixel *) _dst; | 300 | 13.3k | const pixel *left = (const pixel *) _left; | 301 | 13.3k | const pixel *top = (const pixel *) _top; | 302 | 13.3k | int y, tl = top[-1]; | 303 | | | 304 | 13.3k | stride /= sizeof(pixel); | 305 | 439k | for (y = 0; y < 32; y++) { | 306 | 426k | int l_m_tl = left[31 - y] - tl; | 307 | | | 308 | 426k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 309 | 426k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 310 | 426k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 311 | 426k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 312 | 426k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 313 | 426k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 314 | 426k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 315 | 426k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 316 | 426k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 317 | 426k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 318 | 426k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 319 | 426k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 320 | 426k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 321 | 426k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 322 | 426k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 323 | 426k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 324 | 426k | dst[16] = av_clip_pixel(top[16] + l_m_tl); | 325 | 426k | dst[17] = av_clip_pixel(top[17] + l_m_tl); | 326 | 426k | dst[18] = av_clip_pixel(top[18] + l_m_tl); | 327 | 426k | dst[19] = av_clip_pixel(top[19] + l_m_tl); | 328 | 426k | dst[20] = av_clip_pixel(top[20] + l_m_tl); | 329 | 426k | dst[21] = av_clip_pixel(top[21] + l_m_tl); | 330 | 426k | dst[22] = av_clip_pixel(top[22] + l_m_tl); | 331 | 426k | dst[23] = av_clip_pixel(top[23] + l_m_tl); | 332 | 426k | dst[24] = av_clip_pixel(top[24] + l_m_tl); | 333 | 426k | dst[25] = av_clip_pixel(top[25] + l_m_tl); | 334 | 426k | dst[26] = av_clip_pixel(top[26] + l_m_tl); | 335 | 426k | dst[27] = av_clip_pixel(top[27] + l_m_tl); | 336 | 426k | dst[28] = av_clip_pixel(top[28] + l_m_tl); | 337 | 426k | dst[29] = av_clip_pixel(top[29] + l_m_tl); | 338 | 426k | dst[30] = av_clip_pixel(top[30] + l_m_tl); | 339 | 426k | dst[31] = av_clip_pixel(top[31] + l_m_tl); | 340 | 426k | dst += stride; | 341 | 426k | } | 342 | 13.3k | } |
Line | Count | Source | 298 | 23.8k | { | 299 | 23.8k | pixel *dst = (pixel *) _dst; | 300 | 23.8k | const pixel *left = (const pixel *) _left; | 301 | 23.8k | const pixel *top = (const pixel *) _top; | 302 | 23.8k | int y, tl = top[-1]; | 303 | | | 304 | 23.8k | stride /= sizeof(pixel); | 305 | 788k | for (y = 0; y < 32; y++) { | 306 | 764k | int l_m_tl = left[31 - y] - tl; | 307 | | | 308 | 764k | dst[ 0] = av_clip_pixel(top[ 0] + l_m_tl); | 309 | 764k | dst[ 1] = av_clip_pixel(top[ 1] + l_m_tl); | 310 | 764k | dst[ 2] = av_clip_pixel(top[ 2] + l_m_tl); | 311 | 764k | dst[ 3] = av_clip_pixel(top[ 3] + l_m_tl); | 312 | 764k | dst[ 4] = av_clip_pixel(top[ 4] + l_m_tl); | 313 | 764k | dst[ 5] = av_clip_pixel(top[ 5] + l_m_tl); | 314 | 764k | dst[ 6] = av_clip_pixel(top[ 6] + l_m_tl); | 315 | 764k | dst[ 7] = av_clip_pixel(top[ 7] + l_m_tl); | 316 | 764k | dst[ 8] = av_clip_pixel(top[ 8] + l_m_tl); | 317 | 764k | dst[ 9] = av_clip_pixel(top[ 9] + l_m_tl); | 318 | 764k | dst[10] = av_clip_pixel(top[10] + l_m_tl); | 319 | 764k | dst[11] = av_clip_pixel(top[11] + l_m_tl); | 320 | 764k | dst[12] = av_clip_pixel(top[12] + l_m_tl); | 321 | 764k | dst[13] = av_clip_pixel(top[13] + l_m_tl); | 322 | 764k | dst[14] = av_clip_pixel(top[14] + l_m_tl); | 323 | 764k | dst[15] = av_clip_pixel(top[15] + l_m_tl); | 324 | 764k | dst[16] = av_clip_pixel(top[16] + l_m_tl); | 325 | 764k | dst[17] = av_clip_pixel(top[17] + l_m_tl); | 326 | 764k | dst[18] = av_clip_pixel(top[18] + l_m_tl); | 327 | 764k | dst[19] = av_clip_pixel(top[19] + l_m_tl); | 328 | 764k | dst[20] = av_clip_pixel(top[20] + l_m_tl); | 329 | 764k | dst[21] = av_clip_pixel(top[21] + l_m_tl); | 330 | 764k | dst[22] = av_clip_pixel(top[22] + l_m_tl); | 331 | 764k | dst[23] = av_clip_pixel(top[23] + l_m_tl); | 332 | 764k | dst[24] = av_clip_pixel(top[24] + l_m_tl); | 333 | 764k | dst[25] = av_clip_pixel(top[25] + l_m_tl); | 334 | 764k | dst[26] = av_clip_pixel(top[26] + l_m_tl); | 335 | 764k | dst[27] = av_clip_pixel(top[27] + l_m_tl); | 336 | 764k | dst[28] = av_clip_pixel(top[28] + l_m_tl); | 337 | 764k | dst[29] = av_clip_pixel(top[29] + l_m_tl); | 338 | 764k | dst[30] = av_clip_pixel(top[30] + l_m_tl); | 339 | 764k | dst[31] = av_clip_pixel(top[31] + l_m_tl); | 340 | 764k | dst += stride; | 341 | 764k | } | 342 | 23.8k | } |
|
343 | | |
344 | | #if BIT_DEPTH != 12 |
345 | | |
346 | | static void dc_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
347 | | const uint8_t *_left, const uint8_t *_top) |
348 | 320M | { |
349 | 320M | pixel *dst = (pixel *) _dst; |
350 | 320M | const pixel *left = (const pixel *) _left; |
351 | 320M | const pixel *top = (const pixel *) _top; |
352 | 320M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + |
353 | 320M | top[0] + top[1] + top[2] + top[3] + 4) >> 3); |
354 | | |
355 | 320M | stride /= sizeof(pixel); |
356 | 320M | AV_WN4PA(dst + stride * 0, dc); |
357 | 320M | AV_WN4PA(dst + stride * 1, dc); |
358 | 320M | AV_WN4PA(dst + stride * 2, dc); |
359 | 320M | AV_WN4PA(dst + stride * 3, dc); |
360 | 320M | } Line | Count | Source | 348 | 204M | { | 349 | 204M | pixel *dst = (pixel *) _dst; | 350 | 204M | const pixel *left = (const pixel *) _left; | 351 | 204M | const pixel *top = (const pixel *) _top; | 352 | 204M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + | 353 | 204M | top[0] + top[1] + top[2] + top[3] + 4) >> 3); | 354 | | | 355 | 204M | stride /= sizeof(pixel); | 356 | 204M | AV_WN4PA(dst + stride * 0, dc); | 357 | 204M | AV_WN4PA(dst + stride * 1, dc); | 358 | 204M | AV_WN4PA(dst + stride * 2, dc); | 359 | 204M | AV_WN4PA(dst + stride * 3, dc); | 360 | 204M | } |
Line | Count | Source | 348 | 115M | { | 349 | 115M | pixel *dst = (pixel *) _dst; | 350 | 115M | const pixel *left = (const pixel *) _left; | 351 | 115M | const pixel *top = (const pixel *) _top; | 352 | 115M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + | 353 | 115M | top[0] + top[1] + top[2] + top[3] + 4) >> 3); | 354 | | | 355 | 115M | stride /= sizeof(pixel); | 356 | 115M | AV_WN4PA(dst + stride * 0, dc); | 357 | 115M | AV_WN4PA(dst + stride * 1, dc); | 358 | 115M | AV_WN4PA(dst + stride * 2, dc); | 359 | 115M | AV_WN4PA(dst + stride * 3, dc); | 360 | 115M | } |
|
361 | | |
362 | | static void dc_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
363 | | const uint8_t *_left, const uint8_t *_top) |
364 | 6.27M | { |
365 | 6.27M | pixel *dst = (pixel *) _dst; |
366 | 6.27M | const pixel *left = (const pixel *) _left; |
367 | 6.27M | const pixel *top = (const pixel *) _top; |
368 | 6.27M | pixel4 dc = PIXEL_SPLAT_X4 |
369 | 6.27M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + |
370 | 6.27M | left[6] + left[7] + top[0] + top[1] + top[2] + top[3] + |
371 | 6.27M | top[4] + top[5] + top[6] + top[7] + 8) >> 4); |
372 | 6.27M | int y; |
373 | | |
374 | 6.27M | stride /= sizeof(pixel); |
375 | 56.4M | for (y = 0; y < 8; y++) { |
376 | 50.1M | AV_WN4PA(dst + 0, dc); |
377 | 50.1M | AV_WN4PA(dst + 4, dc); |
378 | 50.1M | dst += stride; |
379 | 50.1M | } |
380 | 6.27M | } Line | Count | Source | 364 | 4.27M | { | 365 | 4.27M | pixel *dst = (pixel *) _dst; | 366 | 4.27M | const pixel *left = (const pixel *) _left; | 367 | 4.27M | const pixel *top = (const pixel *) _top; | 368 | 4.27M | pixel4 dc = PIXEL_SPLAT_X4 | 369 | 4.27M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 370 | 4.27M | left[6] + left[7] + top[0] + top[1] + top[2] + top[3] + | 371 | 4.27M | top[4] + top[5] + top[6] + top[7] + 8) >> 4); | 372 | 4.27M | int y; | 373 | | | 374 | 4.27M | stride /= sizeof(pixel); | 375 | 38.4M | for (y = 0; y < 8; y++) { | 376 | 34.2M | AV_WN4PA(dst + 0, dc); | 377 | 34.2M | AV_WN4PA(dst + 4, dc); | 378 | 34.2M | dst += stride; | 379 | 34.2M | } | 380 | 4.27M | } |
Line | Count | Source | 364 | 1.99M | { | 365 | 1.99M | pixel *dst = (pixel *) _dst; | 366 | 1.99M | const pixel *left = (const pixel *) _left; | 367 | 1.99M | const pixel *top = (const pixel *) _top; | 368 | 1.99M | pixel4 dc = PIXEL_SPLAT_X4 | 369 | 1.99M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 370 | 1.99M | left[6] + left[7] + top[0] + top[1] + top[2] + top[3] + | 371 | 1.99M | top[4] + top[5] + top[6] + top[7] + 8) >> 4); | 372 | 1.99M | int y; | 373 | | | 374 | 1.99M | stride /= sizeof(pixel); | 375 | 17.9M | for (y = 0; y < 8; y++) { | 376 | 15.9M | AV_WN4PA(dst + 0, dc); | 377 | 15.9M | AV_WN4PA(dst + 4, dc); | 378 | 15.9M | dst += stride; | 379 | 15.9M | } | 380 | 1.99M | } |
|
381 | | |
382 | | static void dc_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
383 | | const uint8_t *_left, const uint8_t *_top) |
384 | 1.84M | { |
385 | 1.84M | pixel *dst = (pixel *) _dst; |
386 | 1.84M | const pixel *left = (const pixel *) _left; |
387 | 1.84M | const pixel *top = (const pixel *) _top; |
388 | 1.84M | pixel4 dc = PIXEL_SPLAT_X4 |
389 | 1.84M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + |
390 | 1.84M | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + |
391 | 1.84M | left[13] + left[14] + left[15] + top[0] + top[1] + top[2] + top[3] + |
392 | 1.84M | top[4] + top[5] + top[6] + top[7] + top[8] + top[9] + top[10] + |
393 | 1.84M | top[11] + top[12] + top[13] + top[14] + top[15] + 16) >> 5); |
394 | 1.84M | int y; |
395 | | |
396 | 1.84M | stride /= sizeof(pixel); |
397 | 31.4M | for (y = 0; y < 16; y++) { |
398 | 29.5M | AV_WN4PA(dst + 0, dc); |
399 | 29.5M | AV_WN4PA(dst + 4, dc); |
400 | 29.5M | AV_WN4PA(dst + 8, dc); |
401 | 29.5M | AV_WN4PA(dst + 12, dc); |
402 | 29.5M | dst += stride; |
403 | 29.5M | } |
404 | 1.84M | } vp9dsp_10bpp.c:dc_16x16_c Line | Count | Source | 384 | 929k | { | 385 | 929k | pixel *dst = (pixel *) _dst; | 386 | 929k | const pixel *left = (const pixel *) _left; | 387 | 929k | const pixel *top = (const pixel *) _top; | 388 | 929k | pixel4 dc = PIXEL_SPLAT_X4 | 389 | 929k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + | 390 | 929k | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + | 391 | 929k | left[13] + left[14] + left[15] + top[0] + top[1] + top[2] + top[3] + | 392 | 929k | top[4] + top[5] + top[6] + top[7] + top[8] + top[9] + top[10] + | 393 | 929k | top[11] + top[12] + top[13] + top[14] + top[15] + 16) >> 5); | 394 | 929k | int y; | 395 | | | 396 | 929k | stride /= sizeof(pixel); | 397 | 15.8M | for (y = 0; y < 16; y++) { | 398 | 14.8M | AV_WN4PA(dst + 0, dc); | 399 | 14.8M | AV_WN4PA(dst + 4, dc); | 400 | 14.8M | AV_WN4PA(dst + 8, dc); | 401 | 14.8M | AV_WN4PA(dst + 12, dc); | 402 | 14.8M | dst += stride; | 403 | 14.8M | } | 404 | 929k | } |
Line | Count | Source | 384 | 918k | { | 385 | 918k | pixel *dst = (pixel *) _dst; | 386 | 918k | const pixel *left = (const pixel *) _left; | 387 | 918k | const pixel *top = (const pixel *) _top; | 388 | 918k | pixel4 dc = PIXEL_SPLAT_X4 | 389 | 918k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + | 390 | 918k | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + | 391 | 918k | left[13] + left[14] + left[15] + top[0] + top[1] + top[2] + top[3] + | 392 | 918k | top[4] + top[5] + top[6] + top[7] + top[8] + top[9] + top[10] + | 393 | 918k | top[11] + top[12] + top[13] + top[14] + top[15] + 16) >> 5); | 394 | 918k | int y; | 395 | | | 396 | 918k | stride /= sizeof(pixel); | 397 | 15.6M | for (y = 0; y < 16; y++) { | 398 | 14.6M | AV_WN4PA(dst + 0, dc); | 399 | 14.6M | AV_WN4PA(dst + 4, dc); | 400 | 14.6M | AV_WN4PA(dst + 8, dc); | 401 | 14.6M | AV_WN4PA(dst + 12, dc); | 402 | 14.6M | dst += stride; | 403 | 14.6M | } | 404 | 918k | } |
|
405 | | |
406 | | static void dc_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
407 | | const uint8_t *_left, const uint8_t *_top) |
408 | 2.01M | { |
409 | 2.01M | pixel *dst = (pixel *) _dst; |
410 | 2.01M | const pixel *left = (const pixel *) _left; |
411 | 2.01M | const pixel *top = (const pixel *) _top; |
412 | 2.01M | pixel4 dc = PIXEL_SPLAT_X4 |
413 | 2.01M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + |
414 | 2.01M | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + |
415 | 2.01M | left[13] + left[14] + left[15] + left[16] + left[17] + left[18] + |
416 | 2.01M | left[19] + left[20] + left[21] + left[22] + left[23] + left[24] + |
417 | 2.01M | left[25] + left[26] + left[27] + left[28] + left[29] + left[30] + |
418 | 2.01M | left[31] + top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + |
419 | 2.01M | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + top[12] + |
420 | 2.01M | top[13] + top[14] + top[15] + top[16] + top[17] + top[18] + top[19] + |
421 | 2.01M | top[20] + top[21] + top[22] + top[23] + top[24] + top[25] + top[26] + |
422 | 2.01M | top[27] + top[28] + top[29] + top[30] + top[31] + 32) >> 6); |
423 | 2.01M | int y; |
424 | | |
425 | 2.01M | stride /= sizeof(pixel); |
426 | 66.5M | for (y = 0; y < 32; y++) { |
427 | 64.5M | AV_WN4PA(dst + 0, dc); |
428 | 64.5M | AV_WN4PA(dst + 4, dc); |
429 | 64.5M | AV_WN4PA(dst + 8, dc); |
430 | 64.5M | AV_WN4PA(dst + 12, dc); |
431 | 64.5M | AV_WN4PA(dst + 16, dc); |
432 | 64.5M | AV_WN4PA(dst + 20, dc); |
433 | 64.5M | AV_WN4PA(dst + 24, dc); |
434 | 64.5M | AV_WN4PA(dst + 28, dc); |
435 | 64.5M | dst += stride; |
436 | 64.5M | } |
437 | 2.01M | } vp9dsp_10bpp.c:dc_32x32_c Line | Count | Source | 408 | 1.05M | { | 409 | 1.05M | pixel *dst = (pixel *) _dst; | 410 | 1.05M | const pixel *left = (const pixel *) _left; | 411 | 1.05M | const pixel *top = (const pixel *) _top; | 412 | 1.05M | pixel4 dc = PIXEL_SPLAT_X4 | 413 | 1.05M | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + | 414 | 1.05M | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + | 415 | 1.05M | left[13] + left[14] + left[15] + left[16] + left[17] + left[18] + | 416 | 1.05M | left[19] + left[20] + left[21] + left[22] + left[23] + left[24] + | 417 | 1.05M | left[25] + left[26] + left[27] + left[28] + left[29] + left[30] + | 418 | 1.05M | left[31] + top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 419 | 1.05M | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + top[12] + | 420 | 1.05M | top[13] + top[14] + top[15] + top[16] + top[17] + top[18] + top[19] + | 421 | 1.05M | top[20] + top[21] + top[22] + top[23] + top[24] + top[25] + top[26] + | 422 | 1.05M | top[27] + top[28] + top[29] + top[30] + top[31] + 32) >> 6); | 423 | 1.05M | int y; | 424 | | | 425 | 1.05M | stride /= sizeof(pixel); | 426 | 34.7M | for (y = 0; y < 32; y++) { | 427 | 33.6M | AV_WN4PA(dst + 0, dc); | 428 | 33.6M | AV_WN4PA(dst + 4, dc); | 429 | 33.6M | AV_WN4PA(dst + 8, dc); | 430 | 33.6M | AV_WN4PA(dst + 12, dc); | 431 | 33.6M | AV_WN4PA(dst + 16, dc); | 432 | 33.6M | AV_WN4PA(dst + 20, dc); | 433 | 33.6M | AV_WN4PA(dst + 24, dc); | 434 | 33.6M | AV_WN4PA(dst + 28, dc); | 435 | 33.6M | dst += stride; | 436 | 33.6M | } | 437 | 1.05M | } |
Line | Count | Source | 408 | 965k | { | 409 | 965k | pixel *dst = (pixel *) _dst; | 410 | 965k | const pixel *left = (const pixel *) _left; | 411 | 965k | const pixel *top = (const pixel *) _top; | 412 | 965k | pixel4 dc = PIXEL_SPLAT_X4 | 413 | 965k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + left[6] + | 414 | 965k | left[7] + left[8] + left[9] + left[10] + left[11] + left[12] + | 415 | 965k | left[13] + left[14] + left[15] + left[16] + left[17] + left[18] + | 416 | 965k | left[19] + left[20] + left[21] + left[22] + left[23] + left[24] + | 417 | 965k | left[25] + left[26] + left[27] + left[28] + left[29] + left[30] + | 418 | 965k | left[31] + top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 419 | 965k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + top[12] + | 420 | 965k | top[13] + top[14] + top[15] + top[16] + top[17] + top[18] + top[19] + | 421 | 965k | top[20] + top[21] + top[22] + top[23] + top[24] + top[25] + top[26] + | 422 | 965k | top[27] + top[28] + top[29] + top[30] + top[31] + 32) >> 6); | 423 | 965k | int y; | 424 | | | 425 | 965k | stride /= sizeof(pixel); | 426 | 31.8M | for (y = 0; y < 32; y++) { | 427 | 30.8M | AV_WN4PA(dst + 0, dc); | 428 | 30.8M | AV_WN4PA(dst + 4, dc); | 429 | 30.8M | AV_WN4PA(dst + 8, dc); | 430 | 30.8M | AV_WN4PA(dst + 12, dc); | 431 | 30.8M | AV_WN4PA(dst + 16, dc); | 432 | 30.8M | AV_WN4PA(dst + 20, dc); | 433 | 30.8M | AV_WN4PA(dst + 24, dc); | 434 | 30.8M | AV_WN4PA(dst + 28, dc); | 435 | 30.8M | dst += stride; | 436 | 30.8M | } | 437 | 965k | } |
|
438 | | |
439 | | static void dc_left_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
440 | | const uint8_t *_left, const uint8_t *top) |
441 | 29.1M | { |
442 | 29.1M | pixel *dst = (pixel *) _dst; |
443 | 29.1M | const pixel *left = (const pixel *) _left; |
444 | 29.1M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + 2) >> 2); |
445 | | |
446 | 29.1M | stride /= sizeof(pixel); |
447 | 29.1M | AV_WN4PA(dst + stride * 0, dc); |
448 | 29.1M | AV_WN4PA(dst + stride * 1, dc); |
449 | 29.1M | AV_WN4PA(dst + stride * 2, dc); |
450 | 29.1M | AV_WN4PA(dst + stride * 3, dc); |
451 | 29.1M | } vp9dsp_10bpp.c:dc_left_4x4_c Line | Count | Source | 441 | 9.38M | { | 442 | 9.38M | pixel *dst = (pixel *) _dst; | 443 | 9.38M | const pixel *left = (const pixel *) _left; | 444 | 9.38M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + 2) >> 2); | 445 | | | 446 | 9.38M | stride /= sizeof(pixel); | 447 | 9.38M | AV_WN4PA(dst + stride * 0, dc); | 448 | 9.38M | AV_WN4PA(dst + stride * 1, dc); | 449 | 9.38M | AV_WN4PA(dst + stride * 2, dc); | 450 | 9.38M | AV_WN4PA(dst + stride * 3, dc); | 451 | 9.38M | } |
vp9dsp_8bpp.c:dc_left_4x4_c Line | Count | Source | 441 | 19.7M | { | 442 | 19.7M | pixel *dst = (pixel *) _dst; | 443 | 19.7M | const pixel *left = (const pixel *) _left; | 444 | 19.7M | pixel4 dc = PIXEL_SPLAT_X4((left[0] + left[1] + left[2] + left[3] + 2) >> 2); | 445 | | | 446 | 19.7M | stride /= sizeof(pixel); | 447 | 19.7M | AV_WN4PA(dst + stride * 0, dc); | 448 | 19.7M | AV_WN4PA(dst + stride * 1, dc); | 449 | 19.7M | AV_WN4PA(dst + stride * 2, dc); | 450 | 19.7M | AV_WN4PA(dst + stride * 3, dc); | 451 | 19.7M | } |
|
452 | | |
453 | | static void dc_left_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
454 | | const uint8_t *_left, const uint8_t *top) |
455 | 518k | { |
456 | 518k | pixel *dst = (pixel *) _dst; |
457 | 518k | const pixel *left = (const pixel *) _left; |
458 | 518k | pixel4 dc = PIXEL_SPLAT_X4 |
459 | 518k | ((left[0] + left[1] + left[2] + left[3] + |
460 | 518k | left[4] + left[5] + left[6] + left[7] + 4) >> 3); |
461 | 518k | int y; |
462 | | |
463 | 518k | stride /= sizeof(pixel); |
464 | 4.66M | for (y = 0; y < 8; y++) { |
465 | 4.14M | AV_WN4PA(dst + 0, dc); |
466 | 4.14M | AV_WN4PA(dst + 4, dc); |
467 | 4.14M | dst += stride; |
468 | 4.14M | } |
469 | 518k | } vp9dsp_10bpp.c:dc_left_8x8_c Line | Count | Source | 455 | 276k | { | 456 | 276k | pixel *dst = (pixel *) _dst; | 457 | 276k | const pixel *left = (const pixel *) _left; | 458 | 276k | pixel4 dc = PIXEL_SPLAT_X4 | 459 | 276k | ((left[0] + left[1] + left[2] + left[3] + | 460 | 276k | left[4] + left[5] + left[6] + left[7] + 4) >> 3); | 461 | 276k | int y; | 462 | | | 463 | 276k | stride /= sizeof(pixel); | 464 | 2.49M | for (y = 0; y < 8; y++) { | 465 | 2.21M | AV_WN4PA(dst + 0, dc); | 466 | 2.21M | AV_WN4PA(dst + 4, dc); | 467 | 2.21M | dst += stride; | 468 | 2.21M | } | 469 | 276k | } |
vp9dsp_8bpp.c:dc_left_8x8_c Line | Count | Source | 455 | 241k | { | 456 | 241k | pixel *dst = (pixel *) _dst; | 457 | 241k | const pixel *left = (const pixel *) _left; | 458 | 241k | pixel4 dc = PIXEL_SPLAT_X4 | 459 | 241k | ((left[0] + left[1] + left[2] + left[3] + | 460 | 241k | left[4] + left[5] + left[6] + left[7] + 4) >> 3); | 461 | 241k | int y; | 462 | | | 463 | 241k | stride /= sizeof(pixel); | 464 | 2.17M | for (y = 0; y < 8; y++) { | 465 | 1.93M | AV_WN4PA(dst + 0, dc); | 466 | 1.93M | AV_WN4PA(dst + 4, dc); | 467 | 1.93M | dst += stride; | 468 | 1.93M | } | 469 | 241k | } |
|
470 | | |
471 | | static void dc_left_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
472 | | const uint8_t *_left, const uint8_t *top) |
473 | 528k | { |
474 | 528k | pixel *dst = (pixel *) _dst; |
475 | 528k | const pixel *left = (const pixel *) _left; |
476 | 528k | pixel4 dc = PIXEL_SPLAT_X4 |
477 | 528k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + |
478 | 528k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + |
479 | 528k | left[12] + left[13] + left[14] + left[15] + 8) >> 4); |
480 | 528k | int y; |
481 | | |
482 | 528k | stride /= sizeof(pixel); |
483 | 8.98M | for (y = 0; y < 16; y++) { |
484 | 8.45M | AV_WN4PA(dst + 0, dc); |
485 | 8.45M | AV_WN4PA(dst + 4, dc); |
486 | 8.45M | AV_WN4PA(dst + 8, dc); |
487 | 8.45M | AV_WN4PA(dst + 12, dc); |
488 | 8.45M | dst += stride; |
489 | 8.45M | } |
490 | 528k | } vp9dsp_10bpp.c:dc_left_16x16_c Line | Count | Source | 473 | 343k | { | 474 | 343k | pixel *dst = (pixel *) _dst; | 475 | 343k | const pixel *left = (const pixel *) _left; | 476 | 343k | pixel4 dc = PIXEL_SPLAT_X4 | 477 | 343k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 478 | 343k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + | 479 | 343k | left[12] + left[13] + left[14] + left[15] + 8) >> 4); | 480 | 343k | int y; | 481 | | | 482 | 343k | stride /= sizeof(pixel); | 483 | 5.83M | for (y = 0; y < 16; y++) { | 484 | 5.49M | AV_WN4PA(dst + 0, dc); | 485 | 5.49M | AV_WN4PA(dst + 4, dc); | 486 | 5.49M | AV_WN4PA(dst + 8, dc); | 487 | 5.49M | AV_WN4PA(dst + 12, dc); | 488 | 5.49M | dst += stride; | 489 | 5.49M | } | 490 | 343k | } |
vp9dsp_8bpp.c:dc_left_16x16_c Line | Count | Source | 473 | 185k | { | 474 | 185k | pixel *dst = (pixel *) _dst; | 475 | 185k | const pixel *left = (const pixel *) _left; | 476 | 185k | pixel4 dc = PIXEL_SPLAT_X4 | 477 | 185k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 478 | 185k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + | 479 | 185k | left[12] + left[13] + left[14] + left[15] + 8) >> 4); | 480 | 185k | int y; | 481 | | | 482 | 185k | stride /= sizeof(pixel); | 483 | 3.14M | for (y = 0; y < 16; y++) { | 484 | 2.96M | AV_WN4PA(dst + 0, dc); | 485 | 2.96M | AV_WN4PA(dst + 4, dc); | 486 | 2.96M | AV_WN4PA(dst + 8, dc); | 487 | 2.96M | AV_WN4PA(dst + 12, dc); | 488 | 2.96M | dst += stride; | 489 | 2.96M | } | 490 | 185k | } |
|
491 | | |
492 | | static void dc_left_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
493 | | const uint8_t *_left, const uint8_t *top) |
494 | 695k | { |
495 | 695k | pixel *dst = (pixel *) _dst; |
496 | 695k | const pixel *left = (const pixel *) _left; |
497 | 695k | pixel4 dc = PIXEL_SPLAT_X4 |
498 | 695k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + |
499 | 695k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + |
500 | 695k | left[12] + left[13] + left[14] + left[15] + left[16] + left[17] + |
501 | 695k | left[18] + left[19] + left[20] + left[21] + left[22] + left[23] + |
502 | 695k | left[24] + left[25] + left[26] + left[27] + left[28] + left[29] + |
503 | 695k | left[30] + left[31] + 16) >> 5); |
504 | 695k | int y; |
505 | | |
506 | 695k | stride /= sizeof(pixel); |
507 | 22.9M | for (y = 0; y < 32; y++) { |
508 | 22.2M | AV_WN4PA(dst + 0, dc); |
509 | 22.2M | AV_WN4PA(dst + 4, dc); |
510 | 22.2M | AV_WN4PA(dst + 8, dc); |
511 | 22.2M | AV_WN4PA(dst + 12, dc); |
512 | 22.2M | AV_WN4PA(dst + 16, dc); |
513 | 22.2M | AV_WN4PA(dst + 20, dc); |
514 | 22.2M | AV_WN4PA(dst + 24, dc); |
515 | 22.2M | AV_WN4PA(dst + 28, dc); |
516 | 22.2M | dst += stride; |
517 | 22.2M | } |
518 | 695k | } vp9dsp_10bpp.c:dc_left_32x32_c Line | Count | Source | 494 | 288k | { | 495 | 288k | pixel *dst = (pixel *) _dst; | 496 | 288k | const pixel *left = (const pixel *) _left; | 497 | 288k | pixel4 dc = PIXEL_SPLAT_X4 | 498 | 288k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 499 | 288k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + | 500 | 288k | left[12] + left[13] + left[14] + left[15] + left[16] + left[17] + | 501 | 288k | left[18] + left[19] + left[20] + left[21] + left[22] + left[23] + | 502 | 288k | left[24] + left[25] + left[26] + left[27] + left[28] + left[29] + | 503 | 288k | left[30] + left[31] + 16) >> 5); | 504 | 288k | int y; | 505 | | | 506 | 288k | stride /= sizeof(pixel); | 507 | 9.52M | for (y = 0; y < 32; y++) { | 508 | 9.23M | AV_WN4PA(dst + 0, dc); | 509 | 9.23M | AV_WN4PA(dst + 4, dc); | 510 | 9.23M | AV_WN4PA(dst + 8, dc); | 511 | 9.23M | AV_WN4PA(dst + 12, dc); | 512 | 9.23M | AV_WN4PA(dst + 16, dc); | 513 | 9.23M | AV_WN4PA(dst + 20, dc); | 514 | 9.23M | AV_WN4PA(dst + 24, dc); | 515 | 9.23M | AV_WN4PA(dst + 28, dc); | 516 | 9.23M | dst += stride; | 517 | 9.23M | } | 518 | 288k | } |
vp9dsp_8bpp.c:dc_left_32x32_c Line | Count | Source | 494 | 407k | { | 495 | 407k | pixel *dst = (pixel *) _dst; | 496 | 407k | const pixel *left = (const pixel *) _left; | 497 | 407k | pixel4 dc = PIXEL_SPLAT_X4 | 498 | 407k | ((left[0] + left[1] + left[2] + left[3] + left[4] + left[5] + | 499 | 407k | left[6] + left[7] + left[8] + left[9] + left[10] + left[11] + | 500 | 407k | left[12] + left[13] + left[14] + left[15] + left[16] + left[17] + | 501 | 407k | left[18] + left[19] + left[20] + left[21] + left[22] + left[23] + | 502 | 407k | left[24] + left[25] + left[26] + left[27] + left[28] + left[29] + | 503 | 407k | left[30] + left[31] + 16) >> 5); | 504 | 407k | int y; | 505 | | | 506 | 407k | stride /= sizeof(pixel); | 507 | 13.4M | for (y = 0; y < 32; y++) { | 508 | 13.0M | AV_WN4PA(dst + 0, dc); | 509 | 13.0M | AV_WN4PA(dst + 4, dc); | 510 | 13.0M | AV_WN4PA(dst + 8, dc); | 511 | 13.0M | AV_WN4PA(dst + 12, dc); | 512 | 13.0M | AV_WN4PA(dst + 16, dc); | 513 | 13.0M | AV_WN4PA(dst + 20, dc); | 514 | 13.0M | AV_WN4PA(dst + 24, dc); | 515 | 13.0M | AV_WN4PA(dst + 28, dc); | 516 | 13.0M | dst += stride; | 517 | 13.0M | } | 518 | 407k | } |
|
519 | | |
520 | | static void dc_top_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
521 | | const uint8_t *left, const uint8_t *_top) |
522 | 19.8M | { |
523 | 19.8M | pixel *dst = (pixel *) _dst; |
524 | 19.8M | const pixel *top = (const pixel *) _top; |
525 | 19.8M | pixel4 dc = PIXEL_SPLAT_X4((top[0] + top[1] + top[2] + top[3] + 2) >> 2); |
526 | | |
527 | 19.8M | stride /= sizeof(pixel); |
528 | 19.8M | AV_WN4PA(dst + stride * 0, dc); |
529 | 19.8M | AV_WN4PA(dst + stride * 1, dc); |
530 | 19.8M | AV_WN4PA(dst + stride * 2, dc); |
531 | 19.8M | AV_WN4PA(dst + stride * 3, dc); |
532 | 19.8M | } vp9dsp_10bpp.c:dc_top_4x4_c Line | Count | Source | 522 | 15.5M | { | 523 | 15.5M | pixel *dst = (pixel *) _dst; | 524 | 15.5M | const pixel *top = (const pixel *) _top; | 525 | 15.5M | pixel4 dc = PIXEL_SPLAT_X4((top[0] + top[1] + top[2] + top[3] + 2) >> 2); | 526 | | | 527 | 15.5M | stride /= sizeof(pixel); | 528 | 15.5M | AV_WN4PA(dst + stride * 0, dc); | 529 | 15.5M | AV_WN4PA(dst + stride * 1, dc); | 530 | 15.5M | AV_WN4PA(dst + stride * 2, dc); | 531 | 15.5M | AV_WN4PA(dst + stride * 3, dc); | 532 | 15.5M | } |
vp9dsp_8bpp.c:dc_top_4x4_c Line | Count | Source | 522 | 4.22M | { | 523 | 4.22M | pixel *dst = (pixel *) _dst; | 524 | 4.22M | const pixel *top = (const pixel *) _top; | 525 | 4.22M | pixel4 dc = PIXEL_SPLAT_X4((top[0] + top[1] + top[2] + top[3] + 2) >> 2); | 526 | | | 527 | 4.22M | stride /= sizeof(pixel); | 528 | 4.22M | AV_WN4PA(dst + stride * 0, dc); | 529 | 4.22M | AV_WN4PA(dst + stride * 1, dc); | 530 | 4.22M | AV_WN4PA(dst + stride * 2, dc); | 531 | 4.22M | AV_WN4PA(dst + stride * 3, dc); | 532 | 4.22M | } |
|
533 | | |
534 | | static void dc_top_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
535 | | const uint8_t *left, const uint8_t *_top) |
536 | 1.01M | { |
537 | 1.01M | pixel *dst = (pixel *) _dst; |
538 | 1.01M | const pixel *top = (const pixel *) _top; |
539 | 1.01M | pixel4 dc = PIXEL_SPLAT_X4 |
540 | 1.01M | ((top[0] + top[1] + top[2] + top[3] + |
541 | 1.01M | top[4] + top[5] + top[6] + top[7] + 4) >> 3); |
542 | 1.01M | int y; |
543 | | |
544 | 1.01M | stride /= sizeof(pixel); |
545 | 9.14M | for (y = 0; y < 8; y++) { |
546 | 8.12M | AV_WN4PA(dst + 0, dc); |
547 | 8.12M | AV_WN4PA(dst + 4, dc); |
548 | 8.12M | dst += stride; |
549 | 8.12M | } |
550 | 1.01M | } vp9dsp_10bpp.c:dc_top_8x8_c Line | Count | Source | 536 | 696k | { | 537 | 696k | pixel *dst = (pixel *) _dst; | 538 | 696k | const pixel *top = (const pixel *) _top; | 539 | 696k | pixel4 dc = PIXEL_SPLAT_X4 | 540 | 696k | ((top[0] + top[1] + top[2] + top[3] + | 541 | 696k | top[4] + top[5] + top[6] + top[7] + 4) >> 3); | 542 | 696k | int y; | 543 | | | 544 | 696k | stride /= sizeof(pixel); | 545 | 6.27M | for (y = 0; y < 8; y++) { | 546 | 5.57M | AV_WN4PA(dst + 0, dc); | 547 | 5.57M | AV_WN4PA(dst + 4, dc); | 548 | 5.57M | dst += stride; | 549 | 5.57M | } | 550 | 696k | } |
vp9dsp_8bpp.c:dc_top_8x8_c Line | Count | Source | 536 | 319k | { | 537 | 319k | pixel *dst = (pixel *) _dst; | 538 | 319k | const pixel *top = (const pixel *) _top; | 539 | 319k | pixel4 dc = PIXEL_SPLAT_X4 | 540 | 319k | ((top[0] + top[1] + top[2] + top[3] + | 541 | 319k | top[4] + top[5] + top[6] + top[7] + 4) >> 3); | 542 | 319k | int y; | 543 | | | 544 | 319k | stride /= sizeof(pixel); | 545 | 2.87M | for (y = 0; y < 8; y++) { | 546 | 2.55M | AV_WN4PA(dst + 0, dc); | 547 | 2.55M | AV_WN4PA(dst + 4, dc); | 548 | 2.55M | dst += stride; | 549 | 2.55M | } | 550 | 319k | } |
|
551 | | |
552 | | static void dc_top_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
553 | | const uint8_t *left, const uint8_t *_top) |
554 | 692k | { |
555 | 692k | pixel *dst = (pixel *) _dst; |
556 | 692k | const pixel *top = (const pixel *) _top; |
557 | 692k | pixel4 dc = PIXEL_SPLAT_X4 |
558 | 692k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + |
559 | 692k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + |
560 | 692k | top[12] + top[13] + top[14] + top[15] + 8) >> 4); |
561 | 692k | int y; |
562 | | |
563 | 692k | stride /= sizeof(pixel); |
564 | 11.7M | for (y = 0; y < 16; y++) { |
565 | 11.0M | AV_WN4PA(dst + 0, dc); |
566 | 11.0M | AV_WN4PA(dst + 4, dc); |
567 | 11.0M | AV_WN4PA(dst + 8, dc); |
568 | 11.0M | AV_WN4PA(dst + 12, dc); |
569 | 11.0M | dst += stride; |
570 | 11.0M | } |
571 | 692k | } vp9dsp_10bpp.c:dc_top_16x16_c Line | Count | Source | 554 | 255k | { | 555 | 255k | pixel *dst = (pixel *) _dst; | 556 | 255k | const pixel *top = (const pixel *) _top; | 557 | 255k | pixel4 dc = PIXEL_SPLAT_X4 | 558 | 255k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 559 | 255k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + | 560 | 255k | top[12] + top[13] + top[14] + top[15] + 8) >> 4); | 561 | 255k | int y; | 562 | | | 563 | 255k | stride /= sizeof(pixel); | 564 | 4.34M | for (y = 0; y < 16; y++) { | 565 | 4.08M | AV_WN4PA(dst + 0, dc); | 566 | 4.08M | AV_WN4PA(dst + 4, dc); | 567 | 4.08M | AV_WN4PA(dst + 8, dc); | 568 | 4.08M | AV_WN4PA(dst + 12, dc); | 569 | 4.08M | dst += stride; | 570 | 4.08M | } | 571 | 255k | } |
vp9dsp_8bpp.c:dc_top_16x16_c Line | Count | Source | 554 | 437k | { | 555 | 437k | pixel *dst = (pixel *) _dst; | 556 | 437k | const pixel *top = (const pixel *) _top; | 557 | 437k | pixel4 dc = PIXEL_SPLAT_X4 | 558 | 437k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 559 | 437k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + | 560 | 437k | top[12] + top[13] + top[14] + top[15] + 8) >> 4); | 561 | 437k | int y; | 562 | | | 563 | 437k | stride /= sizeof(pixel); | 564 | 7.43M | for (y = 0; y < 16; y++) { | 565 | 6.99M | AV_WN4PA(dst + 0, dc); | 566 | 6.99M | AV_WN4PA(dst + 4, dc); | 567 | 6.99M | AV_WN4PA(dst + 8, dc); | 568 | 6.99M | AV_WN4PA(dst + 12, dc); | 569 | 6.99M | dst += stride; | 570 | 6.99M | } | 571 | 437k | } |
|
572 | | |
573 | | static void dc_top_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
574 | | const uint8_t *left, const uint8_t *_top) |
575 | 768k | { |
576 | 768k | pixel *dst = (pixel *) _dst; |
577 | 768k | const pixel *top = (const pixel *) _top; |
578 | 768k | pixel4 dc = PIXEL_SPLAT_X4 |
579 | 768k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + |
580 | 768k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + |
581 | 768k | top[12] + top[13] + top[14] + top[15] + top[16] + top[17] + |
582 | 768k | top[18] + top[19] + top[20] + top[21] + top[22] + top[23] + |
583 | 768k | top[24] + top[25] + top[26] + top[27] + top[28] + top[29] + |
584 | 768k | top[30] + top[31] + 16) >> 5); |
585 | 768k | int y; |
586 | | |
587 | 768k | stride /= sizeof(pixel); |
588 | 25.3M | for (y = 0; y < 32; y++) { |
589 | 24.5M | AV_WN4PA(dst + 0, dc); |
590 | 24.5M | AV_WN4PA(dst + 4, dc); |
591 | 24.5M | AV_WN4PA(dst + 8, dc); |
592 | 24.5M | AV_WN4PA(dst + 12, dc); |
593 | 24.5M | AV_WN4PA(dst + 16, dc); |
594 | 24.5M | AV_WN4PA(dst + 20, dc); |
595 | 24.5M | AV_WN4PA(dst + 24, dc); |
596 | 24.5M | AV_WN4PA(dst + 28, dc); |
597 | 24.5M | dst += stride; |
598 | 24.5M | } |
599 | 768k | } vp9dsp_10bpp.c:dc_top_32x32_c Line | Count | Source | 575 | 684k | { | 576 | 684k | pixel *dst = (pixel *) _dst; | 577 | 684k | const pixel *top = (const pixel *) _top; | 578 | 684k | pixel4 dc = PIXEL_SPLAT_X4 | 579 | 684k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 580 | 684k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + | 581 | 684k | top[12] + top[13] + top[14] + top[15] + top[16] + top[17] + | 582 | 684k | top[18] + top[19] + top[20] + top[21] + top[22] + top[23] + | 583 | 684k | top[24] + top[25] + top[26] + top[27] + top[28] + top[29] + | 584 | 684k | top[30] + top[31] + 16) >> 5); | 585 | 684k | int y; | 586 | | | 587 | 684k | stride /= sizeof(pixel); | 588 | 22.5M | for (y = 0; y < 32; y++) { | 589 | 21.9M | AV_WN4PA(dst + 0, dc); | 590 | 21.9M | AV_WN4PA(dst + 4, dc); | 591 | 21.9M | AV_WN4PA(dst + 8, dc); | 592 | 21.9M | AV_WN4PA(dst + 12, dc); | 593 | 21.9M | AV_WN4PA(dst + 16, dc); | 594 | 21.9M | AV_WN4PA(dst + 20, dc); | 595 | 21.9M | AV_WN4PA(dst + 24, dc); | 596 | 21.9M | AV_WN4PA(dst + 28, dc); | 597 | 21.9M | dst += stride; | 598 | 21.9M | } | 599 | 684k | } |
vp9dsp_8bpp.c:dc_top_32x32_c Line | Count | Source | 575 | 84.0k | { | 576 | 84.0k | pixel *dst = (pixel *) _dst; | 577 | 84.0k | const pixel *top = (const pixel *) _top; | 578 | 84.0k | pixel4 dc = PIXEL_SPLAT_X4 | 579 | 84.0k | ((top[0] + top[1] + top[2] + top[3] + top[4] + top[5] + | 580 | 84.0k | top[6] + top[7] + top[8] + top[9] + top[10] + top[11] + | 581 | 84.0k | top[12] + top[13] + top[14] + top[15] + top[16] + top[17] + | 582 | 84.0k | top[18] + top[19] + top[20] + top[21] + top[22] + top[23] + | 583 | 84.0k | top[24] + top[25] + top[26] + top[27] + top[28] + top[29] + | 584 | 84.0k | top[30] + top[31] + 16) >> 5); | 585 | 84.0k | int y; | 586 | | | 587 | 84.0k | stride /= sizeof(pixel); | 588 | 2.77M | for (y = 0; y < 32; y++) { | 589 | 2.69M | AV_WN4PA(dst + 0, dc); | 590 | 2.69M | AV_WN4PA(dst + 4, dc); | 591 | 2.69M | AV_WN4PA(dst + 8, dc); | 592 | 2.69M | AV_WN4PA(dst + 12, dc); | 593 | 2.69M | AV_WN4PA(dst + 16, dc); | 594 | 2.69M | AV_WN4PA(dst + 20, dc); | 595 | 2.69M | AV_WN4PA(dst + 24, dc); | 596 | 2.69M | AV_WN4PA(dst + 28, dc); | 597 | 2.69M | dst += stride; | 598 | 2.69M | } | 599 | 84.0k | } |
|
600 | | |
601 | | #endif /* BIT_DEPTH != 12 */ |
602 | | |
603 | | static void dc_128_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
604 | | const uint8_t *left, const uint8_t *top) |
605 | 66.7k | { |
606 | 66.7k | pixel *dst = (pixel *) _dst; |
607 | 66.7k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); |
608 | | |
609 | 66.7k | stride /= sizeof(pixel); |
610 | 66.7k | AV_WN4PA(dst + stride * 0, val); |
611 | 66.7k | AV_WN4PA(dst + stride * 1, val); |
612 | 66.7k | AV_WN4PA(dst + stride * 2, val); |
613 | 66.7k | AV_WN4PA(dst + stride * 3, val); |
614 | 66.7k | } vp9dsp_10bpp.c:dc_128_4x4_c Line | Count | Source | 605 | 14.7k | { | 606 | 14.7k | pixel *dst = (pixel *) _dst; | 607 | 14.7k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 608 | | | 609 | 14.7k | stride /= sizeof(pixel); | 610 | 14.7k | AV_WN4PA(dst + stride * 0, val); | 611 | 14.7k | AV_WN4PA(dst + stride * 1, val); | 612 | 14.7k | AV_WN4PA(dst + stride * 2, val); | 613 | 14.7k | AV_WN4PA(dst + stride * 3, val); | 614 | 14.7k | } |
vp9dsp_12bpp.c:dc_128_4x4_c Line | Count | Source | 605 | 11.7k | { | 606 | 11.7k | pixel *dst = (pixel *) _dst; | 607 | 11.7k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 608 | | | 609 | 11.7k | stride /= sizeof(pixel); | 610 | 11.7k | AV_WN4PA(dst + stride * 0, val); | 611 | 11.7k | AV_WN4PA(dst + stride * 1, val); | 612 | 11.7k | AV_WN4PA(dst + stride * 2, val); | 613 | 11.7k | AV_WN4PA(dst + stride * 3, val); | 614 | 11.7k | } |
vp9dsp_8bpp.c:dc_128_4x4_c Line | Count | Source | 605 | 40.1k | { | 606 | 40.1k | pixel *dst = (pixel *) _dst; | 607 | 40.1k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 608 | | | 609 | 40.1k | stride /= sizeof(pixel); | 610 | 40.1k | AV_WN4PA(dst + stride * 0, val); | 611 | 40.1k | AV_WN4PA(dst + stride * 1, val); | 612 | 40.1k | AV_WN4PA(dst + stride * 2, val); | 613 | 40.1k | AV_WN4PA(dst + stride * 3, val); | 614 | 40.1k | } |
|
615 | | |
616 | | static void dc_128_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
617 | | const uint8_t *left, const uint8_t *top) |
618 | 20.2k | { |
619 | 20.2k | pixel *dst = (pixel *) _dst; |
620 | 20.2k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); |
621 | 20.2k | int y; |
622 | | |
623 | 20.2k | stride /= sizeof(pixel); |
624 | 182k | for (y = 0; y < 8; y++) { |
625 | 161k | AV_WN4PA(dst + 0, val); |
626 | 161k | AV_WN4PA(dst + 4, val); |
627 | 161k | dst += stride; |
628 | 161k | } |
629 | 20.2k | } vp9dsp_10bpp.c:dc_128_8x8_c Line | Count | Source | 618 | 5.49k | { | 619 | 5.49k | pixel *dst = (pixel *) _dst; | 620 | 5.49k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 621 | 5.49k | int y; | 622 | | | 623 | 5.49k | stride /= sizeof(pixel); | 624 | 49.4k | for (y = 0; y < 8; y++) { | 625 | 43.9k | AV_WN4PA(dst + 0, val); | 626 | 43.9k | AV_WN4PA(dst + 4, val); | 627 | 43.9k | dst += stride; | 628 | 43.9k | } | 629 | 5.49k | } |
vp9dsp_12bpp.c:dc_128_8x8_c Line | Count | Source | 618 | 6.27k | { | 619 | 6.27k | pixel *dst = (pixel *) _dst; | 620 | 6.27k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 621 | 6.27k | int y; | 622 | | | 623 | 6.27k | stride /= sizeof(pixel); | 624 | 56.4k | for (y = 0; y < 8; y++) { | 625 | 50.1k | AV_WN4PA(dst + 0, val); | 626 | 50.1k | AV_WN4PA(dst + 4, val); | 627 | 50.1k | dst += stride; | 628 | 50.1k | } | 629 | 6.27k | } |
vp9dsp_8bpp.c:dc_128_8x8_c Line | Count | Source | 618 | 8.48k | { | 619 | 8.48k | pixel *dst = (pixel *) _dst; | 620 | 8.48k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 621 | 8.48k | int y; | 622 | | | 623 | 8.48k | stride /= sizeof(pixel); | 624 | 76.3k | for (y = 0; y < 8; y++) { | 625 | 67.8k | AV_WN4PA(dst + 0, val); | 626 | 67.8k | AV_WN4PA(dst + 4, val); | 627 | 67.8k | dst += stride; | 628 | 67.8k | } | 629 | 8.48k | } |
|
630 | | |
631 | | static void dc_128_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
632 | | const uint8_t *left, const uint8_t *top) |
633 | 9.35k | { |
634 | 9.35k | pixel *dst = (pixel *) _dst; |
635 | 9.35k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); |
636 | 9.35k | int y; |
637 | | |
638 | 9.35k | stride /= sizeof(pixel); |
639 | 159k | for (y = 0; y < 16; y++) { |
640 | 149k | AV_WN4PA(dst + 0, val); |
641 | 149k | AV_WN4PA(dst + 4, val); |
642 | 149k | AV_WN4PA(dst + 8, val); |
643 | 149k | AV_WN4PA(dst + 12, val); |
644 | 149k | dst += stride; |
645 | 149k | } |
646 | 9.35k | } vp9dsp_10bpp.c:dc_128_16x16_c Line | Count | Source | 633 | 1.87k | { | 634 | 1.87k | pixel *dst = (pixel *) _dst; | 635 | 1.87k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 636 | 1.87k | int y; | 637 | | | 638 | 1.87k | stride /= sizeof(pixel); | 639 | 31.8k | for (y = 0; y < 16; y++) { | 640 | 29.9k | AV_WN4PA(dst + 0, val); | 641 | 29.9k | AV_WN4PA(dst + 4, val); | 642 | 29.9k | AV_WN4PA(dst + 8, val); | 643 | 29.9k | AV_WN4PA(dst + 12, val); | 644 | 29.9k | dst += stride; | 645 | 29.9k | } | 646 | 1.87k | } |
vp9dsp_12bpp.c:dc_128_16x16_c Line | Count | Source | 633 | 3.71k | { | 634 | 3.71k | pixel *dst = (pixel *) _dst; | 635 | 3.71k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 636 | 3.71k | int y; | 637 | | | 638 | 3.71k | stride /= sizeof(pixel); | 639 | 63.0k | for (y = 0; y < 16; y++) { | 640 | 59.3k | AV_WN4PA(dst + 0, val); | 641 | 59.3k | AV_WN4PA(dst + 4, val); | 642 | 59.3k | AV_WN4PA(dst + 8, val); | 643 | 59.3k | AV_WN4PA(dst + 12, val); | 644 | 59.3k | dst += stride; | 645 | 59.3k | } | 646 | 3.71k | } |
vp9dsp_8bpp.c:dc_128_16x16_c Line | Count | Source | 633 | 3.77k | { | 634 | 3.77k | pixel *dst = (pixel *) _dst; | 635 | 3.77k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 636 | 3.77k | int y; | 637 | | | 638 | 3.77k | stride /= sizeof(pixel); | 639 | 64.0k | for (y = 0; y < 16; y++) { | 640 | 60.3k | AV_WN4PA(dst + 0, val); | 641 | 60.3k | AV_WN4PA(dst + 4, val); | 642 | 60.3k | AV_WN4PA(dst + 8, val); | 643 | 60.3k | AV_WN4PA(dst + 12, val); | 644 | 60.3k | dst += stride; | 645 | 60.3k | } | 646 | 3.77k | } |
|
647 | | |
648 | | static void dc_128_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
649 | | const uint8_t *left, const uint8_t *top) |
650 | 19.4k | { |
651 | 19.4k | pixel *dst = (pixel *) _dst; |
652 | 19.4k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); |
653 | 19.4k | int y; |
654 | | |
655 | 19.4k | stride /= sizeof(pixel); |
656 | 641k | for (y = 0; y < 32; y++) { |
657 | 622k | AV_WN4PA(dst + 0, val); |
658 | 622k | AV_WN4PA(dst + 4, val); |
659 | 622k | AV_WN4PA(dst + 8, val); |
660 | 622k | AV_WN4PA(dst + 12, val); |
661 | 622k | AV_WN4PA(dst + 16, val); |
662 | 622k | AV_WN4PA(dst + 20, val); |
663 | 622k | AV_WN4PA(dst + 24, val); |
664 | 622k | AV_WN4PA(dst + 28, val); |
665 | 622k | dst += stride; |
666 | 622k | } |
667 | 19.4k | } vp9dsp_10bpp.c:dc_128_32x32_c Line | Count | Source | 650 | 4.63k | { | 651 | 4.63k | pixel *dst = (pixel *) _dst; | 652 | 4.63k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 653 | 4.63k | int y; | 654 | | | 655 | 4.63k | stride /= sizeof(pixel); | 656 | 152k | for (y = 0; y < 32; y++) { | 657 | 148k | AV_WN4PA(dst + 0, val); | 658 | 148k | AV_WN4PA(dst + 4, val); | 659 | 148k | AV_WN4PA(dst + 8, val); | 660 | 148k | AV_WN4PA(dst + 12, val); | 661 | 148k | AV_WN4PA(dst + 16, val); | 662 | 148k | AV_WN4PA(dst + 20, val); | 663 | 148k | AV_WN4PA(dst + 24, val); | 664 | 148k | AV_WN4PA(dst + 28, val); | 665 | 148k | dst += stride; | 666 | 148k | } | 667 | 4.63k | } |
vp9dsp_12bpp.c:dc_128_32x32_c Line | Count | Source | 650 | 10.0k | { | 651 | 10.0k | pixel *dst = (pixel *) _dst; | 652 | 10.0k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 653 | 10.0k | int y; | 654 | | | 655 | 10.0k | stride /= sizeof(pixel); | 656 | 331k | for (y = 0; y < 32; y++) { | 657 | 321k | AV_WN4PA(dst + 0, val); | 658 | 321k | AV_WN4PA(dst + 4, val); | 659 | 321k | AV_WN4PA(dst + 8, val); | 660 | 321k | AV_WN4PA(dst + 12, val); | 661 | 321k | AV_WN4PA(dst + 16, val); | 662 | 321k | AV_WN4PA(dst + 20, val); | 663 | 321k | AV_WN4PA(dst + 24, val); | 664 | 321k | AV_WN4PA(dst + 28, val); | 665 | 321k | dst += stride; | 666 | 321k | } | 667 | 10.0k | } |
vp9dsp_8bpp.c:dc_128_32x32_c Line | Count | Source | 650 | 4.77k | { | 651 | 4.77k | pixel *dst = (pixel *) _dst; | 652 | 4.77k | pixel4 val = PIXEL_SPLAT_X4(128 << (BIT_DEPTH - 8)); | 653 | 4.77k | int y; | 654 | | | 655 | 4.77k | stride /= sizeof(pixel); | 656 | 157k | for (y = 0; y < 32; y++) { | 657 | 152k | AV_WN4PA(dst + 0, val); | 658 | 152k | AV_WN4PA(dst + 4, val); | 659 | 152k | AV_WN4PA(dst + 8, val); | 660 | 152k | AV_WN4PA(dst + 12, val); | 661 | 152k | AV_WN4PA(dst + 16, val); | 662 | 152k | AV_WN4PA(dst + 20, val); | 663 | 152k | AV_WN4PA(dst + 24, val); | 664 | 152k | AV_WN4PA(dst + 28, val); | 665 | 152k | dst += stride; | 666 | 152k | } | 667 | 4.77k | } |
|
668 | | |
669 | | static void dc_127_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
670 | | const uint8_t *left, const uint8_t *top) |
671 | 1.10M | { |
672 | 1.10M | pixel *dst = (pixel *) _dst; |
673 | 1.10M | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); |
674 | | |
675 | 1.10M | stride /= sizeof(pixel); |
676 | 1.10M | AV_WN4PA(dst + stride * 0, val); |
677 | 1.10M | AV_WN4PA(dst + stride * 1, val); |
678 | 1.10M | AV_WN4PA(dst + stride * 2, val); |
679 | 1.10M | AV_WN4PA(dst + stride * 3, val);} vp9dsp_10bpp.c:dc_127_4x4_c Line | Count | Source | 671 | 133k | { | 672 | 133k | pixel *dst = (pixel *) _dst; | 673 | 133k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 674 | | | 675 | 133k | stride /= sizeof(pixel); | 676 | 133k | AV_WN4PA(dst + stride * 0, val); | 677 | 133k | AV_WN4PA(dst + stride * 1, val); | 678 | 133k | AV_WN4PA(dst + stride * 2, val); | 679 | 133k | AV_WN4PA(dst + stride * 3, val);} |
vp9dsp_12bpp.c:dc_127_4x4_c Line | Count | Source | 671 | 285k | { | 672 | 285k | pixel *dst = (pixel *) _dst; | 673 | 285k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 674 | | | 675 | 285k | stride /= sizeof(pixel); | 676 | 285k | AV_WN4PA(dst + stride * 0, val); | 677 | 285k | AV_WN4PA(dst + stride * 1, val); | 678 | 285k | AV_WN4PA(dst + stride * 2, val); | 679 | 285k | AV_WN4PA(dst + stride * 3, val);} |
vp9dsp_8bpp.c:dc_127_4x4_c Line | Count | Source | 671 | 684k | { | 672 | 684k | pixel *dst = (pixel *) _dst; | 673 | 684k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 674 | | | 675 | 684k | stride /= sizeof(pixel); | 676 | 684k | AV_WN4PA(dst + stride * 0, val); | 677 | 684k | AV_WN4PA(dst + stride * 1, val); | 678 | 684k | AV_WN4PA(dst + stride * 2, val); | 679 | 684k | AV_WN4PA(dst + stride * 3, val);} |
|
680 | | |
681 | | static void dc_127_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
682 | | const uint8_t *left, const uint8_t *top) |
683 | 46.9k | { |
684 | 46.9k | pixel *dst = (pixel *) _dst; |
685 | 46.9k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); |
686 | 46.9k | int y; |
687 | | |
688 | 46.9k | stride /= sizeof(pixel); |
689 | 422k | for (y = 0; y < 8; y++) { |
690 | 375k | AV_WN4PA(dst + 0, val); |
691 | 375k | AV_WN4PA(dst + 4, val); |
692 | 375k | dst += stride; |
693 | 375k | } |
694 | 46.9k | } vp9dsp_10bpp.c:dc_127_8x8_c Line | Count | Source | 683 | 8.20k | { | 684 | 8.20k | pixel *dst = (pixel *) _dst; | 685 | 8.20k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 686 | 8.20k | int y; | 687 | | | 688 | 8.20k | stride /= sizeof(pixel); | 689 | 73.8k | for (y = 0; y < 8; y++) { | 690 | 65.6k | AV_WN4PA(dst + 0, val); | 691 | 65.6k | AV_WN4PA(dst + 4, val); | 692 | 65.6k | dst += stride; | 693 | 65.6k | } | 694 | 8.20k | } |
vp9dsp_12bpp.c:dc_127_8x8_c Line | Count | Source | 683 | 8.44k | { | 684 | 8.44k | pixel *dst = (pixel *) _dst; | 685 | 8.44k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 686 | 8.44k | int y; | 687 | | | 688 | 8.44k | stride /= sizeof(pixel); | 689 | 75.9k | for (y = 0; y < 8; y++) { | 690 | 67.5k | AV_WN4PA(dst + 0, val); | 691 | 67.5k | AV_WN4PA(dst + 4, val); | 692 | 67.5k | dst += stride; | 693 | 67.5k | } | 694 | 8.44k | } |
vp9dsp_8bpp.c:dc_127_8x8_c Line | Count | Source | 683 | 30.3k | { | 684 | 30.3k | pixel *dst = (pixel *) _dst; | 685 | 30.3k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 686 | 30.3k | int y; | 687 | | | 688 | 30.3k | stride /= sizeof(pixel); | 689 | 273k | for (y = 0; y < 8; y++) { | 690 | 242k | AV_WN4PA(dst + 0, val); | 691 | 242k | AV_WN4PA(dst + 4, val); | 692 | 242k | dst += stride; | 693 | 242k | } | 694 | 30.3k | } |
|
695 | | |
696 | | static void dc_127_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
697 | | const uint8_t *left, const uint8_t *top) |
698 | 19.1k | { |
699 | 19.1k | pixel *dst = (pixel *) _dst; |
700 | 19.1k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); |
701 | 19.1k | int y; |
702 | | |
703 | 19.1k | stride /= sizeof(pixel); |
704 | 325k | for (y = 0; y < 16; y++) { |
705 | 306k | AV_WN4PA(dst + 0, val); |
706 | 306k | AV_WN4PA(dst + 4, val); |
707 | 306k | AV_WN4PA(dst + 8, val); |
708 | 306k | AV_WN4PA(dst + 12, val); |
709 | 306k | dst += stride; |
710 | 306k | } |
711 | 19.1k | } vp9dsp_10bpp.c:dc_127_16x16_c Line | Count | Source | 698 | 6.47k | { | 699 | 6.47k | pixel *dst = (pixel *) _dst; | 700 | 6.47k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 701 | 6.47k | int y; | 702 | | | 703 | 6.47k | stride /= sizeof(pixel); | 704 | 110k | for (y = 0; y < 16; y++) { | 705 | 103k | AV_WN4PA(dst + 0, val); | 706 | 103k | AV_WN4PA(dst + 4, val); | 707 | 103k | AV_WN4PA(dst + 8, val); | 708 | 103k | AV_WN4PA(dst + 12, val); | 709 | 103k | dst += stride; | 710 | 103k | } | 711 | 6.47k | } |
vp9dsp_12bpp.c:dc_127_16x16_c Line | Count | Source | 698 | 4.22k | { | 699 | 4.22k | pixel *dst = (pixel *) _dst; | 700 | 4.22k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 701 | 4.22k | int y; | 702 | | | 703 | 4.22k | stride /= sizeof(pixel); | 704 | 71.7k | for (y = 0; y < 16; y++) { | 705 | 67.5k | AV_WN4PA(dst + 0, val); | 706 | 67.5k | AV_WN4PA(dst + 4, val); | 707 | 67.5k | AV_WN4PA(dst + 8, val); | 708 | 67.5k | AV_WN4PA(dst + 12, val); | 709 | 67.5k | dst += stride; | 710 | 67.5k | } | 711 | 4.22k | } |
vp9dsp_8bpp.c:dc_127_16x16_c Line | Count | Source | 698 | 8.43k | { | 699 | 8.43k | pixel *dst = (pixel *) _dst; | 700 | 8.43k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 701 | 8.43k | int y; | 702 | | | 703 | 8.43k | stride /= sizeof(pixel); | 704 | 143k | for (y = 0; y < 16; y++) { | 705 | 134k | AV_WN4PA(dst + 0, val); | 706 | 134k | AV_WN4PA(dst + 4, val); | 707 | 134k | AV_WN4PA(dst + 8, val); | 708 | 134k | AV_WN4PA(dst + 12, val); | 709 | 134k | dst += stride; | 710 | 134k | } | 711 | 8.43k | } |
|
712 | | |
713 | | static void dc_127_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
714 | | const uint8_t *left, const uint8_t *top) |
715 | 23.4k | { |
716 | 23.4k | pixel *dst = (pixel *) _dst; |
717 | 23.4k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); |
718 | 23.4k | int y; |
719 | | |
720 | 23.4k | stride /= sizeof(pixel); |
721 | 774k | for (y = 0; y < 32; y++) { |
722 | 750k | AV_WN4PA(dst + 0, val); |
723 | 750k | AV_WN4PA(dst + 4, val); |
724 | 750k | AV_WN4PA(dst + 8, val); |
725 | 750k | AV_WN4PA(dst + 12, val); |
726 | 750k | AV_WN4PA(dst + 16, val); |
727 | 750k | AV_WN4PA(dst + 20, val); |
728 | 750k | AV_WN4PA(dst + 24, val); |
729 | 750k | AV_WN4PA(dst + 28, val); |
730 | 750k | dst += stride; |
731 | 750k | } |
732 | 23.4k | } vp9dsp_10bpp.c:dc_127_32x32_c Line | Count | Source | 715 | 3.51k | { | 716 | 3.51k | pixel *dst = (pixel *) _dst; | 717 | 3.51k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 718 | 3.51k | int y; | 719 | | | 720 | 3.51k | stride /= sizeof(pixel); | 721 | 116k | for (y = 0; y < 32; y++) { | 722 | 112k | AV_WN4PA(dst + 0, val); | 723 | 112k | AV_WN4PA(dst + 4, val); | 724 | 112k | AV_WN4PA(dst + 8, val); | 725 | 112k | AV_WN4PA(dst + 12, val); | 726 | 112k | AV_WN4PA(dst + 16, val); | 727 | 112k | AV_WN4PA(dst + 20, val); | 728 | 112k | AV_WN4PA(dst + 24, val); | 729 | 112k | AV_WN4PA(dst + 28, val); | 730 | 112k | dst += stride; | 731 | 112k | } | 732 | 3.51k | } |
vp9dsp_12bpp.c:dc_127_32x32_c Line | Count | Source | 715 | 3.17k | { | 716 | 3.17k | pixel *dst = (pixel *) _dst; | 717 | 3.17k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 718 | 3.17k | int y; | 719 | | | 720 | 3.17k | stride /= sizeof(pixel); | 721 | 104k | for (y = 0; y < 32; y++) { | 722 | 101k | AV_WN4PA(dst + 0, val); | 723 | 101k | AV_WN4PA(dst + 4, val); | 724 | 101k | AV_WN4PA(dst + 8, val); | 725 | 101k | AV_WN4PA(dst + 12, val); | 726 | 101k | AV_WN4PA(dst + 16, val); | 727 | 101k | AV_WN4PA(dst + 20, val); | 728 | 101k | AV_WN4PA(dst + 24, val); | 729 | 101k | AV_WN4PA(dst + 28, val); | 730 | 101k | dst += stride; | 731 | 101k | } | 732 | 3.17k | } |
vp9dsp_8bpp.c:dc_127_32x32_c Line | Count | Source | 715 | 16.7k | { | 716 | 16.7k | pixel *dst = (pixel *) _dst; | 717 | 16.7k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) - 1); | 718 | 16.7k | int y; | 719 | | | 720 | 16.7k | stride /= sizeof(pixel); | 721 | 553k | for (y = 0; y < 32; y++) { | 722 | 536k | AV_WN4PA(dst + 0, val); | 723 | 536k | AV_WN4PA(dst + 4, val); | 724 | 536k | AV_WN4PA(dst + 8, val); | 725 | 536k | AV_WN4PA(dst + 12, val); | 726 | 536k | AV_WN4PA(dst + 16, val); | 727 | 536k | AV_WN4PA(dst + 20, val); | 728 | 536k | AV_WN4PA(dst + 24, val); | 729 | 536k | AV_WN4PA(dst + 28, val); | 730 | 536k | dst += stride; | 731 | 536k | } | 732 | 16.7k | } |
|
733 | | |
734 | | static void dc_129_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
735 | | const uint8_t *left, const uint8_t *top) |
736 | 1.40M | { |
737 | 1.40M | pixel *dst = (pixel *) _dst; |
738 | 1.40M | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); |
739 | | |
740 | 1.40M | stride /= sizeof(pixel); |
741 | 1.40M | AV_WN4PA(dst + stride * 0, val); |
742 | 1.40M | AV_WN4PA(dst + stride * 1, val); |
743 | 1.40M | AV_WN4PA(dst + stride * 2, val); |
744 | 1.40M | AV_WN4PA(dst + stride * 3, val); |
745 | 1.40M | } vp9dsp_10bpp.c:dc_129_4x4_c Line | Count | Source | 736 | 291k | { | 737 | 291k | pixel *dst = (pixel *) _dst; | 738 | 291k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 739 | | | 740 | 291k | stride /= sizeof(pixel); | 741 | 291k | AV_WN4PA(dst + stride * 0, val); | 742 | 291k | AV_WN4PA(dst + stride * 1, val); | 743 | 291k | AV_WN4PA(dst + stride * 2, val); | 744 | 291k | AV_WN4PA(dst + stride * 3, val); | 745 | 291k | } |
vp9dsp_12bpp.c:dc_129_4x4_c Line | Count | Source | 736 | 830k | { | 737 | 830k | pixel *dst = (pixel *) _dst; | 738 | 830k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 739 | | | 740 | 830k | stride /= sizeof(pixel); | 741 | 830k | AV_WN4PA(dst + stride * 0, val); | 742 | 830k | AV_WN4PA(dst + stride * 1, val); | 743 | 830k | AV_WN4PA(dst + stride * 2, val); | 744 | 830k | AV_WN4PA(dst + stride * 3, val); | 745 | 830k | } |
vp9dsp_8bpp.c:dc_129_4x4_c Line | Count | Source | 736 | 281k | { | 737 | 281k | pixel *dst = (pixel *) _dst; | 738 | 281k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 739 | | | 740 | 281k | stride /= sizeof(pixel); | 741 | 281k | AV_WN4PA(dst + stride * 0, val); | 742 | 281k | AV_WN4PA(dst + stride * 1, val); | 743 | 281k | AV_WN4PA(dst + stride * 2, val); | 744 | 281k | AV_WN4PA(dst + stride * 3, val); | 745 | 281k | } |
|
746 | | |
747 | | static void dc_129_8x8_c(uint8_t *_dst, ptrdiff_t stride, |
748 | | const uint8_t *left, const uint8_t *top) |
749 | 221k | { |
750 | 221k | pixel *dst = (pixel *) _dst; |
751 | 221k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); |
752 | 221k | int y; |
753 | | |
754 | 221k | stride /= sizeof(pixel); |
755 | 1.99M | for (y = 0; y < 8; y++) { |
756 | 1.77M | AV_WN4PA(dst + 0, val); |
757 | 1.77M | AV_WN4PA(dst + 4, val); |
758 | 1.77M | dst += stride; |
759 | 1.77M | } |
760 | 221k | } vp9dsp_10bpp.c:dc_129_8x8_c Line | Count | Source | 749 | 96.7k | { | 750 | 96.7k | pixel *dst = (pixel *) _dst; | 751 | 96.7k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 752 | 96.7k | int y; | 753 | | | 754 | 96.7k | stride /= sizeof(pixel); | 755 | 870k | for (y = 0; y < 8; y++) { | 756 | 774k | AV_WN4PA(dst + 0, val); | 757 | 774k | AV_WN4PA(dst + 4, val); | 758 | 774k | dst += stride; | 759 | 774k | } | 760 | 96.7k | } |
vp9dsp_12bpp.c:dc_129_8x8_c Line | Count | Source | 749 | 80.4k | { | 750 | 80.4k | pixel *dst = (pixel *) _dst; | 751 | 80.4k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 752 | 80.4k | int y; | 753 | | | 754 | 80.4k | stride /= sizeof(pixel); | 755 | 723k | for (y = 0; y < 8; y++) { | 756 | 643k | AV_WN4PA(dst + 0, val); | 757 | 643k | AV_WN4PA(dst + 4, val); | 758 | 643k | dst += stride; | 759 | 643k | } | 760 | 80.4k | } |
vp9dsp_8bpp.c:dc_129_8x8_c Line | Count | Source | 749 | 44.5k | { | 750 | 44.5k | pixel *dst = (pixel *) _dst; | 751 | 44.5k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 752 | 44.5k | int y; | 753 | | | 754 | 44.5k | stride /= sizeof(pixel); | 755 | 401k | for (y = 0; y < 8; y++) { | 756 | 356k | AV_WN4PA(dst + 0, val); | 757 | 356k | AV_WN4PA(dst + 4, val); | 758 | 356k | dst += stride; | 759 | 356k | } | 760 | 44.5k | } |
|
761 | | |
762 | | static void dc_129_16x16_c(uint8_t *_dst, ptrdiff_t stride, |
763 | | const uint8_t *left, const uint8_t *top) |
764 | 89.4k | { |
765 | 89.4k | pixel *dst = (pixel *) _dst; |
766 | 89.4k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); |
767 | 89.4k | int y; |
768 | | |
769 | 89.4k | stride /= sizeof(pixel); |
770 | 1.52M | for (y = 0; y < 16; y++) { |
771 | 1.43M | AV_WN4PA(dst + 0, val); |
772 | 1.43M | AV_WN4PA(dst + 4, val); |
773 | 1.43M | AV_WN4PA(dst + 8, val); |
774 | 1.43M | AV_WN4PA(dst + 12, val); |
775 | 1.43M | dst += stride; |
776 | 1.43M | } |
777 | 89.4k | } vp9dsp_10bpp.c:dc_129_16x16_c Line | Count | Source | 764 | 26.2k | { | 765 | 26.2k | pixel *dst = (pixel *) _dst; | 766 | 26.2k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 767 | 26.2k | int y; | 768 | | | 769 | 26.2k | stride /= sizeof(pixel); | 770 | 446k | for (y = 0; y < 16; y++) { | 771 | 420k | AV_WN4PA(dst + 0, val); | 772 | 420k | AV_WN4PA(dst + 4, val); | 773 | 420k | AV_WN4PA(dst + 8, val); | 774 | 420k | AV_WN4PA(dst + 12, val); | 775 | 420k | dst += stride; | 776 | 420k | } | 777 | 26.2k | } |
vp9dsp_12bpp.c:dc_129_16x16_c Line | Count | Source | 764 | 33.9k | { | 765 | 33.9k | pixel *dst = (pixel *) _dst; | 766 | 33.9k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 767 | 33.9k | int y; | 768 | | | 769 | 33.9k | stride /= sizeof(pixel); | 770 | 577k | for (y = 0; y < 16; y++) { | 771 | 543k | AV_WN4PA(dst + 0, val); | 772 | 543k | AV_WN4PA(dst + 4, val); | 773 | 543k | AV_WN4PA(dst + 8, val); | 774 | 543k | AV_WN4PA(dst + 12, val); | 775 | 543k | dst += stride; | 776 | 543k | } | 777 | 33.9k | } |
vp9dsp_8bpp.c:dc_129_16x16_c Line | Count | Source | 764 | 29.1k | { | 765 | 29.1k | pixel *dst = (pixel *) _dst; | 766 | 29.1k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 767 | 29.1k | int y; | 768 | | | 769 | 29.1k | stride /= sizeof(pixel); | 770 | 496k | for (y = 0; y < 16; y++) { | 771 | 466k | AV_WN4PA(dst + 0, val); | 772 | 466k | AV_WN4PA(dst + 4, val); | 773 | 466k | AV_WN4PA(dst + 8, val); | 774 | 466k | AV_WN4PA(dst + 12, val); | 775 | 466k | dst += stride; | 776 | 466k | } | 777 | 29.1k | } |
|
778 | | |
779 | | static void dc_129_32x32_c(uint8_t *_dst, ptrdiff_t stride, |
780 | | const uint8_t *left, const uint8_t *top) |
781 | 61.1k | { |
782 | 61.1k | pixel *dst = (pixel *) _dst; |
783 | 61.1k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); |
784 | 61.1k | int y; |
785 | | |
786 | 61.1k | stride /= sizeof(pixel); |
787 | 2.01M | for (y = 0; y < 32; y++) { |
788 | 1.95M | AV_WN4PA(dst + 0, val); |
789 | 1.95M | AV_WN4PA(dst + 4, val); |
790 | 1.95M | AV_WN4PA(dst + 8, val); |
791 | 1.95M | AV_WN4PA(dst + 12, val); |
792 | 1.95M | AV_WN4PA(dst + 16, val); |
793 | 1.95M | AV_WN4PA(dst + 20, val); |
794 | 1.95M | AV_WN4PA(dst + 24, val); |
795 | 1.95M | AV_WN4PA(dst + 28, val); |
796 | 1.95M | dst += stride; |
797 | 1.95M | } |
798 | 61.1k | } vp9dsp_10bpp.c:dc_129_32x32_c Line | Count | Source | 781 | 29.9k | { | 782 | 29.9k | pixel *dst = (pixel *) _dst; | 783 | 29.9k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 784 | 29.9k | int y; | 785 | | | 786 | 29.9k | stride /= sizeof(pixel); | 787 | 988k | for (y = 0; y < 32; y++) { | 788 | 958k | AV_WN4PA(dst + 0, val); | 789 | 958k | AV_WN4PA(dst + 4, val); | 790 | 958k | AV_WN4PA(dst + 8, val); | 791 | 958k | AV_WN4PA(dst + 12, val); | 792 | 958k | AV_WN4PA(dst + 16, val); | 793 | 958k | AV_WN4PA(dst + 20, val); | 794 | 958k | AV_WN4PA(dst + 24, val); | 795 | 958k | AV_WN4PA(dst + 28, val); | 796 | 958k | dst += stride; | 797 | 958k | } | 798 | 29.9k | } |
vp9dsp_12bpp.c:dc_129_32x32_c Line | Count | Source | 781 | 22.2k | { | 782 | 22.2k | pixel *dst = (pixel *) _dst; | 783 | 22.2k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 784 | 22.2k | int y; | 785 | | | 786 | 22.2k | stride /= sizeof(pixel); | 787 | 735k | for (y = 0; y < 32; y++) { | 788 | 712k | AV_WN4PA(dst + 0, val); | 789 | 712k | AV_WN4PA(dst + 4, val); | 790 | 712k | AV_WN4PA(dst + 8, val); | 791 | 712k | AV_WN4PA(dst + 12, val); | 792 | 712k | AV_WN4PA(dst + 16, val); | 793 | 712k | AV_WN4PA(dst + 20, val); | 794 | 712k | AV_WN4PA(dst + 24, val); | 795 | 712k | AV_WN4PA(dst + 28, val); | 796 | 712k | dst += stride; | 797 | 712k | } | 798 | 22.2k | } |
vp9dsp_8bpp.c:dc_129_32x32_c Line | Count | Source | 781 | 8.91k | { | 782 | 8.91k | pixel *dst = (pixel *) _dst; | 783 | 8.91k | pixel4 val = PIXEL_SPLAT_X4((128 << (BIT_DEPTH - 8)) + 1); | 784 | 8.91k | int y; | 785 | | | 786 | 8.91k | stride /= sizeof(pixel); | 787 | 294k | for (y = 0; y < 32; y++) { | 788 | 285k | AV_WN4PA(dst + 0, val); | 789 | 285k | AV_WN4PA(dst + 4, val); | 790 | 285k | AV_WN4PA(dst + 8, val); | 791 | 285k | AV_WN4PA(dst + 12, val); | 792 | 285k | AV_WN4PA(dst + 16, val); | 793 | 285k | AV_WN4PA(dst + 20, val); | 794 | 285k | AV_WN4PA(dst + 24, val); | 795 | 285k | AV_WN4PA(dst + 28, val); | 796 | 285k | dst += stride; | 797 | 285k | } | 798 | 8.91k | } |
|
799 | | |
800 | | #if BIT_DEPTH != 12 |
801 | | |
802 | | #if BIT_DEPTH == 8 |
803 | 3.78M | #define memset_bpc memset |
804 | | #else |
805 | 7.41M | static inline void memset_bpc(uint16_t *dst, int val, int len) { |
806 | 7.41M | int n; |
807 | 62.6M | for (n = 0; n < len; n++) { |
808 | 55.2M | dst[n] = val; |
809 | 55.2M | } |
810 | 7.41M | } |
811 | | #endif |
812 | | |
813 | 281M | #define DST(x, y) dst[(x) + (y) * stride] |
814 | | |
815 | | static void diag_downleft_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
816 | | const uint8_t *left, const uint8_t *_top) |
817 | 1.75M | { |
818 | 1.75M | pixel *dst = (pixel *) _dst; |
819 | 1.75M | const pixel *top = (const pixel *) _top; |
820 | 1.75M | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], |
821 | 1.75M | a4 = top[4], a5 = top[5], a6 = top[6], a7 = top[7]; |
822 | | |
823 | 1.75M | stride /= sizeof(pixel); |
824 | 1.75M | DST(0,0) = (a0 + a1 * 2 + a2 + 2) >> 2; |
825 | 1.75M | DST(1,0) = DST(0,1) = (a1 + a2 * 2 + a3 + 2) >> 2; |
826 | 1.75M | DST(2,0) = DST(1,1) = DST(0,2) = (a2 + a3 * 2 + a4 + 2) >> 2; |
827 | 1.75M | DST(3,0) = DST(2,1) = DST(1,2) = DST(0,3) = (a3 + a4 * 2 + a5 + 2) >> 2; |
828 | 1.75M | DST(3,1) = DST(2,2) = DST(1,3) = (a4 + a5 * 2 + a6 + 2) >> 2; |
829 | 1.75M | DST(3,2) = DST(2,3) = (a5 + a6 * 2 + a7 + 2) >> 2; |
830 | 1.75M | DST(3,3) = a7; // note: this is different from vp8 and such |
831 | 1.75M | } vp9dsp_10bpp.c:diag_downleft_4x4_c Line | Count | Source | 817 | 1.27M | { | 818 | 1.27M | pixel *dst = (pixel *) _dst; | 819 | 1.27M | const pixel *top = (const pixel *) _top; | 820 | 1.27M | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 821 | 1.27M | a4 = top[4], a5 = top[5], a6 = top[6], a7 = top[7]; | 822 | | | 823 | 1.27M | stride /= sizeof(pixel); | 824 | 1.27M | DST(0,0) = (a0 + a1 * 2 + a2 + 2) >> 2; | 825 | 1.27M | DST(1,0) = DST(0,1) = (a1 + a2 * 2 + a3 + 2) >> 2; | 826 | 1.27M | DST(2,0) = DST(1,1) = DST(0,2) = (a2 + a3 * 2 + a4 + 2) >> 2; | 827 | 1.27M | DST(3,0) = DST(2,1) = DST(1,2) = DST(0,3) = (a3 + a4 * 2 + a5 + 2) >> 2; | 828 | 1.27M | DST(3,1) = DST(2,2) = DST(1,3) = (a4 + a5 * 2 + a6 + 2) >> 2; | 829 | 1.27M | DST(3,2) = DST(2,3) = (a5 + a6 * 2 + a7 + 2) >> 2; | 830 | 1.27M | DST(3,3) = a7; // note: this is different from vp8 and such | 831 | 1.27M | } |
vp9dsp_8bpp.c:diag_downleft_4x4_c Line | Count | Source | 817 | 474k | { | 818 | 474k | pixel *dst = (pixel *) _dst; | 819 | 474k | const pixel *top = (const pixel *) _top; | 820 | 474k | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 821 | 474k | a4 = top[4], a5 = top[5], a6 = top[6], a7 = top[7]; | 822 | | | 823 | 474k | stride /= sizeof(pixel); | 824 | 474k | DST(0,0) = (a0 + a1 * 2 + a2 + 2) >> 2; | 825 | 474k | DST(1,0) = DST(0,1) = (a1 + a2 * 2 + a3 + 2) >> 2; | 826 | 474k | DST(2,0) = DST(1,1) = DST(0,2) = (a2 + a3 * 2 + a4 + 2) >> 2; | 827 | 474k | DST(3,0) = DST(2,1) = DST(1,2) = DST(0,3) = (a3 + a4 * 2 + a5 + 2) >> 2; | 828 | 474k | DST(3,1) = DST(2,2) = DST(1,3) = (a4 + a5 * 2 + a6 + 2) >> 2; | 829 | 474k | DST(3,2) = DST(2,3) = (a5 + a6 * 2 + a7 + 2) >> 2; | 830 | 474k | DST(3,3) = a7; // note: this is different from vp8 and such | 831 | 474k | } |
|
832 | | |
833 | | #define def_diag_downleft(size) \ |
834 | | static void diag_downleft_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
835 | 302k | const uint8_t *left, const uint8_t *_top) \ |
836 | 302k | { \ |
837 | 302k | pixel *dst = (pixel *) _dst; \ |
838 | 302k | const pixel *top = (const pixel *) _top; \ |
839 | 302k | int i, j; \ |
840 | 302k | pixel v[size - 1]; \ |
841 | 302k | \ |
842 | 302k | stride /= sizeof(pixel); \ |
843 | 3.54M | for (i = 0; i < size - 2; i++) \ |
844 | 3.23M | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ |
845 | 302k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ |
846 | 302k | \ |
847 | 4.14M | for (j = 0; j < size; j++) { \ |
848 | 3.84M | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ |
849 | 3.84M | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ |
850 | 3.84M | } \ |
851 | 302k | } vp9dsp_10bpp.c:diag_downleft_8x8_c Line | Count | Source | 835 | 142k | const uint8_t *left, const uint8_t *_top) \ | 836 | 142k | { \ | 837 | 142k | pixel *dst = (pixel *) _dst; \ | 838 | 142k | const pixel *top = (const pixel *) _top; \ | 839 | 142k | int i, j; \ | 840 | 142k | pixel v[size - 1]; \ | 841 | 142k | \ | 842 | 142k | stride /= sizeof(pixel); \ | 843 | 1.00M | for (i = 0; i < size - 2; i++) \ | 844 | 857k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 142k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 142k | \ | 847 | 1.28M | for (j = 0; j < size; j++) { \ | 848 | 1.14M | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 1.14M | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 1.14M | } \ | 851 | 142k | } |
vp9dsp_10bpp.c:diag_downleft_16x16_c Line | Count | Source | 835 | 45.6k | const uint8_t *left, const uint8_t *_top) \ | 836 | 45.6k | { \ | 837 | 45.6k | pixel *dst = (pixel *) _dst; \ | 838 | 45.6k | const pixel *top = (const pixel *) _top; \ | 839 | 45.6k | int i, j; \ | 840 | 45.6k | pixel v[size - 1]; \ | 841 | 45.6k | \ | 842 | 45.6k | stride /= sizeof(pixel); \ | 843 | 684k | for (i = 0; i < size - 2; i++) \ | 844 | 638k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 45.6k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 45.6k | \ | 847 | 775k | for (j = 0; j < size; j++) { \ | 848 | 729k | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 729k | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 729k | } \ | 851 | 45.6k | } |
vp9dsp_10bpp.c:diag_downleft_32x32_c Line | Count | Source | 835 | 24.0k | const uint8_t *left, const uint8_t *_top) \ | 836 | 24.0k | { \ | 837 | 24.0k | pixel *dst = (pixel *) _dst; \ | 838 | 24.0k | const pixel *top = (const pixel *) _top; \ | 839 | 24.0k | int i, j; \ | 840 | 24.0k | pixel v[size - 1]; \ | 841 | 24.0k | \ | 842 | 24.0k | stride /= sizeof(pixel); \ | 843 | 745k | for (i = 0; i < size - 2; i++) \ | 844 | 721k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 24.0k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 24.0k | \ | 847 | 793k | for (j = 0; j < size; j++) { \ | 848 | 769k | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 769k | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 769k | } \ | 851 | 24.0k | } |
vp9dsp_8bpp.c:diag_downleft_8x8_c Line | Count | Source | 835 | 53.0k | const uint8_t *left, const uint8_t *_top) \ | 836 | 53.0k | { \ | 837 | 53.0k | pixel *dst = (pixel *) _dst; \ | 838 | 53.0k | const pixel *top = (const pixel *) _top; \ | 839 | 53.0k | int i, j; \ | 840 | 53.0k | pixel v[size - 1]; \ | 841 | 53.0k | \ | 842 | 53.0k | stride /= sizeof(pixel); \ | 843 | 371k | for (i = 0; i < size - 2; i++) \ | 844 | 318k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 53.0k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 53.0k | \ | 847 | 477k | for (j = 0; j < size; j++) { \ | 848 | 424k | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 424k | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 424k | } \ | 851 | 53.0k | } |
vp9dsp_8bpp.c:diag_downleft_16x16_c Line | Count | Source | 835 | 25.8k | const uint8_t *left, const uint8_t *_top) \ | 836 | 25.8k | { \ | 837 | 25.8k | pixel *dst = (pixel *) _dst; \ | 838 | 25.8k | const pixel *top = (const pixel *) _top; \ | 839 | 25.8k | int i, j; \ | 840 | 25.8k | pixel v[size - 1]; \ | 841 | 25.8k | \ | 842 | 25.8k | stride /= sizeof(pixel); \ | 843 | 387k | for (i = 0; i < size - 2; i++) \ | 844 | 361k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 25.8k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 25.8k | \ | 847 | 439k | for (j = 0; j < size; j++) { \ | 848 | 413k | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 413k | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 413k | } \ | 851 | 25.8k | } |
vp9dsp_8bpp.c:diag_downleft_32x32_c Line | Count | Source | 835 | 11.4k | const uint8_t *left, const uint8_t *_top) \ | 836 | 11.4k | { \ | 837 | 11.4k | pixel *dst = (pixel *) _dst; \ | 838 | 11.4k | const pixel *top = (const pixel *) _top; \ | 839 | 11.4k | int i, j; \ | 840 | 11.4k | pixel v[size - 1]; \ | 841 | 11.4k | \ | 842 | 11.4k | stride /= sizeof(pixel); \ | 843 | 353k | for (i = 0; i < size - 2; i++) \ | 844 | 342k | v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 845 | 11.4k | v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 846 | 11.4k | \ | 847 | 376k | for (j = 0; j < size; j++) { \ | 848 | 364k | memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \ | 849 | 364k | memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \ | 850 | 364k | } \ | 851 | 11.4k | } |
|
852 | | |
853 | | def_diag_downleft(8) |
854 | | def_diag_downleft(16) |
855 | | def_diag_downleft(32) |
856 | | |
857 | | static void diag_downright_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
858 | | const uint8_t *_left, const uint8_t *_top) |
859 | 3.17M | { |
860 | 3.17M | pixel *dst = (pixel *) _dst; |
861 | 3.17M | const pixel *top = (const pixel *) _top; |
862 | 3.17M | const pixel *left = (const pixel *) _left; |
863 | 3.17M | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], |
864 | 3.17M | l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0]; |
865 | | |
866 | 3.17M | stride /= sizeof(pixel); |
867 | 3.17M | DST(0,3) = (l1 + l2 * 2 + l3 + 2) >> 2; |
868 | 3.17M | DST(0,2) = DST(1,3) = (l0 + l1 * 2 + l2 + 2) >> 2; |
869 | 3.17M | DST(0,1) = DST(1,2) = DST(2,3) = (tl + l0 * 2 + l1 + 2) >> 2; |
870 | 3.17M | DST(0,0) = DST(1,1) = DST(2,2) = DST(3,3) = (l0 + tl * 2 + a0 + 2) >> 2; |
871 | 3.17M | DST(1,0) = DST(2,1) = DST(3,2) = (tl + a0 * 2 + a1 + 2) >> 2; |
872 | 3.17M | DST(2,0) = DST(3,1) = (a0 + a1 * 2 + a2 + 2) >> 2; |
873 | 3.17M | DST(3,0) = (a1 + a2 * 2 + a3 + 2) >> 2; |
874 | 3.17M | } vp9dsp_10bpp.c:diag_downright_4x4_c Line | Count | Source | 859 | 2.33M | { | 860 | 2.33M | pixel *dst = (pixel *) _dst; | 861 | 2.33M | const pixel *top = (const pixel *) _top; | 862 | 2.33M | const pixel *left = (const pixel *) _left; | 863 | 2.33M | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 864 | 2.33M | l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0]; | 865 | | | 866 | 2.33M | stride /= sizeof(pixel); | 867 | 2.33M | DST(0,3) = (l1 + l2 * 2 + l3 + 2) >> 2; | 868 | 2.33M | DST(0,2) = DST(1,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 869 | 2.33M | DST(0,1) = DST(1,2) = DST(2,3) = (tl + l0 * 2 + l1 + 2) >> 2; | 870 | 2.33M | DST(0,0) = DST(1,1) = DST(2,2) = DST(3,3) = (l0 + tl * 2 + a0 + 2) >> 2; | 871 | 2.33M | DST(1,0) = DST(2,1) = DST(3,2) = (tl + a0 * 2 + a1 + 2) >> 2; | 872 | 2.33M | DST(2,0) = DST(3,1) = (a0 + a1 * 2 + a2 + 2) >> 2; | 873 | 2.33M | DST(3,0) = (a1 + a2 * 2 + a3 + 2) >> 2; | 874 | 2.33M | } |
vp9dsp_8bpp.c:diag_downright_4x4_c Line | Count | Source | 859 | 835k | { | 860 | 835k | pixel *dst = (pixel *) _dst; | 861 | 835k | const pixel *top = (const pixel *) _top; | 862 | 835k | const pixel *left = (const pixel *) _left; | 863 | 835k | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 864 | 835k | l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0]; | 865 | | | 866 | 835k | stride /= sizeof(pixel); | 867 | 835k | DST(0,3) = (l1 + l2 * 2 + l3 + 2) >> 2; | 868 | 835k | DST(0,2) = DST(1,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 869 | 835k | DST(0,1) = DST(1,2) = DST(2,3) = (tl + l0 * 2 + l1 + 2) >> 2; | 870 | 835k | DST(0,0) = DST(1,1) = DST(2,2) = DST(3,3) = (l0 + tl * 2 + a0 + 2) >> 2; | 871 | 835k | DST(1,0) = DST(2,1) = DST(3,2) = (tl + a0 * 2 + a1 + 2) >> 2; | 872 | 835k | DST(2,0) = DST(3,1) = (a0 + a1 * 2 + a2 + 2) >> 2; | 873 | 835k | DST(3,0) = (a1 + a2 * 2 + a3 + 2) >> 2; | 874 | 835k | } |
|
875 | | |
876 | | #define def_diag_downright(size) \ |
877 | | static void diag_downright_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
878 | 537k | const uint8_t *_left, const uint8_t *_top) \ |
879 | 537k | { \ |
880 | 537k | pixel *dst = (pixel *) _dst; \ |
881 | 537k | const pixel *top = (const pixel *) _top; \ |
882 | 537k | const pixel *left = (const pixel *) _left; \ |
883 | 537k | int i, j; \ |
884 | 537k | pixel v[size + size - 1]; \ |
885 | 537k | \ |
886 | 537k | stride /= sizeof(pixel); \ |
887 | 6.24M | for (i = 0; i < size - 2; i++) { \ |
888 | 5.70M | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ |
889 | 5.70M | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ |
890 | 5.70M | } \ |
891 | 537k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ |
892 | 537k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ |
893 | 537k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ |
894 | 537k | \ |
895 | 7.31M | for (j = 0; j < size; j++) \ |
896 | 6.78M | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ |
897 | 537k | } vp9dsp_10bpp.c:diag_downright_8x8_c Line | Count | Source | 878 | 242k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 242k | { \ | 880 | 242k | pixel *dst = (pixel *) _dst; \ | 881 | 242k | const pixel *top = (const pixel *) _top; \ | 882 | 242k | const pixel *left = (const pixel *) _left; \ | 883 | 242k | int i, j; \ | 884 | 242k | pixel v[size + size - 1]; \ | 885 | 242k | \ | 886 | 242k | stride /= sizeof(pixel); \ | 887 | 1.69M | for (i = 0; i < size - 2; i++) { \ | 888 | 1.45M | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 1.45M | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 1.45M | } \ | 891 | 242k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 242k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 242k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 242k | \ | 895 | 2.18M | for (j = 0; j < size; j++) \ | 896 | 1.93M | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 242k | } |
vp9dsp_10bpp.c:diag_downright_16x16_c Line | Count | Source | 878 | 79.0k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 79.0k | { \ | 880 | 79.0k | pixel *dst = (pixel *) _dst; \ | 881 | 79.0k | const pixel *top = (const pixel *) _top; \ | 882 | 79.0k | const pixel *left = (const pixel *) _left; \ | 883 | 79.0k | int i, j; \ | 884 | 79.0k | pixel v[size + size - 1]; \ | 885 | 79.0k | \ | 886 | 79.0k | stride /= sizeof(pixel); \ | 887 | 1.18M | for (i = 0; i < size - 2; i++) { \ | 888 | 1.10M | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 1.10M | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 1.10M | } \ | 891 | 79.0k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 79.0k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 79.0k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 79.0k | \ | 895 | 1.34M | for (j = 0; j < size; j++) \ | 896 | 1.26M | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 79.0k | } |
vp9dsp_10bpp.c:diag_downright_32x32_c Line | Count | Source | 878 | 42.0k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 42.0k | { \ | 880 | 42.0k | pixel *dst = (pixel *) _dst; \ | 881 | 42.0k | const pixel *top = (const pixel *) _top; \ | 882 | 42.0k | const pixel *left = (const pixel *) _left; \ | 883 | 42.0k | int i, j; \ | 884 | 42.0k | pixel v[size + size - 1]; \ | 885 | 42.0k | \ | 886 | 42.0k | stride /= sizeof(pixel); \ | 887 | 1.30M | for (i = 0; i < size - 2; i++) { \ | 888 | 1.26M | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 1.26M | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 1.26M | } \ | 891 | 42.0k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 42.0k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 42.0k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 42.0k | \ | 895 | 1.38M | for (j = 0; j < size; j++) \ | 896 | 1.34M | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 42.0k | } |
vp9dsp_8bpp.c:diag_downright_8x8_c Line | Count | Source | 878 | 111k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 111k | { \ | 880 | 111k | pixel *dst = (pixel *) _dst; \ | 881 | 111k | const pixel *top = (const pixel *) _top; \ | 882 | 111k | const pixel *left = (const pixel *) _left; \ | 883 | 111k | int i, j; \ | 884 | 111k | pixel v[size + size - 1]; \ | 885 | 111k | \ | 886 | 111k | stride /= sizeof(pixel); \ | 887 | 779k | for (i = 0; i < size - 2; i++) { \ | 888 | 668k | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 668k | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 668k | } \ | 891 | 111k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 111k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 111k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 111k | \ | 895 | 1.00M | for (j = 0; j < size; j++) \ | 896 | 890k | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 111k | } |
vp9dsp_8bpp.c:diag_downright_16x16_c Line | Count | Source | 878 | 41.8k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 41.8k | { \ | 880 | 41.8k | pixel *dst = (pixel *) _dst; \ | 881 | 41.8k | const pixel *top = (const pixel *) _top; \ | 882 | 41.8k | const pixel *left = (const pixel *) _left; \ | 883 | 41.8k | int i, j; \ | 884 | 41.8k | pixel v[size + size - 1]; \ | 885 | 41.8k | \ | 886 | 41.8k | stride /= sizeof(pixel); \ | 887 | 628k | for (i = 0; i < size - 2; i++) { \ | 888 | 586k | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 586k | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 586k | } \ | 891 | 41.8k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 41.8k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 41.8k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 41.8k | \ | 895 | 712k | for (j = 0; j < size; j++) \ | 896 | 670k | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 41.8k | } |
vp9dsp_8bpp.c:diag_downright_32x32_c Line | Count | Source | 878 | 20.9k | const uint8_t *_left, const uint8_t *_top) \ | 879 | 20.9k | { \ | 880 | 20.9k | pixel *dst = (pixel *) _dst; \ | 881 | 20.9k | const pixel *top = (const pixel *) _top; \ | 882 | 20.9k | const pixel *left = (const pixel *) _left; \ | 883 | 20.9k | int i, j; \ | 884 | 20.9k | pixel v[size + size - 1]; \ | 885 | 20.9k | \ | 886 | 20.9k | stride /= sizeof(pixel); \ | 887 | 649k | for (i = 0; i < size - 2; i++) { \ | 888 | 628k | v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 889 | 628k | v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 890 | 628k | } \ | 891 | 20.9k | v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \ | 892 | 20.9k | v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \ | 893 | 20.9k | v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \ | 894 | 20.9k | \ | 895 | 691k | for (j = 0; j < size; j++) \ | 896 | 670k | memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \ | 897 | 20.9k | } |
|
898 | | |
899 | | def_diag_downright(8) |
900 | | def_diag_downright(16) |
901 | | def_diag_downright(32) |
902 | | |
903 | | static void vert_right_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
904 | | const uint8_t *_left, const uint8_t *_top) |
905 | 2.31M | { |
906 | 2.31M | pixel *dst = (pixel *) _dst; |
907 | 2.31M | const pixel *top = (const pixel *) _top; |
908 | 2.31M | const pixel *left = (const pixel *) _left; |
909 | 2.31M | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], |
910 | 2.31M | l0 = left[3], l1 = left[2], l2 = left[1]; |
911 | | |
912 | 2.31M | stride /= sizeof(pixel); |
913 | 2.31M | DST(0,3) = (l0 + l1 * 2 + l2 + 2) >> 2; |
914 | 2.31M | DST(0,2) = (tl + l0 * 2 + l1 + 2) >> 2; |
915 | 2.31M | DST(0,0) = DST(1,2) = (tl + a0 + 1) >> 1; |
916 | 2.31M | DST(0,1) = DST(1,3) = (l0 + tl * 2 + a0 + 2) >> 2; |
917 | 2.31M | DST(1,0) = DST(2,2) = (a0 + a1 + 1) >> 1; |
918 | 2.31M | DST(1,1) = DST(2,3) = (tl + a0 * 2 + a1 + 2) >> 2; |
919 | 2.31M | DST(2,0) = DST(3,2) = (a1 + a2 + 1) >> 1; |
920 | 2.31M | DST(2,1) = DST(3,3) = (a0 + a1 * 2 + a2 + 2) >> 2; |
921 | 2.31M | DST(3,0) = (a2 + a3 + 1) >> 1; |
922 | 2.31M | DST(3,1) = (a1 + a2 * 2 + a3 + 2) >> 2; |
923 | 2.31M | } vp9dsp_10bpp.c:vert_right_4x4_c Line | Count | Source | 905 | 1.73M | { | 906 | 1.73M | pixel *dst = (pixel *) _dst; | 907 | 1.73M | const pixel *top = (const pixel *) _top; | 908 | 1.73M | const pixel *left = (const pixel *) _left; | 909 | 1.73M | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 910 | 1.73M | l0 = left[3], l1 = left[2], l2 = left[1]; | 911 | | | 912 | 1.73M | stride /= sizeof(pixel); | 913 | 1.73M | DST(0,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 914 | 1.73M | DST(0,2) = (tl + l0 * 2 + l1 + 2) >> 2; | 915 | 1.73M | DST(0,0) = DST(1,2) = (tl + a0 + 1) >> 1; | 916 | 1.73M | DST(0,1) = DST(1,3) = (l0 + tl * 2 + a0 + 2) >> 2; | 917 | 1.73M | DST(1,0) = DST(2,2) = (a0 + a1 + 1) >> 1; | 918 | 1.73M | DST(1,1) = DST(2,3) = (tl + a0 * 2 + a1 + 2) >> 2; | 919 | 1.73M | DST(2,0) = DST(3,2) = (a1 + a2 + 1) >> 1; | 920 | 1.73M | DST(2,1) = DST(3,3) = (a0 + a1 * 2 + a2 + 2) >> 2; | 921 | 1.73M | DST(3,0) = (a2 + a3 + 1) >> 1; | 922 | 1.73M | DST(3,1) = (a1 + a2 * 2 + a3 + 2) >> 2; | 923 | 1.73M | } |
vp9dsp_8bpp.c:vert_right_4x4_c Line | Count | Source | 905 | 584k | { | 906 | 584k | pixel *dst = (pixel *) _dst; | 907 | 584k | const pixel *top = (const pixel *) _top; | 908 | 584k | const pixel *left = (const pixel *) _left; | 909 | 584k | int tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 910 | 584k | l0 = left[3], l1 = left[2], l2 = left[1]; | 911 | | | 912 | 584k | stride /= sizeof(pixel); | 913 | 584k | DST(0,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 914 | 584k | DST(0,2) = (tl + l0 * 2 + l1 + 2) >> 2; | 915 | 584k | DST(0,0) = DST(1,2) = (tl + a0 + 1) >> 1; | 916 | 584k | DST(0,1) = DST(1,3) = (l0 + tl * 2 + a0 + 2) >> 2; | 917 | 584k | DST(1,0) = DST(2,2) = (a0 + a1 + 1) >> 1; | 918 | 584k | DST(1,1) = DST(2,3) = (tl + a0 * 2 + a1 + 2) >> 2; | 919 | 584k | DST(2,0) = DST(3,2) = (a1 + a2 + 1) >> 1; | 920 | 584k | DST(2,1) = DST(3,3) = (a0 + a1 * 2 + a2 + 2) >> 2; | 921 | 584k | DST(3,0) = (a2 + a3 + 1) >> 1; | 922 | 584k | DST(3,1) = (a1 + a2 * 2 + a3 + 2) >> 2; | 923 | 584k | } |
|
924 | | |
925 | | #define def_vert_right(size) \ |
926 | | static void vert_right_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
927 | 385k | const uint8_t *_left, const uint8_t *_top) \ |
928 | 385k | { \ |
929 | 385k | pixel *dst = (pixel *) _dst; \ |
930 | 385k | const pixel *top = (const pixel *) _top; \ |
931 | 385k | const pixel *left = (const pixel *) _left; \ |
932 | 385k | int i, j; \ |
933 | 385k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ |
934 | 385k | \ |
935 | 385k | stride /= sizeof(pixel); \ |
936 | 1.83M | for (i = 0; i < size/2 - 2; i++) { \ |
937 | 1.45M | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ |
938 | 1.45M | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ |
939 | 1.45M | } \ |
940 | 385k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ |
941 | 385k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ |
942 | 385k | \ |
943 | 385k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ |
944 | 385k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ |
945 | 4.44M | for (i = 0; i < size - 1; i++) { \ |
946 | 4.05M | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ |
947 | 4.05M | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ |
948 | 4.05M | } \ |
949 | 385k | \ |
950 | 2.60M | for (j = 0; j < size / 2; j++) { \ |
951 | 2.22M | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ |
952 | 2.22M | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ |
953 | 2.22M | } \ |
954 | 385k | } vp9dsp_10bpp.c:vert_right_8x8_c Line | Count | Source | 927 | 223k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 223k | { \ | 929 | 223k | pixel *dst = (pixel *) _dst; \ | 930 | 223k | const pixel *top = (const pixel *) _top; \ | 931 | 223k | const pixel *left = (const pixel *) _left; \ | 932 | 223k | int i, j; \ | 933 | 223k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 223k | \ | 935 | 223k | stride /= sizeof(pixel); \ | 936 | 669k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 446k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 446k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 446k | } \ | 940 | 223k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 223k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 223k | \ | 943 | 223k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 223k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 1.78M | for (i = 0; i < size - 1; i++) { \ | 946 | 1.56M | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 1.56M | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 1.56M | } \ | 949 | 223k | \ | 950 | 1.11M | for (j = 0; j < size / 2; j++) { \ | 951 | 893k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 893k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 893k | } \ | 954 | 223k | } |
vp9dsp_10bpp.c:vert_right_16x16_c Line | Count | Source | 927 | 44.7k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 44.7k | { \ | 929 | 44.7k | pixel *dst = (pixel *) _dst; \ | 930 | 44.7k | const pixel *top = (const pixel *) _top; \ | 931 | 44.7k | const pixel *left = (const pixel *) _left; \ | 932 | 44.7k | int i, j; \ | 933 | 44.7k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 44.7k | \ | 935 | 44.7k | stride /= sizeof(pixel); \ | 936 | 313k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 268k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 268k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 268k | } \ | 940 | 44.7k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 44.7k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 44.7k | \ | 943 | 44.7k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 44.7k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 716k | for (i = 0; i < size - 1; i++) { \ | 946 | 671k | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 671k | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 671k | } \ | 949 | 44.7k | \ | 950 | 402k | for (j = 0; j < size / 2; j++) { \ | 951 | 358k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 358k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 358k | } \ | 954 | 44.7k | } |
vp9dsp_10bpp.c:vert_right_32x32_c Line | Count | Source | 927 | 22.8k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 22.8k | { \ | 929 | 22.8k | pixel *dst = (pixel *) _dst; \ | 930 | 22.8k | const pixel *top = (const pixel *) _top; \ | 931 | 22.8k | const pixel *left = (const pixel *) _left; \ | 932 | 22.8k | int i, j; \ | 933 | 22.8k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 22.8k | \ | 935 | 22.8k | stride /= sizeof(pixel); \ | 936 | 342k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 319k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 319k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 319k | } \ | 940 | 22.8k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 22.8k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 22.8k | \ | 943 | 22.8k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 22.8k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 731k | for (i = 0; i < size - 1; i++) { \ | 946 | 708k | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 708k | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 708k | } \ | 949 | 22.8k | \ | 950 | 388k | for (j = 0; j < size / 2; j++) { \ | 951 | 365k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 365k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 365k | } \ | 954 | 22.8k | } |
vp9dsp_8bpp.c:vert_right_8x8_c Line | Count | Source | 927 | 61.4k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 61.4k | { \ | 929 | 61.4k | pixel *dst = (pixel *) _dst; \ | 930 | 61.4k | const pixel *top = (const pixel *) _top; \ | 931 | 61.4k | const pixel *left = (const pixel *) _left; \ | 932 | 61.4k | int i, j; \ | 933 | 61.4k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 61.4k | \ | 935 | 61.4k | stride /= sizeof(pixel); \ | 936 | 184k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 122k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 122k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 122k | } \ | 940 | 61.4k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 61.4k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 61.4k | \ | 943 | 61.4k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 61.4k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 491k | for (i = 0; i < size - 1; i++) { \ | 946 | 430k | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 430k | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 430k | } \ | 949 | 61.4k | \ | 950 | 307k | for (j = 0; j < size / 2; j++) { \ | 951 | 245k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 245k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 245k | } \ | 954 | 61.4k | } |
vp9dsp_8bpp.c:vert_right_16x16_c Line | Count | Source | 927 | 21.8k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 21.8k | { \ | 929 | 21.8k | pixel *dst = (pixel *) _dst; \ | 930 | 21.8k | const pixel *top = (const pixel *) _top; \ | 931 | 21.8k | const pixel *left = (const pixel *) _left; \ | 932 | 21.8k | int i, j; \ | 933 | 21.8k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 21.8k | \ | 935 | 21.8k | stride /= sizeof(pixel); \ | 936 | 153k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 131k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 131k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 131k | } \ | 940 | 21.8k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 21.8k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 21.8k | \ | 943 | 21.8k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 21.8k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 349k | for (i = 0; i < size - 1; i++) { \ | 946 | 328k | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 328k | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 328k | } \ | 949 | 21.8k | \ | 950 | 196k | for (j = 0; j < size / 2; j++) { \ | 951 | 174k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 174k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 174k | } \ | 954 | 21.8k | } |
vp9dsp_8bpp.c:vert_right_32x32_c Line | Count | Source | 927 | 11.5k | const uint8_t *_left, const uint8_t *_top) \ | 928 | 11.5k | { \ | 929 | 11.5k | pixel *dst = (pixel *) _dst; \ | 930 | 11.5k | const pixel *top = (const pixel *) _top; \ | 931 | 11.5k | const pixel *left = (const pixel *) _left; \ | 932 | 11.5k | int i, j; \ | 933 | 11.5k | pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \ | 934 | 11.5k | \ | 935 | 11.5k | stride /= sizeof(pixel); \ | 936 | 173k | for (i = 0; i < size/2 - 2; i++) { \ | 937 | 161k | vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \ | 938 | 161k | ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \ | 939 | 161k | } \ | 940 | 11.5k | vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \ | 941 | 11.5k | ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 942 | 11.5k | \ | 943 | 11.5k | ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \ | 944 | 11.5k | vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \ | 945 | 369k | for (i = 0; i < size - 1; i++) { \ | 946 | 358k | ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \ | 947 | 358k | vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 948 | 358k | } \ | 949 | 11.5k | \ | 950 | 196k | for (j = 0; j < size / 2; j++) { \ | 951 | 184k | memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \ | 952 | 184k | memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \ | 953 | 184k | } \ | 954 | 11.5k | } |
|
955 | | |
956 | | def_vert_right(8) |
957 | | def_vert_right(16) |
958 | | def_vert_right(32) |
959 | | |
960 | | static void hor_down_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
961 | | const uint8_t *_left, const uint8_t *_top) |
962 | 3.28M | { |
963 | 3.28M | pixel *dst = (pixel *) _dst; |
964 | 3.28M | const pixel *top = (const pixel *) _top; |
965 | 3.28M | const pixel *left = (const pixel *) _left; |
966 | 3.28M | int l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0], |
967 | 3.28M | tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2]; |
968 | | |
969 | 3.28M | stride /= sizeof(pixel); |
970 | 3.28M | DST(2,0) = (tl + a0 * 2 + a1 + 2) >> 2; |
971 | 3.28M | DST(3,0) = (a0 + a1 * 2 + a2 + 2) >> 2; |
972 | 3.28M | DST(0,0) = DST(2,1) = (tl + l0 + 1) >> 1; |
973 | 3.28M | DST(1,0) = DST(3,1) = (a0 + tl * 2 + l0 + 2) >> 2; |
974 | 3.28M | DST(0,1) = DST(2,2) = (l0 + l1 + 1) >> 1; |
975 | 3.28M | DST(1,1) = DST(3,2) = (tl + l0 * 2 + l1 + 2) >> 2; |
976 | 3.28M | DST(0,2) = DST(2,3) = (l1 + l2 + 1) >> 1; |
977 | 3.28M | DST(1,2) = DST(3,3) = (l0 + l1 * 2 + l2 + 2) >> 2; |
978 | 3.28M | DST(0,3) = (l2 + l3 + 1) >> 1; |
979 | 3.28M | DST(1,3) = (l1 + l2 * 2 + l3 + 2) >> 2; |
980 | 3.28M | } vp9dsp_10bpp.c:hor_down_4x4_c Line | Count | Source | 962 | 2.26M | { | 963 | 2.26M | pixel *dst = (pixel *) _dst; | 964 | 2.26M | const pixel *top = (const pixel *) _top; | 965 | 2.26M | const pixel *left = (const pixel *) _left; | 966 | 2.26M | int l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0], | 967 | 2.26M | tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2]; | 968 | | | 969 | 2.26M | stride /= sizeof(pixel); | 970 | 2.26M | DST(2,0) = (tl + a0 * 2 + a1 + 2) >> 2; | 971 | 2.26M | DST(3,0) = (a0 + a1 * 2 + a2 + 2) >> 2; | 972 | 2.26M | DST(0,0) = DST(2,1) = (tl + l0 + 1) >> 1; | 973 | 2.26M | DST(1,0) = DST(3,1) = (a0 + tl * 2 + l0 + 2) >> 2; | 974 | 2.26M | DST(0,1) = DST(2,2) = (l0 + l1 + 1) >> 1; | 975 | 2.26M | DST(1,1) = DST(3,2) = (tl + l0 * 2 + l1 + 2) >> 2; | 976 | 2.26M | DST(0,2) = DST(2,3) = (l1 + l2 + 1) >> 1; | 977 | 2.26M | DST(1,2) = DST(3,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 978 | 2.26M | DST(0,3) = (l2 + l3 + 1) >> 1; | 979 | 2.26M | DST(1,3) = (l1 + l2 * 2 + l3 + 2) >> 2; | 980 | 2.26M | } |
vp9dsp_8bpp.c:hor_down_4x4_c Line | Count | Source | 962 | 1.02M | { | 963 | 1.02M | pixel *dst = (pixel *) _dst; | 964 | 1.02M | const pixel *top = (const pixel *) _top; | 965 | 1.02M | const pixel *left = (const pixel *) _left; | 966 | 1.02M | int l0 = left[3], l1 = left[2], l2 = left[1], l3 = left[0], | 967 | 1.02M | tl = top[-1], a0 = top[0], a1 = top[1], a2 = top[2]; | 968 | | | 969 | 1.02M | stride /= sizeof(pixel); | 970 | 1.02M | DST(2,0) = (tl + a0 * 2 + a1 + 2) >> 2; | 971 | 1.02M | DST(3,0) = (a0 + a1 * 2 + a2 + 2) >> 2; | 972 | 1.02M | DST(0,0) = DST(2,1) = (tl + l0 + 1) >> 1; | 973 | 1.02M | DST(1,0) = DST(3,1) = (a0 + tl * 2 + l0 + 2) >> 2; | 974 | 1.02M | DST(0,1) = DST(2,2) = (l0 + l1 + 1) >> 1; | 975 | 1.02M | DST(1,1) = DST(3,2) = (tl + l0 * 2 + l1 + 2) >> 2; | 976 | 1.02M | DST(0,2) = DST(2,3) = (l1 + l2 + 1) >> 1; | 977 | 1.02M | DST(1,2) = DST(3,3) = (l0 + l1 * 2 + l2 + 2) >> 2; | 978 | 1.02M | DST(0,3) = (l2 + l3 + 1) >> 1; | 979 | 1.02M | DST(1,3) = (l1 + l2 * 2 + l3 + 2) >> 2; | 980 | 1.02M | } |
|
981 | | |
982 | | #define def_hor_down(size) \ |
983 | | static void hor_down_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
984 | 489k | const uint8_t *_left, const uint8_t *_top) \ |
985 | 489k | { \ |
986 | 489k | pixel *dst = (pixel *) _dst; \ |
987 | 489k | const pixel *top = (const pixel *) _top; \ |
988 | 489k | const pixel *left = (const pixel *) _left; \ |
989 | 489k | int i, j; \ |
990 | 489k | pixel v[size * 3 - 2]; \ |
991 | 489k | \ |
992 | 489k | stride /= sizeof(pixel); \ |
993 | 5.58M | for (i = 0; i < size - 2; i++) { \ |
994 | 5.09M | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ |
995 | 5.09M | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ |
996 | 5.09M | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ |
997 | 5.09M | } \ |
998 | 489k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ |
999 | 489k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ |
1000 | 489k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ |
1001 | 489k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ |
1002 | 489k | \ |
1003 | 6.56M | for (j = 0; j < size; j++) \ |
1004 | 6.07M | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ |
1005 | 489k | } vp9dsp_10bpp.c:hor_down_8x8_c Line | Count | Source | 984 | 241k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 241k | { \ | 986 | 241k | pixel *dst = (pixel *) _dst; \ | 987 | 241k | const pixel *top = (const pixel *) _top; \ | 988 | 241k | const pixel *left = (const pixel *) _left; \ | 989 | 241k | int i, j; \ | 990 | 241k | pixel v[size * 3 - 2]; \ | 991 | 241k | \ | 992 | 241k | stride /= sizeof(pixel); \ | 993 | 1.68M | for (i = 0; i < size - 2; i++) { \ | 994 | 1.44M | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 1.44M | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 1.44M | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 1.44M | } \ | 998 | 241k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 241k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 241k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 241k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 241k | \ | 1003 | 2.17M | for (j = 0; j < size; j++) \ | 1004 | 1.92M | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 241k | } |
vp9dsp_10bpp.c:hor_down_16x16_c Line | Count | Source | 984 | 68.9k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 68.9k | { \ | 986 | 68.9k | pixel *dst = (pixel *) _dst; \ | 987 | 68.9k | const pixel *top = (const pixel *) _top; \ | 988 | 68.9k | const pixel *left = (const pixel *) _left; \ | 989 | 68.9k | int i, j; \ | 990 | 68.9k | pixel v[size * 3 - 2]; \ | 991 | 68.9k | \ | 992 | 68.9k | stride /= sizeof(pixel); \ | 993 | 1.03M | for (i = 0; i < size - 2; i++) { \ | 994 | 965k | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 965k | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 965k | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 965k | } \ | 998 | 68.9k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 68.9k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 68.9k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 68.9k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 68.9k | \ | 1003 | 1.17M | for (j = 0; j < size; j++) \ | 1004 | 1.10M | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 68.9k | } |
vp9dsp_10bpp.c:hor_down_32x32_c Line | Count | Source | 984 | 36.5k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 36.5k | { \ | 986 | 36.5k | pixel *dst = (pixel *) _dst; \ | 987 | 36.5k | const pixel *top = (const pixel *) _top; \ | 988 | 36.5k | const pixel *left = (const pixel *) _left; \ | 989 | 36.5k | int i, j; \ | 990 | 36.5k | pixel v[size * 3 - 2]; \ | 991 | 36.5k | \ | 992 | 36.5k | stride /= sizeof(pixel); \ | 993 | 1.13M | for (i = 0; i < size - 2; i++) { \ | 994 | 1.09M | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 1.09M | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 1.09M | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 1.09M | } \ | 998 | 36.5k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 36.5k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 36.5k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 36.5k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 36.5k | \ | 1003 | 1.20M | for (j = 0; j < size; j++) \ | 1004 | 1.17M | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 36.5k | } |
vp9dsp_8bpp.c:hor_down_8x8_c Line | Count | Source | 984 | 88.9k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 88.9k | { \ | 986 | 88.9k | pixel *dst = (pixel *) _dst; \ | 987 | 88.9k | const pixel *top = (const pixel *) _top; \ | 988 | 88.9k | const pixel *left = (const pixel *) _left; \ | 989 | 88.9k | int i, j; \ | 990 | 88.9k | pixel v[size * 3 - 2]; \ | 991 | 88.9k | \ | 992 | 88.9k | stride /= sizeof(pixel); \ | 993 | 622k | for (i = 0; i < size - 2; i++) { \ | 994 | 533k | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 533k | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 533k | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 533k | } \ | 998 | 88.9k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 88.9k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 88.9k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 88.9k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 88.9k | \ | 1003 | 800k | for (j = 0; j < size; j++) \ | 1004 | 711k | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 88.9k | } |
vp9dsp_8bpp.c:hor_down_16x16_c Line | Count | Source | 984 | 35.6k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 35.6k | { \ | 986 | 35.6k | pixel *dst = (pixel *) _dst; \ | 987 | 35.6k | const pixel *top = (const pixel *) _top; \ | 988 | 35.6k | const pixel *left = (const pixel *) _left; \ | 989 | 35.6k | int i, j; \ | 990 | 35.6k | pixel v[size * 3 - 2]; \ | 991 | 35.6k | \ | 992 | 35.6k | stride /= sizeof(pixel); \ | 993 | 534k | for (i = 0; i < size - 2; i++) { \ | 994 | 498k | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 498k | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 498k | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 498k | } \ | 998 | 35.6k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 35.6k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 35.6k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 35.6k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 35.6k | \ | 1003 | 605k | for (j = 0; j < size; j++) \ | 1004 | 569k | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 35.6k | } |
vp9dsp_8bpp.c:hor_down_32x32_c Line | Count | Source | 984 | 18.3k | const uint8_t *_left, const uint8_t *_top) \ | 985 | 18.3k | { \ | 986 | 18.3k | pixel *dst = (pixel *) _dst; \ | 987 | 18.3k | const pixel *top = (const pixel *) _top; \ | 988 | 18.3k | const pixel *left = (const pixel *) _left; \ | 989 | 18.3k | int i, j; \ | 990 | 18.3k | pixel v[size * 3 - 2]; \ | 991 | 18.3k | \ | 992 | 18.3k | stride /= sizeof(pixel); \ | 993 | 568k | for (i = 0; i < size - 2; i++) { \ | 994 | 550k | v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \ | 995 | 550k | v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \ | 996 | 550k | v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \ | 997 | 550k | } \ | 998 | 18.3k | v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \ | 999 | 18.3k | v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \ | 1000 | 18.3k | v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \ | 1001 | 18.3k | v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \ | 1002 | 18.3k | \ | 1003 | 605k | for (j = 0; j < size; j++) \ | 1004 | 586k | memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \ | 1005 | 18.3k | } |
|
1006 | | |
1007 | | def_hor_down(8) |
1008 | | def_hor_down(16) |
1009 | | def_hor_down(32) |
1010 | | |
1011 | | static void vert_left_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
1012 | | const uint8_t *left, const uint8_t *_top) |
1013 | 1.96M | { |
1014 | 1.96M | pixel *dst = (pixel *) _dst; |
1015 | 1.96M | const pixel *top = (const pixel *) _top; |
1016 | 1.96M | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], |
1017 | 1.96M | a4 = top[4], a5 = top[5], a6 = top[6]; |
1018 | | |
1019 | 1.96M | stride /= sizeof(pixel); |
1020 | 1.96M | DST(0,0) = (a0 + a1 + 1) >> 1; |
1021 | 1.96M | DST(0,1) = (a0 + a1 * 2 + a2 + 2) >> 2; |
1022 | 1.96M | DST(1,0) = DST(0,2) = (a1 + a2 + 1) >> 1; |
1023 | 1.96M | DST(1,1) = DST(0,3) = (a1 + a2 * 2 + a3 + 2) >> 2; |
1024 | 1.96M | DST(2,0) = DST(1,2) = (a2 + a3 + 1) >> 1; |
1025 | 1.96M | DST(2,1) = DST(1,3) = (a2 + a3 * 2 + a4 + 2) >> 2; |
1026 | 1.96M | DST(3,0) = DST(2,2) = (a3 + a4 + 1) >> 1; |
1027 | 1.96M | DST(3,1) = DST(2,3) = (a3 + a4 * 2 + a5 + 2) >> 2; |
1028 | 1.96M | DST(3,2) = (a4 + a5 + 1) >> 1; |
1029 | 1.96M | DST(3,3) = (a4 + a5 * 2 + a6 + 2) >> 2; |
1030 | 1.96M | } vp9dsp_10bpp.c:vert_left_4x4_c Line | Count | Source | 1013 | 1.44M | { | 1014 | 1.44M | pixel *dst = (pixel *) _dst; | 1015 | 1.44M | const pixel *top = (const pixel *) _top; | 1016 | 1.44M | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 1017 | 1.44M | a4 = top[4], a5 = top[5], a6 = top[6]; | 1018 | | | 1019 | 1.44M | stride /= sizeof(pixel); | 1020 | 1.44M | DST(0,0) = (a0 + a1 + 1) >> 1; | 1021 | 1.44M | DST(0,1) = (a0 + a1 * 2 + a2 + 2) >> 2; | 1022 | 1.44M | DST(1,0) = DST(0,2) = (a1 + a2 + 1) >> 1; | 1023 | 1.44M | DST(1,1) = DST(0,3) = (a1 + a2 * 2 + a3 + 2) >> 2; | 1024 | 1.44M | DST(2,0) = DST(1,2) = (a2 + a3 + 1) >> 1; | 1025 | 1.44M | DST(2,1) = DST(1,3) = (a2 + a3 * 2 + a4 + 2) >> 2; | 1026 | 1.44M | DST(3,0) = DST(2,2) = (a3 + a4 + 1) >> 1; | 1027 | 1.44M | DST(3,1) = DST(2,3) = (a3 + a4 * 2 + a5 + 2) >> 2; | 1028 | 1.44M | DST(3,2) = (a4 + a5 + 1) >> 1; | 1029 | 1.44M | DST(3,3) = (a4 + a5 * 2 + a6 + 2) >> 2; | 1030 | 1.44M | } |
vp9dsp_8bpp.c:vert_left_4x4_c Line | Count | Source | 1013 | 524k | { | 1014 | 524k | pixel *dst = (pixel *) _dst; | 1015 | 524k | const pixel *top = (const pixel *) _top; | 1016 | 524k | int a0 = top[0], a1 = top[1], a2 = top[2], a3 = top[3], | 1017 | 524k | a4 = top[4], a5 = top[5], a6 = top[6]; | 1018 | | | 1019 | 524k | stride /= sizeof(pixel); | 1020 | 524k | DST(0,0) = (a0 + a1 + 1) >> 1; | 1021 | 524k | DST(0,1) = (a0 + a1 * 2 + a2 + 2) >> 2; | 1022 | 524k | DST(1,0) = DST(0,2) = (a1 + a2 + 1) >> 1; | 1023 | 524k | DST(1,1) = DST(0,3) = (a1 + a2 * 2 + a3 + 2) >> 2; | 1024 | 524k | DST(2,0) = DST(1,2) = (a2 + a3 + 1) >> 1; | 1025 | 524k | DST(2,1) = DST(1,3) = (a2 + a3 * 2 + a4 + 2) >> 2; | 1026 | 524k | DST(3,0) = DST(2,2) = (a3 + a4 + 1) >> 1; | 1027 | 524k | DST(3,1) = DST(2,3) = (a3 + a4 * 2 + a5 + 2) >> 2; | 1028 | 524k | DST(3,2) = (a4 + a5 + 1) >> 1; | 1029 | 524k | DST(3,3) = (a4 + a5 * 2 + a6 + 2) >> 2; | 1030 | 524k | } |
|
1031 | | |
1032 | | #define def_vert_left(size) \ |
1033 | | static void vert_left_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
1034 | 310k | const uint8_t *left, const uint8_t *_top) \ |
1035 | 310k | { \ |
1036 | 310k | pixel *dst = (pixel *) _dst; \ |
1037 | 310k | const pixel *top = (const pixel *) _top; \ |
1038 | 310k | int i, j; \ |
1039 | 310k | pixel ve[size - 1], vo[size - 1]; \ |
1040 | 310k | \ |
1041 | 310k | stride /= sizeof(pixel); \ |
1042 | 3.52M | for (i = 0; i < size - 2; i++) { \ |
1043 | 3.21M | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ |
1044 | 3.21M | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ |
1045 | 3.21M | } \ |
1046 | 310k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ |
1047 | 310k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ |
1048 | 310k | \ |
1049 | 2.22M | for (j = 0; j < size / 2; j++) { \ |
1050 | 1.91M | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ |
1051 | 1.91M | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ |
1052 | 1.91M | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ |
1053 | 1.91M | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ |
1054 | 1.91M | } \ |
1055 | 310k | } vp9dsp_10bpp.c:vert_left_8x8_c Line | Count | Source | 1034 | 148k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 148k | { \ | 1036 | 148k | pixel *dst = (pixel *) _dst; \ | 1037 | 148k | const pixel *top = (const pixel *) _top; \ | 1038 | 148k | int i, j; \ | 1039 | 148k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 148k | \ | 1041 | 148k | stride /= sizeof(pixel); \ | 1042 | 1.03M | for (i = 0; i < size - 2; i++) { \ | 1043 | 890k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 890k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 890k | } \ | 1046 | 148k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 148k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 148k | \ | 1049 | 742k | for (j = 0; j < size / 2; j++) { \ | 1050 | 593k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 593k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 593k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 593k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 593k | } \ | 1055 | 148k | } |
vp9dsp_10bpp.c:vert_left_16x16_c Line | Count | Source | 1034 | 46.2k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 46.2k | { \ | 1036 | 46.2k | pixel *dst = (pixel *) _dst; \ | 1037 | 46.2k | const pixel *top = (const pixel *) _top; \ | 1038 | 46.2k | int i, j; \ | 1039 | 46.2k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 46.2k | \ | 1041 | 46.2k | stride /= sizeof(pixel); \ | 1042 | 694k | for (i = 0; i < size - 2; i++) { \ | 1043 | 648k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 648k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 648k | } \ | 1046 | 46.2k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 46.2k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 46.2k | \ | 1049 | 416k | for (j = 0; j < size / 2; j++) { \ | 1050 | 370k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 370k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 370k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 370k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 370k | } \ | 1055 | 46.2k | } |
vp9dsp_10bpp.c:vert_left_32x32_c Line | Count | Source | 1034 | 22.1k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 22.1k | { \ | 1036 | 22.1k | pixel *dst = (pixel *) _dst; \ | 1037 | 22.1k | const pixel *top = (const pixel *) _top; \ | 1038 | 22.1k | int i, j; \ | 1039 | 22.1k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 22.1k | \ | 1041 | 22.1k | stride /= sizeof(pixel); \ | 1042 | 685k | for (i = 0; i < size - 2; i++) { \ | 1043 | 663k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 663k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 663k | } \ | 1046 | 22.1k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 22.1k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 22.1k | \ | 1049 | 375k | for (j = 0; j < size / 2; j++) { \ | 1050 | 353k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 353k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 353k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 353k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 353k | } \ | 1055 | 22.1k | } |
vp9dsp_8bpp.c:vert_left_8x8_c Line | Count | Source | 1034 | 60.7k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 60.7k | { \ | 1036 | 60.7k | pixel *dst = (pixel *) _dst; \ | 1037 | 60.7k | const pixel *top = (const pixel *) _top; \ | 1038 | 60.7k | int i, j; \ | 1039 | 60.7k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 60.7k | \ | 1041 | 60.7k | stride /= sizeof(pixel); \ | 1042 | 425k | for (i = 0; i < size - 2; i++) { \ | 1043 | 364k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 364k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 364k | } \ | 1046 | 60.7k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 60.7k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 60.7k | \ | 1049 | 303k | for (j = 0; j < size / 2; j++) { \ | 1050 | 242k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 242k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 242k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 242k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 242k | } \ | 1055 | 60.7k | } |
vp9dsp_8bpp.c:vert_left_16x16_c Line | Count | Source | 1034 | 20.8k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 20.8k | { \ | 1036 | 20.8k | pixel *dst = (pixel *) _dst; \ | 1037 | 20.8k | const pixel *top = (const pixel *) _top; \ | 1038 | 20.8k | int i, j; \ | 1039 | 20.8k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 20.8k | \ | 1041 | 20.8k | stride /= sizeof(pixel); \ | 1042 | 312k | for (i = 0; i < size - 2; i++) { \ | 1043 | 291k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 291k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 291k | } \ | 1046 | 20.8k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 20.8k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 20.8k | \ | 1049 | 187k | for (j = 0; j < size / 2; j++) { \ | 1050 | 166k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 166k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 166k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 166k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 166k | } \ | 1055 | 20.8k | } |
vp9dsp_8bpp.c:vert_left_32x32_c Line | Count | Source | 1034 | 11.8k | const uint8_t *left, const uint8_t *_top) \ | 1035 | 11.8k | { \ | 1036 | 11.8k | pixel *dst = (pixel *) _dst; \ | 1037 | 11.8k | const pixel *top = (const pixel *) _top; \ | 1038 | 11.8k | int i, j; \ | 1039 | 11.8k | pixel ve[size - 1], vo[size - 1]; \ | 1040 | 11.8k | \ | 1041 | 11.8k | stride /= sizeof(pixel); \ | 1042 | 368k | for (i = 0; i < size - 2; i++) { \ | 1043 | 356k | ve[i] = (top[i] + top[i + 1] + 1) >> 1; \ | 1044 | 356k | vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \ | 1045 | 356k | } \ | 1046 | 11.8k | ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \ | 1047 | 11.8k | vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \ | 1048 | 11.8k | \ | 1049 | 201k | for (j = 0; j < size / 2; j++) { \ | 1050 | 190k | memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \ | 1051 | 190k | memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \ | 1052 | 190k | memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \ | 1053 | 190k | memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \ | 1054 | 190k | } \ | 1055 | 11.8k | } |
|
1056 | | |
1057 | | def_vert_left(8) |
1058 | | def_vert_left(16) |
1059 | | def_vert_left(32) |
1060 | | |
1061 | | static void hor_up_4x4_c(uint8_t *_dst, ptrdiff_t stride, |
1062 | | const uint8_t *_left, const uint8_t *top) |
1063 | 5.08M | { |
1064 | 5.08M | pixel *dst = (pixel *) _dst; |
1065 | 5.08M | const pixel *left = (const pixel *) _left; |
1066 | 5.08M | int l0 = left[0], l1 = left[1], l2 = left[2], l3 = left[3]; |
1067 | | |
1068 | 5.08M | stride /= sizeof(pixel); |
1069 | 5.08M | DST(0,0) = (l0 + l1 + 1) >> 1; |
1070 | 5.08M | DST(1,0) = (l0 + l1 * 2 + l2 + 2) >> 2; |
1071 | 5.08M | DST(0,1) = DST(2,0) = (l1 + l2 + 1) >> 1; |
1072 | 5.08M | DST(1,1) = DST(3,0) = (l1 + l2 * 2 + l3 + 2) >> 2; |
1073 | 5.08M | DST(0,2) = DST(2,1) = (l2 + l3 + 1) >> 1; |
1074 | 5.08M | DST(1,2) = DST(3,1) = (l2 + l3 * 3 + 2) >> 2; |
1075 | 5.08M | DST(0,3) = DST(1,3) = DST(2,2) = DST(2,3) = DST(3,2) = DST(3,3) = l3; |
1076 | 5.08M | } vp9dsp_10bpp.c:hor_up_4x4_c Line | Count | Source | 1063 | 3.52M | { | 1064 | 3.52M | pixel *dst = (pixel *) _dst; | 1065 | 3.52M | const pixel *left = (const pixel *) _left; | 1066 | 3.52M | int l0 = left[0], l1 = left[1], l2 = left[2], l3 = left[3]; | 1067 | | | 1068 | 3.52M | stride /= sizeof(pixel); | 1069 | 3.52M | DST(0,0) = (l0 + l1 + 1) >> 1; | 1070 | 3.52M | DST(1,0) = (l0 + l1 * 2 + l2 + 2) >> 2; | 1071 | 3.52M | DST(0,1) = DST(2,0) = (l1 + l2 + 1) >> 1; | 1072 | 3.52M | DST(1,1) = DST(3,0) = (l1 + l2 * 2 + l3 + 2) >> 2; | 1073 | 3.52M | DST(0,2) = DST(2,1) = (l2 + l3 + 1) >> 1; | 1074 | 3.52M | DST(1,2) = DST(3,1) = (l2 + l3 * 3 + 2) >> 2; | 1075 | 3.52M | DST(0,3) = DST(1,3) = DST(2,2) = DST(2,3) = DST(3,2) = DST(3,3) = l3; | 1076 | 3.52M | } |
vp9dsp_8bpp.c:hor_up_4x4_c Line | Count | Source | 1063 | 1.56M | { | 1064 | 1.56M | pixel *dst = (pixel *) _dst; | 1065 | 1.56M | const pixel *left = (const pixel *) _left; | 1066 | 1.56M | int l0 = left[0], l1 = left[1], l2 = left[2], l3 = left[3]; | 1067 | | | 1068 | 1.56M | stride /= sizeof(pixel); | 1069 | 1.56M | DST(0,0) = (l0 + l1 + 1) >> 1; | 1070 | 1.56M | DST(1,0) = (l0 + l1 * 2 + l2 + 2) >> 2; | 1071 | 1.56M | DST(0,1) = DST(2,0) = (l1 + l2 + 1) >> 1; | 1072 | 1.56M | DST(1,1) = DST(3,0) = (l1 + l2 * 2 + l3 + 2) >> 2; | 1073 | 1.56M | DST(0,2) = DST(2,1) = (l2 + l3 + 1) >> 1; | 1074 | 1.56M | DST(1,2) = DST(3,1) = (l2 + l3 * 3 + 2) >> 2; | 1075 | 1.56M | DST(0,3) = DST(1,3) = DST(2,2) = DST(2,3) = DST(3,2) = DST(3,3) = l3; | 1076 | 1.56M | } |
|
1077 | | |
1078 | | #define def_hor_up(size) \ |
1079 | | static void hor_up_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \ |
1080 | 598k | const uint8_t *_left, const uint8_t *top) \ |
1081 | 598k | { \ |
1082 | 598k | pixel *dst = (pixel *) _dst; \ |
1083 | 598k | const pixel *left = (const pixel *) _left; \ |
1084 | 598k | int i, j; \ |
1085 | 598k | pixel v[size*2 - 2]; \ |
1086 | 598k | \ |
1087 | 598k | stride /= sizeof(pixel); \ |
1088 | 6.43M | for (i = 0; i < size - 2; i++) { \ |
1089 | 5.83M | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ |
1090 | 5.83M | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ |
1091 | 5.83M | } \ |
1092 | 598k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ |
1093 | 598k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ |
1094 | 598k | \ |
1095 | 4.11M | for (j = 0; j < size / 2; j++) \ |
1096 | 3.51M | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ |
1097 | 4.11M | for (j = size / 2; j < size; j++) { \ |
1098 | 3.51M | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ |
1099 | 3.51M | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ |
1100 | 3.51M | 2 + j*2 - size); \ |
1101 | 3.51M | } \ |
1102 | 598k | } vp9dsp_10bpp.c:hor_up_8x8_c Line | Count | Source | 1080 | 263k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 263k | { \ | 1082 | 263k | pixel *dst = (pixel *) _dst; \ | 1083 | 263k | const pixel *left = (const pixel *) _left; \ | 1084 | 263k | int i, j; \ | 1085 | 263k | pixel v[size*2 - 2]; \ | 1086 | 263k | \ | 1087 | 263k | stride /= sizeof(pixel); \ | 1088 | 1.84M | for (i = 0; i < size - 2; i++) { \ | 1089 | 1.58M | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 1.58M | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 1.58M | } \ | 1092 | 263k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 263k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 263k | \ | 1095 | 1.31M | for (j = 0; j < size / 2; j++) \ | 1096 | 1.05M | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 1.31M | for (j = size / 2; j < size; j++) { \ | 1098 | 1.05M | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 1.05M | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 1.05M | 2 + j*2 - size); \ | 1101 | 1.05M | } \ | 1102 | 263k | } |
vp9dsp_10bpp.c:hor_up_16x16_c Line | Count | Source | 1080 | 73.2k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 73.2k | { \ | 1082 | 73.2k | pixel *dst = (pixel *) _dst; \ | 1083 | 73.2k | const pixel *left = (const pixel *) _left; \ | 1084 | 73.2k | int i, j; \ | 1085 | 73.2k | pixel v[size*2 - 2]; \ | 1086 | 73.2k | \ | 1087 | 73.2k | stride /= sizeof(pixel); \ | 1088 | 1.09M | for (i = 0; i < size - 2; i++) { \ | 1089 | 1.02M | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 1.02M | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 1.02M | } \ | 1092 | 73.2k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 73.2k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 73.2k | \ | 1095 | 659k | for (j = 0; j < size / 2; j++) \ | 1096 | 586k | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 659k | for (j = size / 2; j < size; j++) { \ | 1098 | 586k | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 586k | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 586k | 2 + j*2 - size); \ | 1101 | 586k | } \ | 1102 | 73.2k | } |
vp9dsp_10bpp.c:hor_up_32x32_c Line | Count | Source | 1080 | 30.7k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 30.7k | { \ | 1082 | 30.7k | pixel *dst = (pixel *) _dst; \ | 1083 | 30.7k | const pixel *left = (const pixel *) _left; \ | 1084 | 30.7k | int i, j; \ | 1085 | 30.7k | pixel v[size*2 - 2]; \ | 1086 | 30.7k | \ | 1087 | 30.7k | stride /= sizeof(pixel); \ | 1088 | 953k | for (i = 0; i < size - 2; i++) { \ | 1089 | 922k | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 922k | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 922k | } \ | 1092 | 30.7k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 30.7k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 30.7k | \ | 1095 | 522k | for (j = 0; j < size / 2; j++) \ | 1096 | 492k | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 522k | for (j = size / 2; j < size; j++) { \ | 1098 | 492k | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 492k | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 492k | 2 + j*2 - size); \ | 1101 | 492k | } \ | 1102 | 30.7k | } |
vp9dsp_8bpp.c:hor_up_8x8_c Line | Count | Source | 1080 | 165k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 165k | { \ | 1082 | 165k | pixel *dst = (pixel *) _dst; \ | 1083 | 165k | const pixel *left = (const pixel *) _left; \ | 1084 | 165k | int i, j; \ | 1085 | 165k | pixel v[size*2 - 2]; \ | 1086 | 165k | \ | 1087 | 165k | stride /= sizeof(pixel); \ | 1088 | 1.15M | for (i = 0; i < size - 2; i++) { \ | 1089 | 991k | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 991k | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 991k | } \ | 1092 | 165k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 165k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 165k | \ | 1095 | 825k | for (j = 0; j < size / 2; j++) \ | 1096 | 660k | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 825k | for (j = size / 2; j < size; j++) { \ | 1098 | 660k | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 660k | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 660k | 2 + j*2 - size); \ | 1101 | 660k | } \ | 1102 | 165k | } |
vp9dsp_8bpp.c:hor_up_16x16_c Line | Count | Source | 1080 | 41.8k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 41.8k | { \ | 1082 | 41.8k | pixel *dst = (pixel *) _dst; \ | 1083 | 41.8k | const pixel *left = (const pixel *) _left; \ | 1084 | 41.8k | int i, j; \ | 1085 | 41.8k | pixel v[size*2 - 2]; \ | 1086 | 41.8k | \ | 1087 | 41.8k | stride /= sizeof(pixel); \ | 1088 | 627k | for (i = 0; i < size - 2; i++) { \ | 1089 | 585k | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 585k | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 585k | } \ | 1092 | 41.8k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 41.8k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 41.8k | \ | 1095 | 376k | for (j = 0; j < size / 2; j++) \ | 1096 | 334k | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 376k | for (j = size / 2; j < size; j++) { \ | 1098 | 334k | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 334k | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 334k | 2 + j*2 - size); \ | 1101 | 334k | } \ | 1102 | 41.8k | } |
vp9dsp_8bpp.c:hor_up_32x32_c Line | Count | Source | 1080 | 24.2k | const uint8_t *_left, const uint8_t *top) \ | 1081 | 24.2k | { \ | 1082 | 24.2k | pixel *dst = (pixel *) _dst; \ | 1083 | 24.2k | const pixel *left = (const pixel *) _left; \ | 1084 | 24.2k | int i, j; \ | 1085 | 24.2k | pixel v[size*2 - 2]; \ | 1086 | 24.2k | \ | 1087 | 24.2k | stride /= sizeof(pixel); \ | 1088 | 751k | for (i = 0; i < size - 2; i++) { \ | 1089 | 727k | v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \ | 1090 | 727k | v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \ | 1091 | 727k | } \ | 1092 | 24.2k | v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \ | 1093 | 24.2k | v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \ | 1094 | 24.2k | \ | 1095 | 412k | for (j = 0; j < size / 2; j++) \ | 1096 | 387k | memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \ | 1097 | 412k | for (j = size / 2; j < size; j++) { \ | 1098 | 387k | memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \ | 1099 | 387k | memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \ | 1100 | 387k | 2 + j*2 - size); \ | 1101 | 387k | } \ | 1102 | 24.2k | } |
|
1103 | | |
1104 | | def_hor_up(8) |
1105 | | def_hor_up(16) |
1106 | | def_hor_up(32) |
1107 | | |
1108 | | #undef DST |
1109 | | |
1110 | | #endif /* BIT_DEPTH != 12 */ |
1111 | | |
1112 | | #if BIT_DEPTH != 8 |
1113 | | void ff_vp9dsp_intrapred_init_10(VP9DSPContext *dsp); |
1114 | | #endif |
1115 | | #if BIT_DEPTH != 10 |
1116 | | static |
1117 | | #endif |
1118 | | av_cold void FUNC(ff_vp9dsp_intrapred_init)(VP9DSPContext *dsp) |
1119 | 19.8k | { |
1120 | 19.8k | #define init_intra_pred_bd_aware(tx, sz) \ |
1121 | 79.2k | dsp->intra_pred[tx][TM_VP8_PRED] = tm_##sz##_c; \ |
1122 | 79.2k | dsp->intra_pred[tx][DC_128_PRED] = dc_128_##sz##_c; \ |
1123 | 79.2k | dsp->intra_pred[tx][DC_127_PRED] = dc_127_##sz##_c; \ |
1124 | 79.2k | dsp->intra_pred[tx][DC_129_PRED] = dc_129_##sz##_c |
1125 | | |
1126 | | #if BIT_DEPTH == 12 |
1127 | | ff_vp9dsp_intrapred_init_10(dsp); |
1128 | | #define init_intra_pred(tx, sz) \ |
1129 | 18.2k | init_intra_pred_bd_aware(tx, sz) |
1130 | | #else |
1131 | | #define init_intra_pred(tx, sz) \ |
1132 | 61.0k | dsp->intra_pred[tx][VERT_PRED] = vert_##sz##_c; \ |
1133 | 61.0k | dsp->intra_pred[tx][HOR_PRED] = hor_##sz##_c; \ |
1134 | 61.0k | dsp->intra_pred[tx][DC_PRED] = dc_##sz##_c; \ |
1135 | 61.0k | dsp->intra_pred[tx][DIAG_DOWN_LEFT_PRED] = diag_downleft_##sz##_c; \ |
1136 | 61.0k | dsp->intra_pred[tx][DIAG_DOWN_RIGHT_PRED] = diag_downright_##sz##_c; \ |
1137 | 61.0k | dsp->intra_pred[tx][VERT_RIGHT_PRED] = vert_right_##sz##_c; \ |
1138 | 61.0k | dsp->intra_pred[tx][HOR_DOWN_PRED] = hor_down_##sz##_c; \ |
1139 | 61.0k | dsp->intra_pred[tx][VERT_LEFT_PRED] = vert_left_##sz##_c; \ |
1140 | 61.0k | dsp->intra_pred[tx][HOR_UP_PRED] = hor_up_##sz##_c; \ |
1141 | 61.0k | dsp->intra_pred[tx][LEFT_DC_PRED] = dc_left_##sz##_c; \ |
1142 | 61.0k | dsp->intra_pred[tx][TOP_DC_PRED] = dc_top_##sz##_c; \ |
1143 | 61.0k | init_intra_pred_bd_aware(tx, sz) |
1144 | | #endif |
1145 | | |
1146 | 19.8k | init_intra_pred(TX_4X4, 4x4); |
1147 | 19.8k | init_intra_pred(TX_8X8, 8x8); |
1148 | 19.8k | init_intra_pred(TX_16X16, 16x16); |
1149 | 19.8k | init_intra_pred(TX_32X32, 32x32); |
1150 | | |
1151 | 19.8k | #undef init_intra_pred |
1152 | 19.8k | #undef init_intra_pred_bd_aware |
1153 | 19.8k | } ff_vp9dsp_intrapred_init_10 Line | Count | Source | 1119 | 8.67k | { | 1120 | 8.67k | #define init_intra_pred_bd_aware(tx, sz) \ | 1121 | 8.67k | dsp->intra_pred[tx][TM_VP8_PRED] = tm_##sz##_c; \ | 1122 | 8.67k | dsp->intra_pred[tx][DC_128_PRED] = dc_128_##sz##_c; \ | 1123 | 8.67k | dsp->intra_pred[tx][DC_127_PRED] = dc_127_##sz##_c; \ | 1124 | 8.67k | dsp->intra_pred[tx][DC_129_PRED] = dc_129_##sz##_c | 1125 | | | 1126 | | #if BIT_DEPTH == 12 | 1127 | | ff_vp9dsp_intrapred_init_10(dsp); | 1128 | | #define init_intra_pred(tx, sz) \ | 1129 | | init_intra_pred_bd_aware(tx, sz) | 1130 | | #else | 1131 | 8.67k | #define init_intra_pred(tx, sz) \ | 1132 | 8.67k | dsp->intra_pred[tx][VERT_PRED] = vert_##sz##_c; \ | 1133 | 8.67k | dsp->intra_pred[tx][HOR_PRED] = hor_##sz##_c; \ | 1134 | 8.67k | dsp->intra_pred[tx][DC_PRED] = dc_##sz##_c; \ | 1135 | 8.67k | dsp->intra_pred[tx][DIAG_DOWN_LEFT_PRED] = diag_downleft_##sz##_c; \ | 1136 | 8.67k | dsp->intra_pred[tx][DIAG_DOWN_RIGHT_PRED] = diag_downright_##sz##_c; \ | 1137 | 8.67k | dsp->intra_pred[tx][VERT_RIGHT_PRED] = vert_right_##sz##_c; \ | 1138 | 8.67k | dsp->intra_pred[tx][HOR_DOWN_PRED] = hor_down_##sz##_c; \ | 1139 | 8.67k | dsp->intra_pred[tx][VERT_LEFT_PRED] = vert_left_##sz##_c; \ | 1140 | 8.67k | dsp->intra_pred[tx][HOR_UP_PRED] = hor_up_##sz##_c; \ | 1141 | 8.67k | dsp->intra_pred[tx][LEFT_DC_PRED] = dc_left_##sz##_c; \ | 1142 | 8.67k | dsp->intra_pred[tx][TOP_DC_PRED] = dc_top_##sz##_c; \ | 1143 | 8.67k | init_intra_pred_bd_aware(tx, sz) | 1144 | 8.67k | #endif | 1145 | | | 1146 | 8.67k | init_intra_pred(TX_4X4, 4x4); | 1147 | 8.67k | init_intra_pred(TX_8X8, 8x8); | 1148 | 8.67k | init_intra_pred(TX_16X16, 16x16); | 1149 | 8.67k | init_intra_pred(TX_32X32, 32x32); | 1150 | | | 1151 | 8.67k | #undef init_intra_pred | 1152 | 8.67k | #undef init_intra_pred_bd_aware | 1153 | 8.67k | } |
vp9dsp_12bpp.c:ff_vp9dsp_intrapred_init_12 Line | Count | Source | 1119 | 4.57k | { | 1120 | 4.57k | #define init_intra_pred_bd_aware(tx, sz) \ | 1121 | 4.57k | dsp->intra_pred[tx][TM_VP8_PRED] = tm_##sz##_c; \ | 1122 | 4.57k | dsp->intra_pred[tx][DC_128_PRED] = dc_128_##sz##_c; \ | 1123 | 4.57k | dsp->intra_pred[tx][DC_127_PRED] = dc_127_##sz##_c; \ | 1124 | 4.57k | dsp->intra_pred[tx][DC_129_PRED] = dc_129_##sz##_c | 1125 | | | 1126 | 4.57k | #if BIT_DEPTH == 12 | 1127 | 4.57k | ff_vp9dsp_intrapred_init_10(dsp); | 1128 | 4.57k | #define init_intra_pred(tx, sz) \ | 1129 | 4.57k | init_intra_pred_bd_aware(tx, sz) | 1130 | | #else | 1131 | | #define init_intra_pred(tx, sz) \ | 1132 | | dsp->intra_pred[tx][VERT_PRED] = vert_##sz##_c; \ | 1133 | | dsp->intra_pred[tx][HOR_PRED] = hor_##sz##_c; \ | 1134 | | dsp->intra_pred[tx][DC_PRED] = dc_##sz##_c; \ | 1135 | | dsp->intra_pred[tx][DIAG_DOWN_LEFT_PRED] = diag_downleft_##sz##_c; \ | 1136 | | dsp->intra_pred[tx][DIAG_DOWN_RIGHT_PRED] = diag_downright_##sz##_c; \ | 1137 | | dsp->intra_pred[tx][VERT_RIGHT_PRED] = vert_right_##sz##_c; \ | 1138 | | dsp->intra_pred[tx][HOR_DOWN_PRED] = hor_down_##sz##_c; \ | 1139 | | dsp->intra_pred[tx][VERT_LEFT_PRED] = vert_left_##sz##_c; \ | 1140 | | dsp->intra_pred[tx][HOR_UP_PRED] = hor_up_##sz##_c; \ | 1141 | | dsp->intra_pred[tx][LEFT_DC_PRED] = dc_left_##sz##_c; \ | 1142 | | dsp->intra_pred[tx][TOP_DC_PRED] = dc_top_##sz##_c; \ | 1143 | | init_intra_pred_bd_aware(tx, sz) | 1144 | | #endif | 1145 | | | 1146 | 4.57k | init_intra_pred(TX_4X4, 4x4); | 1147 | 4.57k | init_intra_pred(TX_8X8, 8x8); | 1148 | 4.57k | init_intra_pred(TX_16X16, 16x16); | 1149 | 4.57k | init_intra_pred(TX_32X32, 32x32); | 1150 | | | 1151 | 4.57k | #undef init_intra_pred | 1152 | 4.57k | #undef init_intra_pred_bd_aware | 1153 | 4.57k | } |
vp9dsp_8bpp.c:ff_vp9dsp_intrapred_init_8 Line | Count | Source | 1119 | 6.58k | { | 1120 | 6.58k | #define init_intra_pred_bd_aware(tx, sz) \ | 1121 | 6.58k | dsp->intra_pred[tx][TM_VP8_PRED] = tm_##sz##_c; \ | 1122 | 6.58k | dsp->intra_pred[tx][DC_128_PRED] = dc_128_##sz##_c; \ | 1123 | 6.58k | dsp->intra_pred[tx][DC_127_PRED] = dc_127_##sz##_c; \ | 1124 | 6.58k | dsp->intra_pred[tx][DC_129_PRED] = dc_129_##sz##_c | 1125 | | | 1126 | | #if BIT_DEPTH == 12 | 1127 | | ff_vp9dsp_intrapred_init_10(dsp); | 1128 | | #define init_intra_pred(tx, sz) \ | 1129 | | init_intra_pred_bd_aware(tx, sz) | 1130 | | #else | 1131 | 6.58k | #define init_intra_pred(tx, sz) \ | 1132 | 6.58k | dsp->intra_pred[tx][VERT_PRED] = vert_##sz##_c; \ | 1133 | 6.58k | dsp->intra_pred[tx][HOR_PRED] = hor_##sz##_c; \ | 1134 | 6.58k | dsp->intra_pred[tx][DC_PRED] = dc_##sz##_c; \ | 1135 | 6.58k | dsp->intra_pred[tx][DIAG_DOWN_LEFT_PRED] = diag_downleft_##sz##_c; \ | 1136 | 6.58k | dsp->intra_pred[tx][DIAG_DOWN_RIGHT_PRED] = diag_downright_##sz##_c; \ | 1137 | 6.58k | dsp->intra_pred[tx][VERT_RIGHT_PRED] = vert_right_##sz##_c; \ | 1138 | 6.58k | dsp->intra_pred[tx][HOR_DOWN_PRED] = hor_down_##sz##_c; \ | 1139 | 6.58k | dsp->intra_pred[tx][VERT_LEFT_PRED] = vert_left_##sz##_c; \ | 1140 | 6.58k | dsp->intra_pred[tx][HOR_UP_PRED] = hor_up_##sz##_c; \ | 1141 | 6.58k | dsp->intra_pred[tx][LEFT_DC_PRED] = dc_left_##sz##_c; \ | 1142 | 6.58k | dsp->intra_pred[tx][TOP_DC_PRED] = dc_top_##sz##_c; \ | 1143 | 6.58k | init_intra_pred_bd_aware(tx, sz) | 1144 | 6.58k | #endif | 1145 | | | 1146 | 6.58k | init_intra_pred(TX_4X4, 4x4); | 1147 | 6.58k | init_intra_pred(TX_8X8, 8x8); | 1148 | 6.58k | init_intra_pred(TX_16X16, 16x16); | 1149 | 6.58k | init_intra_pred(TX_32X32, 32x32); | 1150 | | | 1151 | 6.58k | #undef init_intra_pred | 1152 | 6.58k | #undef init_intra_pred_bd_aware | 1153 | 6.58k | } |
|
1154 | | |
1155 | | #define itxfm_wrapper(type_a, type_b, sz, bits, has_dconly) \ |
1156 | | static void type_a##_##type_b##_##sz##x##sz##_add_c(uint8_t *_dst, \ |
1157 | | ptrdiff_t stride, \ |
1158 | 12.4M | int16_t *_block, int eob) \ |
1159 | 12.4M | { \ |
1160 | 12.4M | int i, j; \ |
1161 | 12.4M | pixel *dst = (pixel *) _dst; \ |
1162 | 12.4M | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ |
1163 | 12.4M | \ |
1164 | 12.4M | stride /= sizeof(pixel); \ |
1165 | 12.4M | if (has_dconly && eob == 1) { \ |
1166 | 1.71M | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ |
1167 | 1.71M | * 11585 + (1 << 13)) >> 14; \ |
1168 | 1.71M | block[0] = 0; \ |
1169 | 15.6M | for (i = 0; i < sz; i++) { \ |
1170 | 245M | for (j = 0; j < sz; j++) \ |
1171 | 231M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ |
1172 | 13.9M | (bits ? \ |
1173 | 13.9M | (int)(t + (1U << (bits - 1))) >> bits : \ |
1174 | 13.9M | t)); \ |
1175 | 13.9M | dst++; \ |
1176 | 13.9M | } \ |
1177 | 1.71M | return; \ |
1178 | 1.71M | } \ |
1179 | 12.4M | \ |
1180 | 82.1M | for (i = 0; i < sz; i++) \ |
1181 | 71.4M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ |
1182 | 10.6M | memset(block, 0, sz * sz * sizeof(*block)); \ |
1183 | 82.1M | for (i = 0; i < sz; i++) { \ |
1184 | 71.4M | type_b##sz##_1d(tmp + i, sz, out, 1); \ |
1185 | 986M | for (j = 0; j < sz; j++) \ |
1186 | 914M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ |
1187 | 71.4M | (bits ? \ |
1188 | 71.4M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ |
1189 | 71.4M | out[j])); \ |
1190 | 71.4M | dst++; \ |
1191 | 71.4M | } \ |
1192 | 10.6M | } vp9dsp_10bpp.c:idct_idct_4x4_add_c Line | Count | Source | 1158 | 2.36M | int16_t *_block, int eob) \ | 1159 | 2.36M | { \ | 1160 | 2.36M | int i, j; \ | 1161 | 2.36M | pixel *dst = (pixel *) _dst; \ | 1162 | 2.36M | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 2.36M | \ | 1164 | 2.36M | stride /= sizeof(pixel); \ | 1165 | 2.36M | if (has_dconly && eob == 1) { \ | 1166 | 375k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 375k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 375k | block[0] = 0; \ | 1169 | 1.87M | for (i = 0; i < sz; i++) { \ | 1170 | 7.50M | for (j = 0; j < sz; j++) \ | 1171 | 6.00M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.50M | (bits ? \ | 1173 | 1.50M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.50M | t)); \ | 1175 | 1.50M | dst++; \ | 1176 | 1.50M | } \ | 1177 | 375k | return; \ | 1178 | 375k | } \ | 1179 | 2.36M | \ | 1180 | 9.95M | for (i = 0; i < sz; i++) \ | 1181 | 7.96M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 1.99M | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 9.95M | for (i = 0; i < sz; i++) { \ | 1184 | 7.96M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 39.8M | for (j = 0; j < sz; j++) \ | 1186 | 31.8M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 7.96M | (bits ? \ | 1188 | 7.96M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 7.96M | out[j])); \ | 1190 | 7.96M | dst++; \ | 1191 | 7.96M | } \ | 1192 | 1.99M | } |
vp9dsp_10bpp.c:iadst_idct_4x4_add_c Line | Count | Source | 1158 | 190k | int16_t *_block, int eob) \ | 1159 | 190k | { \ | 1160 | 190k | int i, j; \ | 1161 | 190k | pixel *dst = (pixel *) _dst; \ | 1162 | 190k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 190k | \ | 1164 | 190k | stride /= sizeof(pixel); \ | 1165 | 190k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 190k | \ | 1180 | 951k | for (i = 0; i < sz; i++) \ | 1181 | 761k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 190k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 951k | for (i = 0; i < sz; i++) { \ | 1184 | 761k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 3.80M | for (j = 0; j < sz; j++) \ | 1186 | 3.04M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 761k | (bits ? \ | 1188 | 761k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 761k | out[j])); \ | 1190 | 761k | dst++; \ | 1191 | 761k | } \ | 1192 | 190k | } |
vp9dsp_10bpp.c:idct_iadst_4x4_add_c Line | Count | Source | 1158 | 101k | int16_t *_block, int eob) \ | 1159 | 101k | { \ | 1160 | 101k | int i, j; \ | 1161 | 101k | pixel *dst = (pixel *) _dst; \ | 1162 | 101k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 101k | \ | 1164 | 101k | stride /= sizeof(pixel); \ | 1165 | 101k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 101k | \ | 1180 | 505k | for (i = 0; i < sz; i++) \ | 1181 | 404k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 101k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 505k | for (i = 0; i < sz; i++) { \ | 1184 | 404k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.02M | for (j = 0; j < sz; j++) \ | 1186 | 1.61M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 404k | (bits ? \ | 1188 | 404k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 404k | out[j])); \ | 1190 | 404k | dst++; \ | 1191 | 404k | } \ | 1192 | 101k | } |
vp9dsp_10bpp.c:iadst_iadst_4x4_add_c Line | Count | Source | 1158 | 119k | int16_t *_block, int eob) \ | 1159 | 119k | { \ | 1160 | 119k | int i, j; \ | 1161 | 119k | pixel *dst = (pixel *) _dst; \ | 1162 | 119k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 119k | \ | 1164 | 119k | stride /= sizeof(pixel); \ | 1165 | 119k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 119k | \ | 1180 | 596k | for (i = 0; i < sz; i++) \ | 1181 | 477k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 119k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 596k | for (i = 0; i < sz; i++) { \ | 1184 | 477k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.38M | for (j = 0; j < sz; j++) \ | 1186 | 1.90M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 477k | (bits ? \ | 1188 | 477k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 477k | out[j])); \ | 1190 | 477k | dst++; \ | 1191 | 477k | } \ | 1192 | 119k | } |
vp9dsp_10bpp.c:idct_idct_8x8_add_c Line | Count | Source | 1158 | 476k | int16_t *_block, int eob) \ | 1159 | 476k | { \ | 1160 | 476k | int i, j; \ | 1161 | 476k | pixel *dst = (pixel *) _dst; \ | 1162 | 476k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 476k | \ | 1164 | 476k | stride /= sizeof(pixel); \ | 1165 | 476k | if (has_dconly && eob == 1) { \ | 1166 | 85.6k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 85.6k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 85.6k | block[0] = 0; \ | 1169 | 770k | for (i = 0; i < sz; i++) { \ | 1170 | 6.16M | for (j = 0; j < sz; j++) \ | 1171 | 5.48M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 685k | (bits ? \ | 1173 | 685k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 685k | t)); \ | 1175 | 685k | dst++; \ | 1176 | 685k | } \ | 1177 | 85.6k | return; \ | 1178 | 85.6k | } \ | 1179 | 476k | \ | 1180 | 3.51M | for (i = 0; i < sz; i++) \ | 1181 | 3.12M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 390k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 3.51M | for (i = 0; i < sz; i++) { \ | 1184 | 3.12M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 28.1M | for (j = 0; j < sz; j++) \ | 1186 | 24.9M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 3.12M | (bits ? \ | 1188 | 3.12M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 3.12M | out[j])); \ | 1190 | 3.12M | dst++; \ | 1191 | 3.12M | } \ | 1192 | 390k | } |
vp9dsp_10bpp.c:iadst_idct_8x8_add_c Line | Count | Source | 1158 | 68.1k | int16_t *_block, int eob) \ | 1159 | 68.1k | { \ | 1160 | 68.1k | int i, j; \ | 1161 | 68.1k | pixel *dst = (pixel *) _dst; \ | 1162 | 68.1k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 68.1k | \ | 1164 | 68.1k | stride /= sizeof(pixel); \ | 1165 | 68.1k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 68.1k | \ | 1180 | 613k | for (i = 0; i < sz; i++) \ | 1181 | 545k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 68.1k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 613k | for (i = 0; i < sz; i++) { \ | 1184 | 545k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 4.90M | for (j = 0; j < sz; j++) \ | 1186 | 4.36M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 545k | (bits ? \ | 1188 | 545k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 545k | out[j])); \ | 1190 | 545k | dst++; \ | 1191 | 545k | } \ | 1192 | 68.1k | } |
vp9dsp_10bpp.c:idct_iadst_8x8_add_c Line | Count | Source | 1158 | 34.1k | int16_t *_block, int eob) \ | 1159 | 34.1k | { \ | 1160 | 34.1k | int i, j; \ | 1161 | 34.1k | pixel *dst = (pixel *) _dst; \ | 1162 | 34.1k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 34.1k | \ | 1164 | 34.1k | stride /= sizeof(pixel); \ | 1165 | 34.1k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 34.1k | \ | 1180 | 307k | for (i = 0; i < sz; i++) \ | 1181 | 273k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 34.1k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 307k | for (i = 0; i < sz; i++) { \ | 1184 | 273k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.45M | for (j = 0; j < sz; j++) \ | 1186 | 2.18M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 273k | (bits ? \ | 1188 | 273k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 273k | out[j])); \ | 1190 | 273k | dst++; \ | 1191 | 273k | } \ | 1192 | 34.1k | } |
vp9dsp_10bpp.c:iadst_iadst_8x8_add_c Line | Count | Source | 1158 | 43.6k | int16_t *_block, int eob) \ | 1159 | 43.6k | { \ | 1160 | 43.6k | int i, j; \ | 1161 | 43.6k | pixel *dst = (pixel *) _dst; \ | 1162 | 43.6k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 43.6k | \ | 1164 | 43.6k | stride /= sizeof(pixel); \ | 1165 | 43.6k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 43.6k | \ | 1180 | 392k | for (i = 0; i < sz; i++) \ | 1181 | 349k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 43.6k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 392k | for (i = 0; i < sz; i++) { \ | 1184 | 349k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 3.14M | for (j = 0; j < sz; j++) \ | 1186 | 2.79M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 349k | (bits ? \ | 1188 | 349k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 349k | out[j])); \ | 1190 | 349k | dst++; \ | 1191 | 349k | } \ | 1192 | 43.6k | } |
vp9dsp_10bpp.c:idct_idct_16x16_add_c Line | Count | Source | 1158 | 167k | int16_t *_block, int eob) \ | 1159 | 167k | { \ | 1160 | 167k | int i, j; \ | 1161 | 167k | pixel *dst = (pixel *) _dst; \ | 1162 | 167k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 167k | \ | 1164 | 167k | stride /= sizeof(pixel); \ | 1165 | 167k | if (has_dconly && eob == 1) { \ | 1166 | 39.6k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 39.6k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 39.6k | block[0] = 0; \ | 1169 | 674k | for (i = 0; i < sz; i++) { \ | 1170 | 10.7M | for (j = 0; j < sz; j++) \ | 1171 | 10.1M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 634k | (bits ? \ | 1173 | 634k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 634k | t)); \ | 1175 | 634k | dst++; \ | 1176 | 634k | } \ | 1177 | 39.6k | return; \ | 1178 | 39.6k | } \ | 1179 | 167k | \ | 1180 | 2.17M | for (i = 0; i < sz; i++) \ | 1181 | 2.04M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 128k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 2.17M | for (i = 0; i < sz; i++) { \ | 1184 | 2.04M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 34.8M | for (j = 0; j < sz; j++) \ | 1186 | 32.7M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 2.04M | (bits ? \ | 1188 | 2.04M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 2.04M | out[j])); \ | 1190 | 2.04M | dst++; \ | 1191 | 2.04M | } \ | 1192 | 128k | } |
vp9dsp_10bpp.c:iadst_idct_16x16_add_c Line | Count | Source | 1158 | 26.6k | int16_t *_block, int eob) \ | 1159 | 26.6k | { \ | 1160 | 26.6k | int i, j; \ | 1161 | 26.6k | pixel *dst = (pixel *) _dst; \ | 1162 | 26.6k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 26.6k | \ | 1164 | 26.6k | stride /= sizeof(pixel); \ | 1165 | 26.6k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 26.6k | \ | 1180 | 452k | for (i = 0; i < sz; i++) \ | 1181 | 426k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 26.6k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 452k | for (i = 0; i < sz; i++) { \ | 1184 | 426k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 7.24M | for (j = 0; j < sz; j++) \ | 1186 | 6.82M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 426k | (bits ? \ | 1188 | 426k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 426k | out[j])); \ | 1190 | 426k | dst++; \ | 1191 | 426k | } \ | 1192 | 26.6k | } |
vp9dsp_10bpp.c:idct_iadst_16x16_add_c Line | Count | Source | 1158 | 13.9k | int16_t *_block, int eob) \ | 1159 | 13.9k | { \ | 1160 | 13.9k | int i, j; \ | 1161 | 13.9k | pixel *dst = (pixel *) _dst; \ | 1162 | 13.9k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 13.9k | \ | 1164 | 13.9k | stride /= sizeof(pixel); \ | 1165 | 13.9k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 13.9k | \ | 1180 | 236k | for (i = 0; i < sz; i++) \ | 1181 | 222k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 13.9k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 236k | for (i = 0; i < sz; i++) { \ | 1184 | 222k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 3.78M | for (j = 0; j < sz; j++) \ | 1186 | 3.56M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 222k | (bits ? \ | 1188 | 222k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 222k | out[j])); \ | 1190 | 222k | dst++; \ | 1191 | 222k | } \ | 1192 | 13.9k | } |
vp9dsp_10bpp.c:iadst_iadst_16x16_add_c Line | Count | Source | 1158 | 18.9k | int16_t *_block, int eob) \ | 1159 | 18.9k | { \ | 1160 | 18.9k | int i, j; \ | 1161 | 18.9k | pixel *dst = (pixel *) _dst; \ | 1162 | 18.9k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 18.9k | \ | 1164 | 18.9k | stride /= sizeof(pixel); \ | 1165 | 18.9k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 18.9k | \ | 1180 | 322k | for (i = 0; i < sz; i++) \ | 1181 | 303k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 18.9k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 322k | for (i = 0; i < sz; i++) { \ | 1184 | 303k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 5.16M | for (j = 0; j < sz; j++) \ | 1186 | 4.86M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 303k | (bits ? \ | 1188 | 303k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 303k | out[j])); \ | 1190 | 303k | dst++; \ | 1191 | 303k | } \ | 1192 | 18.9k | } |
vp9dsp_10bpp.c:idct_idct_32x32_add_c Line | Count | Source | 1158 | 205k | int16_t *_block, int eob) \ | 1159 | 205k | { \ | 1160 | 205k | int i, j; \ | 1161 | 205k | pixel *dst = (pixel *) _dst; \ | 1162 | 205k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 205k | \ | 1164 | 205k | stride /= sizeof(pixel); \ | 1165 | 205k | if (has_dconly && eob == 1) { \ | 1166 | 47.3k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 47.3k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 47.3k | block[0] = 0; \ | 1169 | 1.56M | for (i = 0; i < sz; i++) { \ | 1170 | 50.0M | for (j = 0; j < sz; j++) \ | 1171 | 48.5M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.51M | (bits ? \ | 1173 | 1.51M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.51M | t)); \ | 1175 | 1.51M | dst++; \ | 1176 | 1.51M | } \ | 1177 | 47.3k | return; \ | 1178 | 47.3k | } \ | 1179 | 205k | \ | 1180 | 5.23M | for (i = 0; i < sz; i++) \ | 1181 | 5.07M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 158k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 5.23M | for (i = 0; i < sz; i++) { \ | 1184 | 5.07M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 167M | for (j = 0; j < sz; j++) \ | 1186 | 162M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 5.07M | (bits ? \ | 1188 | 5.07M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 5.07M | out[j])); \ | 1190 | 5.07M | dst++; \ | 1191 | 5.07M | } \ | 1192 | 158k | } |
vp9dsp_10bpp.c:iwht_iwht_4x4_add_c Line | Count | Source | 1158 | 25.3k | int16_t *_block, int eob) \ | 1159 | 25.3k | { \ | 1160 | 25.3k | int i, j; \ | 1161 | 25.3k | pixel *dst = (pixel *) _dst; \ | 1162 | 25.3k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 25.3k | \ | 1164 | 25.3k | stride /= sizeof(pixel); \ | 1165 | 25.3k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 25.3k | \ | 1180 | 126k | for (i = 0; i < sz; i++) \ | 1181 | 101k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 25.3k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 126k | for (i = 0; i < sz; i++) { \ | 1184 | 101k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 507k | for (j = 0; j < sz; j++) \ | 1186 | 405k | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 101k | (bits ? \ | 1188 | 101k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 101k | out[j])); \ | 1190 | 101k | dst++; \ | 1191 | 101k | } \ | 1192 | 25.3k | } |
vp9dsp_12bpp.c:idct_idct_4x4_add_c Line | Count | Source | 1158 | 3.40M | int16_t *_block, int eob) \ | 1159 | 3.40M | { \ | 1160 | 3.40M | int i, j; \ | 1161 | 3.40M | pixel *dst = (pixel *) _dst; \ | 1162 | 3.40M | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 3.40M | \ | 1164 | 3.40M | stride /= sizeof(pixel); \ | 1165 | 3.40M | if (has_dconly && eob == 1) { \ | 1166 | 488k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 488k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 488k | block[0] = 0; \ | 1169 | 2.44M | for (i = 0; i < sz; i++) { \ | 1170 | 9.76M | for (j = 0; j < sz; j++) \ | 1171 | 7.81M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.95M | (bits ? \ | 1173 | 1.95M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.95M | t)); \ | 1175 | 1.95M | dst++; \ | 1176 | 1.95M | } \ | 1177 | 488k | return; \ | 1178 | 488k | } \ | 1179 | 3.40M | \ | 1180 | 14.6M | for (i = 0; i < sz; i++) \ | 1181 | 11.6M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 2.92M | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 14.6M | for (i = 0; i < sz; i++) { \ | 1184 | 11.6M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 58.4M | for (j = 0; j < sz; j++) \ | 1186 | 46.7M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 11.6M | (bits ? \ | 1188 | 11.6M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 11.6M | out[j])); \ | 1190 | 11.6M | dst++; \ | 1191 | 11.6M | } \ | 1192 | 2.92M | } |
vp9dsp_12bpp.c:iadst_idct_4x4_add_c Line | Count | Source | 1158 | 140k | int16_t *_block, int eob) \ | 1159 | 140k | { \ | 1160 | 140k | int i, j; \ | 1161 | 140k | pixel *dst = (pixel *) _dst; \ | 1162 | 140k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 140k | \ | 1164 | 140k | stride /= sizeof(pixel); \ | 1165 | 140k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 140k | \ | 1180 | 700k | for (i = 0; i < sz; i++) \ | 1181 | 560k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 140k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 700k | for (i = 0; i < sz; i++) { \ | 1184 | 560k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.80M | for (j = 0; j < sz; j++) \ | 1186 | 2.24M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 560k | (bits ? \ | 1188 | 560k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 560k | out[j])); \ | 1190 | 560k | dst++; \ | 1191 | 560k | } \ | 1192 | 140k | } |
vp9dsp_12bpp.c:idct_iadst_4x4_add_c Line | Count | Source | 1158 | 70.1k | int16_t *_block, int eob) \ | 1159 | 70.1k | { \ | 1160 | 70.1k | int i, j; \ | 1161 | 70.1k | pixel *dst = (pixel *) _dst; \ | 1162 | 70.1k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 70.1k | \ | 1164 | 70.1k | stride /= sizeof(pixel); \ | 1165 | 70.1k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 70.1k | \ | 1180 | 350k | for (i = 0; i < sz; i++) \ | 1181 | 280k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 70.1k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 350k | for (i = 0; i < sz; i++) { \ | 1184 | 280k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 1.40M | for (j = 0; j < sz; j++) \ | 1186 | 1.12M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 280k | (bits ? \ | 1188 | 280k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 280k | out[j])); \ | 1190 | 280k | dst++; \ | 1191 | 280k | } \ | 1192 | 70.1k | } |
vp9dsp_12bpp.c:iadst_iadst_4x4_add_c Line | Count | Source | 1158 | 90.6k | int16_t *_block, int eob) \ | 1159 | 90.6k | { \ | 1160 | 90.6k | int i, j; \ | 1161 | 90.6k | pixel *dst = (pixel *) _dst; \ | 1162 | 90.6k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 90.6k | \ | 1164 | 90.6k | stride /= sizeof(pixel); \ | 1165 | 90.6k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 90.6k | \ | 1180 | 453k | for (i = 0; i < sz; i++) \ | 1181 | 362k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 90.6k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 453k | for (i = 0; i < sz; i++) { \ | 1184 | 362k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 1.81M | for (j = 0; j < sz; j++) \ | 1186 | 1.45M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 362k | (bits ? \ | 1188 | 362k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 362k | out[j])); \ | 1190 | 362k | dst++; \ | 1191 | 362k | } \ | 1192 | 90.6k | } |
vp9dsp_12bpp.c:idct_idct_8x8_add_c Line | Count | Source | 1158 | 597k | int16_t *_block, int eob) \ | 1159 | 597k | { \ | 1160 | 597k | int i, j; \ | 1161 | 597k | pixel *dst = (pixel *) _dst; \ | 1162 | 597k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 597k | \ | 1164 | 597k | stride /= sizeof(pixel); \ | 1165 | 597k | if (has_dconly && eob == 1) { \ | 1166 | 109k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 109k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 109k | block[0] = 0; \ | 1169 | 987k | for (i = 0; i < sz; i++) { \ | 1170 | 7.90M | for (j = 0; j < sz; j++) \ | 1171 | 7.02M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 877k | (bits ? \ | 1173 | 877k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 877k | t)); \ | 1175 | 877k | dst++; \ | 1176 | 877k | } \ | 1177 | 109k | return; \ | 1178 | 109k | } \ | 1179 | 597k | \ | 1180 | 4.39M | for (i = 0; i < sz; i++) \ | 1181 | 3.90M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 487k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 4.39M | for (i = 0; i < sz; i++) { \ | 1184 | 3.90M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 35.1M | for (j = 0; j < sz; j++) \ | 1186 | 31.2M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 3.90M | (bits ? \ | 1188 | 3.90M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 3.90M | out[j])); \ | 1190 | 3.90M | dst++; \ | 1191 | 3.90M | } \ | 1192 | 487k | } |
vp9dsp_12bpp.c:iadst_idct_8x8_add_c Line | Count | Source | 1158 | 61.2k | int16_t *_block, int eob) \ | 1159 | 61.2k | { \ | 1160 | 61.2k | int i, j; \ | 1161 | 61.2k | pixel *dst = (pixel *) _dst; \ | 1162 | 61.2k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 61.2k | \ | 1164 | 61.2k | stride /= sizeof(pixel); \ | 1165 | 61.2k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 61.2k | \ | 1180 | 551k | for (i = 0; i < sz; i++) \ | 1181 | 490k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 61.2k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 551k | for (i = 0; i < sz; i++) { \ | 1184 | 490k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 4.41M | for (j = 0; j < sz; j++) \ | 1186 | 3.92M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 490k | (bits ? \ | 1188 | 490k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 490k | out[j])); \ | 1190 | 490k | dst++; \ | 1191 | 490k | } \ | 1192 | 61.2k | } |
vp9dsp_12bpp.c:idct_iadst_8x8_add_c Line | Count | Source | 1158 | 30.2k | int16_t *_block, int eob) \ | 1159 | 30.2k | { \ | 1160 | 30.2k | int i, j; \ | 1161 | 30.2k | pixel *dst = (pixel *) _dst; \ | 1162 | 30.2k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 30.2k | \ | 1164 | 30.2k | stride /= sizeof(pixel); \ | 1165 | 30.2k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 30.2k | \ | 1180 | 272k | for (i = 0; i < sz; i++) \ | 1181 | 242k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 30.2k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 272k | for (i = 0; i < sz; i++) { \ | 1184 | 242k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.17M | for (j = 0; j < sz; j++) \ | 1186 | 1.93M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 242k | (bits ? \ | 1188 | 242k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 242k | out[j])); \ | 1190 | 242k | dst++; \ | 1191 | 242k | } \ | 1192 | 30.2k | } |
vp9dsp_12bpp.c:iadst_iadst_8x8_add_c Line | Count | Source | 1158 | 39.8k | int16_t *_block, int eob) \ | 1159 | 39.8k | { \ | 1160 | 39.8k | int i, j; \ | 1161 | 39.8k | pixel *dst = (pixel *) _dst; \ | 1162 | 39.8k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 39.8k | \ | 1164 | 39.8k | stride /= sizeof(pixel); \ | 1165 | 39.8k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 39.8k | \ | 1180 | 358k | for (i = 0; i < sz; i++) \ | 1181 | 319k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 39.8k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 358k | for (i = 0; i < sz; i++) { \ | 1184 | 319k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.87M | for (j = 0; j < sz; j++) \ | 1186 | 2.55M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 319k | (bits ? \ | 1188 | 319k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 319k | out[j])); \ | 1190 | 319k | dst++; \ | 1191 | 319k | } \ | 1192 | 39.8k | } |
vp9dsp_12bpp.c:idct_idct_16x16_add_c Line | Count | Source | 1158 | 251k | int16_t *_block, int eob) \ | 1159 | 251k | { \ | 1160 | 251k | int i, j; \ | 1161 | 251k | pixel *dst = (pixel *) _dst; \ | 1162 | 251k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 251k | \ | 1164 | 251k | stride /= sizeof(pixel); \ | 1165 | 251k | if (has_dconly && eob == 1) { \ | 1166 | 57.1k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 57.1k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 57.1k | block[0] = 0; \ | 1169 | 971k | for (i = 0; i < sz; i++) { \ | 1170 | 15.5M | for (j = 0; j < sz; j++) \ | 1171 | 14.6M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 914k | (bits ? \ | 1173 | 914k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 914k | t)); \ | 1175 | 914k | dst++; \ | 1176 | 914k | } \ | 1177 | 57.1k | return; \ | 1178 | 57.1k | } \ | 1179 | 251k | \ | 1180 | 3.30M | for (i = 0; i < sz; i++) \ | 1181 | 3.10M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 194k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 3.30M | for (i = 0; i < sz; i++) { \ | 1184 | 3.10M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 52.8M | for (j = 0; j < sz; j++) \ | 1186 | 49.6M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 3.10M | (bits ? \ | 1188 | 3.10M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 3.10M | out[j])); \ | 1190 | 3.10M | dst++; \ | 1191 | 3.10M | } \ | 1192 | 194k | } |
vp9dsp_12bpp.c:iadst_idct_16x16_add_c Line | Count | Source | 1158 | 47.4k | int16_t *_block, int eob) \ | 1159 | 47.4k | { \ | 1160 | 47.4k | int i, j; \ | 1161 | 47.4k | pixel *dst = (pixel *) _dst; \ | 1162 | 47.4k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 47.4k | \ | 1164 | 47.4k | stride /= sizeof(pixel); \ | 1165 | 47.4k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 47.4k | \ | 1180 | 806k | for (i = 0; i < sz; i++) \ | 1181 | 758k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 47.4k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 806k | for (i = 0; i < sz; i++) { \ | 1184 | 758k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 12.9M | for (j = 0; j < sz; j++) \ | 1186 | 12.1M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 758k | (bits ? \ | 1188 | 758k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 758k | out[j])); \ | 1190 | 758k | dst++; \ | 1191 | 758k | } \ | 1192 | 47.4k | } |
vp9dsp_12bpp.c:idct_iadst_16x16_add_c Line | Count | Source | 1158 | 26.6k | int16_t *_block, int eob) \ | 1159 | 26.6k | { \ | 1160 | 26.6k | int i, j; \ | 1161 | 26.6k | pixel *dst = (pixel *) _dst; \ | 1162 | 26.6k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 26.6k | \ | 1164 | 26.6k | stride /= sizeof(pixel); \ | 1165 | 26.6k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 26.6k | \ | 1180 | 453k | for (i = 0; i < sz; i++) \ | 1181 | 427k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 26.6k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 453k | for (i = 0; i < sz; i++) { \ | 1184 | 427k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 7.26M | for (j = 0; j < sz; j++) \ | 1186 | 6.83M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 427k | (bits ? \ | 1188 | 427k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 427k | out[j])); \ | 1190 | 427k | dst++; \ | 1191 | 427k | } \ | 1192 | 26.6k | } |
vp9dsp_12bpp.c:iadst_iadst_16x16_add_c Line | Count | Source | 1158 | 30.9k | int16_t *_block, int eob) \ | 1159 | 30.9k | { \ | 1160 | 30.9k | int i, j; \ | 1161 | 30.9k | pixel *dst = (pixel *) _dst; \ | 1162 | 30.9k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 30.9k | \ | 1164 | 30.9k | stride /= sizeof(pixel); \ | 1165 | 30.9k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 30.9k | \ | 1180 | 525k | for (i = 0; i < sz; i++) \ | 1181 | 494k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 30.9k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 525k | for (i = 0; i < sz; i++) { \ | 1184 | 494k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 8.40M | for (j = 0; j < sz; j++) \ | 1186 | 7.91M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 494k | (bits ? \ | 1188 | 494k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 494k | out[j])); \ | 1190 | 494k | dst++; \ | 1191 | 494k | } \ | 1192 | 30.9k | } |
vp9dsp_12bpp.c:idct_idct_32x32_add_c Line | Count | Source | 1158 | 206k | int16_t *_block, int eob) \ | 1159 | 206k | { \ | 1160 | 206k | int i, j; \ | 1161 | 206k | pixel *dst = (pixel *) _dst; \ | 1162 | 206k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 206k | \ | 1164 | 206k | stride /= sizeof(pixel); \ | 1165 | 206k | if (has_dconly && eob == 1) { \ | 1166 | 60.2k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 60.2k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 60.2k | block[0] = 0; \ | 1169 | 1.98M | for (i = 0; i < sz; i++) { \ | 1170 | 63.6M | for (j = 0; j < sz; j++) \ | 1171 | 61.7M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.92M | (bits ? \ | 1173 | 1.92M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.92M | t)); \ | 1175 | 1.92M | dst++; \ | 1176 | 1.92M | } \ | 1177 | 60.2k | return; \ | 1178 | 60.2k | } \ | 1179 | 206k | \ | 1180 | 4.81M | for (i = 0; i < sz; i++) \ | 1181 | 4.67M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 145k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 4.81M | for (i = 0; i < sz; i++) { \ | 1184 | 4.67M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 154M | for (j = 0; j < sz; j++) \ | 1186 | 149M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 4.67M | (bits ? \ | 1188 | 4.67M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 4.67M | out[j])); \ | 1190 | 4.67M | dst++; \ | 1191 | 4.67M | } \ | 1192 | 145k | } |
vp9dsp_12bpp.c:iwht_iwht_4x4_add_c Line | Count | Source | 1158 | 36.7k | int16_t *_block, int eob) \ | 1159 | 36.7k | { \ | 1160 | 36.7k | int i, j; \ | 1161 | 36.7k | pixel *dst = (pixel *) _dst; \ | 1162 | 36.7k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 36.7k | \ | 1164 | 36.7k | stride /= sizeof(pixel); \ | 1165 | 36.7k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 36.7k | \ | 1180 | 183k | for (i = 0; i < sz; i++) \ | 1181 | 146k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 36.7k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 183k | for (i = 0; i < sz; i++) { \ | 1184 | 146k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 734k | for (j = 0; j < sz; j++) \ | 1186 | 587k | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 146k | (bits ? \ | 1188 | 146k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 146k | out[j])); \ | 1190 | 146k | dst++; \ | 1191 | 146k | } \ | 1192 | 36.7k | } |
vp9dsp_8bpp.c:idct_idct_4x4_add_c Line | Count | Source | 1158 | 2.17M | int16_t *_block, int eob) \ | 1159 | 2.17M | { \ | 1160 | 2.17M | int i, j; \ | 1161 | 2.17M | pixel *dst = (pixel *) _dst; \ | 1162 | 2.17M | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 2.17M | \ | 1164 | 2.17M | stride /= sizeof(pixel); \ | 1165 | 2.17M | if (has_dconly && eob == 1) { \ | 1166 | 309k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 309k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 309k | block[0] = 0; \ | 1169 | 1.54M | for (i = 0; i < sz; i++) { \ | 1170 | 6.18M | for (j = 0; j < sz; j++) \ | 1171 | 4.94M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.23M | (bits ? \ | 1173 | 1.23M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.23M | t)); \ | 1175 | 1.23M | dst++; \ | 1176 | 1.23M | } \ | 1177 | 309k | return; \ | 1178 | 309k | } \ | 1179 | 2.17M | \ | 1180 | 9.31M | for (i = 0; i < sz; i++) \ | 1181 | 7.45M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 1.86M | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 9.31M | for (i = 0; i < sz; i++) { \ | 1184 | 7.45M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 37.2M | for (j = 0; j < sz; j++) \ | 1186 | 29.8M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 7.45M | (bits ? \ | 1188 | 7.45M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 7.45M | out[j])); \ | 1190 | 7.45M | dst++; \ | 1191 | 7.45M | } \ | 1192 | 1.86M | } |
vp9dsp_8bpp.c:iadst_idct_4x4_add_c Line | Count | Source | 1158 | 121k | int16_t *_block, int eob) \ | 1159 | 121k | { \ | 1160 | 121k | int i, j; \ | 1161 | 121k | pixel *dst = (pixel *) _dst; \ | 1162 | 121k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 121k | \ | 1164 | 121k | stride /= sizeof(pixel); \ | 1165 | 121k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 121k | \ | 1180 | 608k | for (i = 0; i < sz; i++) \ | 1181 | 486k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 121k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 608k | for (i = 0; i < sz; i++) { \ | 1184 | 486k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.43M | for (j = 0; j < sz; j++) \ | 1186 | 1.94M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 486k | (bits ? \ | 1188 | 486k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 486k | out[j])); \ | 1190 | 486k | dst++; \ | 1191 | 486k | } \ | 1192 | 121k | } |
vp9dsp_8bpp.c:idct_iadst_4x4_add_c Line | Count | Source | 1158 | 62.4k | int16_t *_block, int eob) \ | 1159 | 62.4k | { \ | 1160 | 62.4k | int i, j; \ | 1161 | 62.4k | pixel *dst = (pixel *) _dst; \ | 1162 | 62.4k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 62.4k | \ | 1164 | 62.4k | stride /= sizeof(pixel); \ | 1165 | 62.4k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 62.4k | \ | 1180 | 312k | for (i = 0; i < sz; i++) \ | 1181 | 249k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 62.4k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 312k | for (i = 0; i < sz; i++) { \ | 1184 | 249k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 1.24M | for (j = 0; j < sz; j++) \ | 1186 | 999k | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 249k | (bits ? \ | 1188 | 249k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 249k | out[j])); \ | 1190 | 249k | dst++; \ | 1191 | 249k | } \ | 1192 | 62.4k | } |
vp9dsp_8bpp.c:iadst_iadst_4x4_add_c Line | Count | Source | 1158 | 83.9k | int16_t *_block, int eob) \ | 1159 | 83.9k | { \ | 1160 | 83.9k | int i, j; \ | 1161 | 83.9k | pixel *dst = (pixel *) _dst; \ | 1162 | 83.9k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 83.9k | \ | 1164 | 83.9k | stride /= sizeof(pixel); \ | 1165 | 83.9k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 83.9k | \ | 1180 | 419k | for (i = 0; i < sz; i++) \ | 1181 | 335k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 83.9k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 419k | for (i = 0; i < sz; i++) { \ | 1184 | 335k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 1.67M | for (j = 0; j < sz; j++) \ | 1186 | 1.34M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 335k | (bits ? \ | 1188 | 335k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 335k | out[j])); \ | 1190 | 335k | dst++; \ | 1191 | 335k | } \ | 1192 | 83.9k | } |
vp9dsp_8bpp.c:idct_idct_8x8_add_c Line | Count | Source | 1158 | 331k | int16_t *_block, int eob) \ | 1159 | 331k | { \ | 1160 | 331k | int i, j; \ | 1161 | 331k | pixel *dst = (pixel *) _dst; \ | 1162 | 331k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 331k | \ | 1164 | 331k | stride /= sizeof(pixel); \ | 1165 | 331k | if (has_dconly && eob == 1) { \ | 1166 | 56.8k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 56.8k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 56.8k | block[0] = 0; \ | 1169 | 511k | for (i = 0; i < sz; i++) { \ | 1170 | 4.09M | for (j = 0; j < sz; j++) \ | 1171 | 3.64M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 455k | (bits ? \ | 1173 | 455k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 455k | t)); \ | 1175 | 455k | dst++; \ | 1176 | 455k | } \ | 1177 | 56.8k | return; \ | 1178 | 56.8k | } \ | 1179 | 331k | \ | 1180 | 2.47M | for (i = 0; i < sz; i++) \ | 1181 | 2.20M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 275k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 2.47M | for (i = 0; i < sz; i++) { \ | 1184 | 2.20M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 19.8M | for (j = 0; j < sz; j++) \ | 1186 | 17.6M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 2.20M | (bits ? \ | 1188 | 2.20M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 2.20M | out[j])); \ | 1190 | 2.20M | dst++; \ | 1191 | 2.20M | } \ | 1192 | 275k | } |
vp9dsp_8bpp.c:iadst_idct_8x8_add_c Line | Count | Source | 1158 | 52.2k | int16_t *_block, int eob) \ | 1159 | 52.2k | { \ | 1160 | 52.2k | int i, j; \ | 1161 | 52.2k | pixel *dst = (pixel *) _dst; \ | 1162 | 52.2k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 52.2k | \ | 1164 | 52.2k | stride /= sizeof(pixel); \ | 1165 | 52.2k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 52.2k | \ | 1180 | 470k | for (i = 0; i < sz; i++) \ | 1181 | 418k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 52.2k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 470k | for (i = 0; i < sz; i++) { \ | 1184 | 418k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 3.76M | for (j = 0; j < sz; j++) \ | 1186 | 3.34M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 418k | (bits ? \ | 1188 | 418k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 418k | out[j])); \ | 1190 | 418k | dst++; \ | 1191 | 418k | } \ | 1192 | 52.2k | } |
vp9dsp_8bpp.c:idct_iadst_8x8_add_c Line | Count | Source | 1158 | 29.1k | int16_t *_block, int eob) \ | 1159 | 29.1k | { \ | 1160 | 29.1k | int i, j; \ | 1161 | 29.1k | pixel *dst = (pixel *) _dst; \ | 1162 | 29.1k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 29.1k | \ | 1164 | 29.1k | stride /= sizeof(pixel); \ | 1165 | 29.1k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 29.1k | \ | 1180 | 262k | for (i = 0; i < sz; i++) \ | 1181 | 233k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 29.1k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 262k | for (i = 0; i < sz; i++) { \ | 1184 | 233k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.10M | for (j = 0; j < sz; j++) \ | 1186 | 1.86M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 233k | (bits ? \ | 1188 | 233k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 233k | out[j])); \ | 1190 | 233k | dst++; \ | 1191 | 233k | } \ | 1192 | 29.1k | } |
vp9dsp_8bpp.c:iadst_iadst_8x8_add_c Line | Count | Source | 1158 | 34.7k | int16_t *_block, int eob) \ | 1159 | 34.7k | { \ | 1160 | 34.7k | int i, j; \ | 1161 | 34.7k | pixel *dst = (pixel *) _dst; \ | 1162 | 34.7k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 34.7k | \ | 1164 | 34.7k | stride /= sizeof(pixel); \ | 1165 | 34.7k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 34.7k | \ | 1180 | 313k | for (i = 0; i < sz; i++) \ | 1181 | 278k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 34.7k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 313k | for (i = 0; i < sz; i++) { \ | 1184 | 278k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.50M | for (j = 0; j < sz; j++) \ | 1186 | 2.22M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 278k | (bits ? \ | 1188 | 278k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 278k | out[j])); \ | 1190 | 278k | dst++; \ | 1191 | 278k | } \ | 1192 | 34.7k | } |
vp9dsp_8bpp.c:idct_idct_16x16_add_c Line | Count | Source | 1158 | 195k | int16_t *_block, int eob) \ | 1159 | 195k | { \ | 1160 | 195k | int i, j; \ | 1161 | 195k | pixel *dst = (pixel *) _dst; \ | 1162 | 195k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 195k | \ | 1164 | 195k | stride /= sizeof(pixel); \ | 1165 | 195k | if (has_dconly && eob == 1) { \ | 1166 | 40.7k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 40.7k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 40.7k | block[0] = 0; \ | 1169 | 691k | for (i = 0; i < sz; i++) { \ | 1170 | 11.0M | for (j = 0; j < sz; j++) \ | 1171 | 10.4M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 651k | (bits ? \ | 1173 | 651k | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 651k | t)); \ | 1175 | 651k | dst++; \ | 1176 | 651k | } \ | 1177 | 40.7k | return; \ | 1178 | 40.7k | } \ | 1179 | 195k | \ | 1180 | 2.63M | for (i = 0; i < sz; i++) \ | 1181 | 2.48M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 155k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 2.63M | for (i = 0; i < sz; i++) { \ | 1184 | 2.48M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 42.2M | for (j = 0; j < sz; j++) \ | 1186 | 39.7M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 2.48M | (bits ? \ | 1188 | 2.48M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 2.48M | out[j])); \ | 1190 | 2.48M | dst++; \ | 1191 | 2.48M | } \ | 1192 | 155k | } |
vp9dsp_8bpp.c:iadst_idct_16x16_add_c Line | Count | Source | 1158 | 36.3k | int16_t *_block, int eob) \ | 1159 | 36.3k | { \ | 1160 | 36.3k | int i, j; \ | 1161 | 36.3k | pixel *dst = (pixel *) _dst; \ | 1162 | 36.3k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 36.3k | \ | 1164 | 36.3k | stride /= sizeof(pixel); \ | 1165 | 36.3k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 36.3k | \ | 1180 | 617k | for (i = 0; i < sz; i++) \ | 1181 | 581k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 36.3k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 617k | for (i = 0; i < sz; i++) { \ | 1184 | 581k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 9.88M | for (j = 0; j < sz; j++) \ | 1186 | 9.30M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 581k | (bits ? \ | 1188 | 581k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 581k | out[j])); \ | 1190 | 581k | dst++; \ | 1191 | 581k | } \ | 1192 | 36.3k | } |
vp9dsp_8bpp.c:idct_iadst_16x16_add_c Line | Count | Source | 1158 | 21.3k | int16_t *_block, int eob) \ | 1159 | 21.3k | { \ | 1160 | 21.3k | int i, j; \ | 1161 | 21.3k | pixel *dst = (pixel *) _dst; \ | 1162 | 21.3k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 21.3k | \ | 1164 | 21.3k | stride /= sizeof(pixel); \ | 1165 | 21.3k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 21.3k | \ | 1180 | 362k | for (i = 0; i < sz; i++) \ | 1181 | 341k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 21.3k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 362k | for (i = 0; i < sz; i++) { \ | 1184 | 341k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 5.79M | for (j = 0; j < sz; j++) \ | 1186 | 5.45M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 341k | (bits ? \ | 1188 | 341k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 341k | out[j])); \ | 1190 | 341k | dst++; \ | 1191 | 341k | } \ | 1192 | 21.3k | } |
vp9dsp_8bpp.c:iadst_iadst_16x16_add_c Line | Count | Source | 1158 | 24.5k | int16_t *_block, int eob) \ | 1159 | 24.5k | { \ | 1160 | 24.5k | int i, j; \ | 1161 | 24.5k | pixel *dst = (pixel *) _dst; \ | 1162 | 24.5k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 24.5k | \ | 1164 | 24.5k | stride /= sizeof(pixel); \ | 1165 | 24.5k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 24.5k | \ | 1180 | 417k | for (i = 0; i < sz; i++) \ | 1181 | 392k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 24.5k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 417k | for (i = 0; i < sz; i++) { \ | 1184 | 392k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 6.68M | for (j = 0; j < sz; j++) \ | 1186 | 6.28M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 392k | (bits ? \ | 1188 | 392k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 392k | out[j])); \ | 1190 | 392k | dst++; \ | 1191 | 392k | } \ | 1192 | 24.5k | } |
vp9dsp_8bpp.c:idct_idct_32x32_add_c Line | Count | Source | 1158 | 236k | int16_t *_block, int eob) \ | 1159 | 236k | { \ | 1160 | 236k | int i, j; \ | 1161 | 236k | pixel *dst = (pixel *) _dst; \ | 1162 | 236k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 236k | \ | 1164 | 236k | stride /= sizeof(pixel); \ | 1165 | 236k | if (has_dconly && eob == 1) { \ | 1166 | 49.5k | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 49.5k | * 11585 + (1 << 13)) >> 14; \ | 1168 | 49.5k | block[0] = 0; \ | 1169 | 1.63M | for (i = 0; i < sz; i++) { \ | 1170 | 52.2M | for (j = 0; j < sz; j++) \ | 1171 | 50.7M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 1.58M | (bits ? \ | 1173 | 1.58M | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 1.58M | t)); \ | 1175 | 1.58M | dst++; \ | 1176 | 1.58M | } \ | 1177 | 49.5k | return; \ | 1178 | 49.5k | } \ | 1179 | 236k | \ | 1180 | 6.18M | for (i = 0; i < sz; i++) \ | 1181 | 5.99M | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 187k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 6.18M | for (i = 0; i < sz; i++) { \ | 1184 | 5.99M | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 197M | for (j = 0; j < sz; j++) \ | 1186 | 191M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 5.99M | (bits ? \ | 1188 | 5.99M | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 5.99M | out[j])); \ | 1190 | 5.99M | dst++; \ | 1191 | 5.99M | } \ | 1192 | 187k | } |
vp9dsp_8bpp.c:iwht_iwht_4x4_add_c Line | Count | Source | 1158 | 114k | int16_t *_block, int eob) \ | 1159 | 114k | { \ | 1160 | 114k | int i, j; \ | 1161 | 114k | pixel *dst = (pixel *) _dst; \ | 1162 | 114k | dctcoef *block = (dctcoef *) _block, tmp[sz * sz], out[sz]; \ | 1163 | 114k | \ | 1164 | 114k | stride /= sizeof(pixel); \ | 1165 | 114k | if (has_dconly && eob == 1) { \ | 1166 | 0 | const int t = ((((dctint) block[0] * 11585 + (1 << 13)) >> 14) \ | 1167 | 0 | * 11585 + (1 << 13)) >> 14; \ | 1168 | 0 | block[0] = 0; \ | 1169 | 0 | for (i = 0; i < sz; i++) { \ | 1170 | 0 | for (j = 0; j < sz; j++) \ | 1171 | 0 | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1172 | 0 | (bits ? \ | 1173 | 0 | (int)(t + (1U << (bits - 1))) >> bits : \ | 1174 | 0 | t)); \ | 1175 | 0 | dst++; \ | 1176 | 0 | } \ | 1177 | 0 | return; \ | 1178 | 0 | } \ | 1179 | 114k | \ | 1180 | 570k | for (i = 0; i < sz; i++) \ | 1181 | 456k | type_a##sz##_1d(block + i, sz, tmp + i * sz, 0); \ | 1182 | 114k | memset(block, 0, sz * sz * sizeof(*block)); \ | 1183 | 570k | for (i = 0; i < sz; i++) { \ | 1184 | 456k | type_b##sz##_1d(tmp + i, sz, out, 1); \ | 1185 | 2.28M | for (j = 0; j < sz; j++) \ | 1186 | 1.82M | dst[j * stride] = av_clip_pixel(dst[j * stride] + \ | 1187 | 456k | (bits ? \ | 1188 | 456k | (int)(out[j] + (1U << (bits - 1))) >> bits : \ | 1189 | 456k | out[j])); \ | 1190 | 456k | dst++; \ | 1191 | 456k | } \ | 1192 | 114k | } |
|
1193 | | |
1194 | | #define itxfm_wrap(sz, bits) \ |
1195 | | itxfm_wrapper(idct, idct, sz, bits, 1) \ |
1196 | | itxfm_wrapper(iadst, idct, sz, bits, 0) \ |
1197 | | itxfm_wrapper(idct, iadst, sz, bits, 0) \ |
1198 | | itxfm_wrapper(iadst, iadst, sz, bits, 0) |
1199 | | |
1200 | 3.66G | #define IN(x) ((dctint) in[(x) * stride]) |
1201 | | |
1202 | | static av_always_inline void idct4_1d(const dctcoef *in, ptrdiff_t stride, |
1203 | | dctcoef *out, int pass) |
1204 | 56.9M | { |
1205 | 56.9M | dctint t0, t1, t2, t3; |
1206 | | |
1207 | 56.9M | t0 = ((IN(0) + IN(2)) * 11585 + (1 << 13)) >> 14; |
1208 | 56.9M | t1 = ((IN(0) - IN(2)) * 11585 + (1 << 13)) >> 14; |
1209 | 56.9M | t2 = (IN(1) * 6270 - IN(3) * 15137 + (1 << 13)) >> 14; |
1210 | 56.9M | t3 = (IN(1) * 15137 + IN(3) * 6270 + (1 << 13)) >> 14; |
1211 | | |
1212 | 56.9M | out[0] = t0 + t3; |
1213 | 56.9M | out[1] = t1 + t2; |
1214 | 56.9M | out[2] = t1 - t2; |
1215 | 56.9M | out[3] = t0 - t3; |
1216 | 56.9M | } Line | Count | Source | 1204 | 17.0M | { | 1205 | 17.0M | dctint t0, t1, t2, t3; | 1206 | | | 1207 | 17.0M | t0 = ((IN(0) + IN(2)) * 11585 + (1 << 13)) >> 14; | 1208 | 17.0M | t1 = ((IN(0) - IN(2)) * 11585 + (1 << 13)) >> 14; | 1209 | 17.0M | t2 = (IN(1) * 6270 - IN(3) * 15137 + (1 << 13)) >> 14; | 1210 | 17.0M | t3 = (IN(1) * 15137 + IN(3) * 6270 + (1 << 13)) >> 14; | 1211 | | | 1212 | 17.0M | out[0] = t0 + t3; | 1213 | 17.0M | out[1] = t1 + t2; | 1214 | 17.0M | out[2] = t1 - t2; | 1215 | 17.0M | out[3] = t0 - t3; | 1216 | 17.0M | } |
Line | Count | Source | 1204 | 24.2M | { | 1205 | 24.2M | dctint t0, t1, t2, t3; | 1206 | | | 1207 | 24.2M | t0 = ((IN(0) + IN(2)) * 11585 + (1 << 13)) >> 14; | 1208 | 24.2M | t1 = ((IN(0) - IN(2)) * 11585 + (1 << 13)) >> 14; | 1209 | 24.2M | t2 = (IN(1) * 6270 - IN(3) * 15137 + (1 << 13)) >> 14; | 1210 | 24.2M | t3 = (IN(1) * 15137 + IN(3) * 6270 + (1 << 13)) >> 14; | 1211 | | | 1212 | 24.2M | out[0] = t0 + t3; | 1213 | 24.2M | out[1] = t1 + t2; | 1214 | 24.2M | out[2] = t1 - t2; | 1215 | 24.2M | out[3] = t0 - t3; | 1216 | 24.2M | } |
Line | Count | Source | 1204 | 15.6M | { | 1205 | 15.6M | dctint t0, t1, t2, t3; | 1206 | | | 1207 | 15.6M | t0 = ((IN(0) + IN(2)) * 11585 + (1 << 13)) >> 14; | 1208 | 15.6M | t1 = ((IN(0) - IN(2)) * 11585 + (1 << 13)) >> 14; | 1209 | 15.6M | t2 = (IN(1) * 6270 - IN(3) * 15137 + (1 << 13)) >> 14; | 1210 | 15.6M | t3 = (IN(1) * 15137 + IN(3) * 6270 + (1 << 13)) >> 14; | 1211 | | | 1212 | 15.6M | out[0] = t0 + t3; | 1213 | 15.6M | out[1] = t1 + t2; | 1214 | 15.6M | out[2] = t1 - t2; | 1215 | 15.6M | out[3] = t0 - t3; | 1216 | 15.6M | } |
|
1217 | | |
1218 | | static av_always_inline void iadst4_1d(const dctcoef *in, ptrdiff_t stride, |
1219 | | dctcoef *out, int pass) |
1220 | 5.09M | { |
1221 | 5.09M | dctint t0, t1, t2, t3; |
1222 | | |
1223 | 5.09M | t0 = 5283 * IN(0) + 15212 * IN(2) + 9929 * IN(3); |
1224 | 5.09M | t1 = 9929 * IN(0) - 5283 * IN(2) - 15212 * IN(3); |
1225 | 5.09M | t2 = 13377 * (IN(0) - IN(2) + IN(3)); |
1226 | 5.09M | t3 = 13377 * IN(1); |
1227 | | |
1228 | 5.09M | out[0] = (t0 + t3 + (1 << 13)) >> 14; |
1229 | 5.09M | out[1] = (t1 + t3 + (1 << 13)) >> 14; |
1230 | 5.09M | out[2] = (t2 + (1 << 13)) >> 14; |
1231 | 5.09M | out[3] = (t0 + t1 - t3 + (1 << 13)) >> 14; |
1232 | 5.09M | } Line | Count | Source | 1220 | 2.12M | { | 1221 | 2.12M | dctint t0, t1, t2, t3; | 1222 | | | 1223 | 2.12M | t0 = 5283 * IN(0) + 15212 * IN(2) + 9929 * IN(3); | 1224 | 2.12M | t1 = 9929 * IN(0) - 5283 * IN(2) - 15212 * IN(3); | 1225 | 2.12M | t2 = 13377 * (IN(0) - IN(2) + IN(3)); | 1226 | 2.12M | t3 = 13377 * IN(1); | 1227 | | | 1228 | 2.12M | out[0] = (t0 + t3 + (1 << 13)) >> 14; | 1229 | 2.12M | out[1] = (t1 + t3 + (1 << 13)) >> 14; | 1230 | 2.12M | out[2] = (t2 + (1 << 13)) >> 14; | 1231 | 2.12M | out[3] = (t0 + t1 - t3 + (1 << 13)) >> 14; | 1232 | 2.12M | } |
Line | Count | Source | 1220 | 1.56M | { | 1221 | 1.56M | dctint t0, t1, t2, t3; | 1222 | | | 1223 | 1.56M | t0 = 5283 * IN(0) + 15212 * IN(2) + 9929 * IN(3); | 1224 | 1.56M | t1 = 9929 * IN(0) - 5283 * IN(2) - 15212 * IN(3); | 1225 | 1.56M | t2 = 13377 * (IN(0) - IN(2) + IN(3)); | 1226 | 1.56M | t3 = 13377 * IN(1); | 1227 | | | 1228 | 1.56M | out[0] = (t0 + t3 + (1 << 13)) >> 14; | 1229 | 1.56M | out[1] = (t1 + t3 + (1 << 13)) >> 14; | 1230 | 1.56M | out[2] = (t2 + (1 << 13)) >> 14; | 1231 | 1.56M | out[3] = (t0 + t1 - t3 + (1 << 13)) >> 14; | 1232 | 1.56M | } |
Line | Count | Source | 1220 | 1.40M | { | 1221 | 1.40M | dctint t0, t1, t2, t3; | 1222 | | | 1223 | 1.40M | t0 = 5283 * IN(0) + 15212 * IN(2) + 9929 * IN(3); | 1224 | 1.40M | t1 = 9929 * IN(0) - 5283 * IN(2) - 15212 * IN(3); | 1225 | 1.40M | t2 = 13377 * (IN(0) - IN(2) + IN(3)); | 1226 | 1.40M | t3 = 13377 * IN(1); | 1227 | | | 1228 | 1.40M | out[0] = (t0 + t3 + (1 << 13)) >> 14; | 1229 | 1.40M | out[1] = (t1 + t3 + (1 << 13)) >> 14; | 1230 | 1.40M | out[2] = (t2 + (1 << 13)) >> 14; | 1231 | 1.40M | out[3] = (t0 + t1 - t3 + (1 << 13)) >> 14; | 1232 | 1.40M | } |
|
1233 | | |
1234 | | itxfm_wrap(4, 4) |
1235 | | |
1236 | | static av_always_inline void idct8_1d(const dctcoef *in, ptrdiff_t stride, |
1237 | | dctcoef *out, int pass) |
1238 | 20.6M | { |
1239 | 20.6M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; |
1240 | | |
1241 | 20.6M | t0a = ((IN(0) + IN(4)) * 11585 + (1 << 13)) >> 14; |
1242 | 20.6M | t1a = ((IN(0) - IN(4)) * 11585 + (1 << 13)) >> 14; |
1243 | 20.6M | t2a = (IN(2) * 6270 - IN(6) * 15137 + (1 << 13)) >> 14; |
1244 | 20.6M | t3a = (IN(2) * 15137 + IN(6) * 6270 + (1 << 13)) >> 14; |
1245 | 20.6M | t4a = (IN(1) * 3196 - IN(7) * 16069 + (1 << 13)) >> 14; |
1246 | 20.6M | t5a = (IN(5) * 13623 - IN(3) * 9102 + (1 << 13)) >> 14; |
1247 | 20.6M | t6a = (IN(5) * 9102 + IN(3) * 13623 + (1 << 13)) >> 14; |
1248 | 20.6M | t7a = (IN(1) * 16069 + IN(7) * 3196 + (1 << 13)) >> 14; |
1249 | | |
1250 | 20.6M | t0 = t0a + t3a; |
1251 | 20.6M | t1 = t1a + t2a; |
1252 | 20.6M | t2 = t1a - t2a; |
1253 | 20.6M | t3 = t0a - t3a; |
1254 | 20.6M | t4 = t4a + t5a; |
1255 | 20.6M | t5a = t4a - t5a; |
1256 | 20.6M | t7 = t7a + t6a; |
1257 | 20.6M | t6a = t7a - t6a; |
1258 | | |
1259 | 20.6M | t5 = ((t6a - t5a) * 11585 + (1 << 13)) >> 14; |
1260 | 20.6M | t6 = ((t6a + t5a) * 11585 + (1 << 13)) >> 14; |
1261 | | |
1262 | 20.6M | out[0] = t0 + t7; |
1263 | 20.6M | out[1] = t1 + t6; |
1264 | 20.6M | out[2] = t2 + t5; |
1265 | 20.6M | out[3] = t3 + t4; |
1266 | 20.6M | out[4] = t3 - t4; |
1267 | 20.6M | out[5] = t2 - t5; |
1268 | 20.6M | out[6] = t1 - t6; |
1269 | 20.6M | out[7] = t0 - t7; |
1270 | 20.6M | } Line | Count | Source | 1238 | 7.06M | { | 1239 | 7.06M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1240 | | | 1241 | 7.06M | t0a = ((IN(0) + IN(4)) * 11585 + (1 << 13)) >> 14; | 1242 | 7.06M | t1a = ((IN(0) - IN(4)) * 11585 + (1 << 13)) >> 14; | 1243 | 7.06M | t2a = (IN(2) * 6270 - IN(6) * 15137 + (1 << 13)) >> 14; | 1244 | 7.06M | t3a = (IN(2) * 15137 + IN(6) * 6270 + (1 << 13)) >> 14; | 1245 | 7.06M | t4a = (IN(1) * 3196 - IN(7) * 16069 + (1 << 13)) >> 14; | 1246 | 7.06M | t5a = (IN(5) * 13623 - IN(3) * 9102 + (1 << 13)) >> 14; | 1247 | 7.06M | t6a = (IN(5) * 9102 + IN(3) * 13623 + (1 << 13)) >> 14; | 1248 | 7.06M | t7a = (IN(1) * 16069 + IN(7) * 3196 + (1 << 13)) >> 14; | 1249 | | | 1250 | 7.06M | t0 = t0a + t3a; | 1251 | 7.06M | t1 = t1a + t2a; | 1252 | 7.06M | t2 = t1a - t2a; | 1253 | 7.06M | t3 = t0a - t3a; | 1254 | 7.06M | t4 = t4a + t5a; | 1255 | 7.06M | t5a = t4a - t5a; | 1256 | 7.06M | t7 = t7a + t6a; | 1257 | 7.06M | t6a = t7a - t6a; | 1258 | | | 1259 | 7.06M | t5 = ((t6a - t5a) * 11585 + (1 << 13)) >> 14; | 1260 | 7.06M | t6 = ((t6a + t5a) * 11585 + (1 << 13)) >> 14; | 1261 | | | 1262 | 7.06M | out[0] = t0 + t7; | 1263 | 7.06M | out[1] = t1 + t6; | 1264 | 7.06M | out[2] = t2 + t5; | 1265 | 7.06M | out[3] = t3 + t4; | 1266 | 7.06M | out[4] = t3 - t4; | 1267 | 7.06M | out[5] = t2 - t5; | 1268 | 7.06M | out[6] = t1 - t6; | 1269 | 7.06M | out[7] = t0 - t7; | 1270 | 7.06M | } |
Line | Count | Source | 1238 | 8.53M | { | 1239 | 8.53M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1240 | | | 1241 | 8.53M | t0a = ((IN(0) + IN(4)) * 11585 + (1 << 13)) >> 14; | 1242 | 8.53M | t1a = ((IN(0) - IN(4)) * 11585 + (1 << 13)) >> 14; | 1243 | 8.53M | t2a = (IN(2) * 6270 - IN(6) * 15137 + (1 << 13)) >> 14; | 1244 | 8.53M | t3a = (IN(2) * 15137 + IN(6) * 6270 + (1 << 13)) >> 14; | 1245 | 8.53M | t4a = (IN(1) * 3196 - IN(7) * 16069 + (1 << 13)) >> 14; | 1246 | 8.53M | t5a = (IN(5) * 13623 - IN(3) * 9102 + (1 << 13)) >> 14; | 1247 | 8.53M | t6a = (IN(5) * 9102 + IN(3) * 13623 + (1 << 13)) >> 14; | 1248 | 8.53M | t7a = (IN(1) * 16069 + IN(7) * 3196 + (1 << 13)) >> 14; | 1249 | | | 1250 | 8.53M | t0 = t0a + t3a; | 1251 | 8.53M | t1 = t1a + t2a; | 1252 | 8.53M | t2 = t1a - t2a; | 1253 | 8.53M | t3 = t0a - t3a; | 1254 | 8.53M | t4 = t4a + t5a; | 1255 | 8.53M | t5a = t4a - t5a; | 1256 | 8.53M | t7 = t7a + t6a; | 1257 | 8.53M | t6a = t7a - t6a; | 1258 | | | 1259 | 8.53M | t5 = ((t6a - t5a) * 11585 + (1 << 13)) >> 14; | 1260 | 8.53M | t6 = ((t6a + t5a) * 11585 + (1 << 13)) >> 14; | 1261 | | | 1262 | 8.53M | out[0] = t0 + t7; | 1263 | 8.53M | out[1] = t1 + t6; | 1264 | 8.53M | out[2] = t2 + t5; | 1265 | 8.53M | out[3] = t3 + t4; | 1266 | 8.53M | out[4] = t3 - t4; | 1267 | 8.53M | out[5] = t2 - t5; | 1268 | 8.53M | out[6] = t1 - t6; | 1269 | 8.53M | out[7] = t0 - t7; | 1270 | 8.53M | } |
Line | Count | Source | 1238 | 5.05M | { | 1239 | 5.05M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1240 | | | 1241 | 5.05M | t0a = ((IN(0) + IN(4)) * 11585 + (1 << 13)) >> 14; | 1242 | 5.05M | t1a = ((IN(0) - IN(4)) * 11585 + (1 << 13)) >> 14; | 1243 | 5.05M | t2a = (IN(2) * 6270 - IN(6) * 15137 + (1 << 13)) >> 14; | 1244 | 5.05M | t3a = (IN(2) * 15137 + IN(6) * 6270 + (1 << 13)) >> 14; | 1245 | 5.05M | t4a = (IN(1) * 3196 - IN(7) * 16069 + (1 << 13)) >> 14; | 1246 | 5.05M | t5a = (IN(5) * 13623 - IN(3) * 9102 + (1 << 13)) >> 14; | 1247 | 5.05M | t6a = (IN(5) * 9102 + IN(3) * 13623 + (1 << 13)) >> 14; | 1248 | 5.05M | t7a = (IN(1) * 16069 + IN(7) * 3196 + (1 << 13)) >> 14; | 1249 | | | 1250 | 5.05M | t0 = t0a + t3a; | 1251 | 5.05M | t1 = t1a + t2a; | 1252 | 5.05M | t2 = t1a - t2a; | 1253 | 5.05M | t3 = t0a - t3a; | 1254 | 5.05M | t4 = t4a + t5a; | 1255 | 5.05M | t5a = t4a - t5a; | 1256 | 5.05M | t7 = t7a + t6a; | 1257 | 5.05M | t6a = t7a - t6a; | 1258 | | | 1259 | 5.05M | t5 = ((t6a - t5a) * 11585 + (1 << 13)) >> 14; | 1260 | 5.05M | t6 = ((t6a + t5a) * 11585 + (1 << 13)) >> 14; | 1261 | | | 1262 | 5.05M | out[0] = t0 + t7; | 1263 | 5.05M | out[1] = t1 + t6; | 1264 | 5.05M | out[2] = t2 + t5; | 1265 | 5.05M | out[3] = t3 + t4; | 1266 | 5.05M | out[4] = t3 - t4; | 1267 | 5.05M | out[5] = t2 - t5; | 1268 | 5.05M | out[6] = t1 - t6; | 1269 | 5.05M | out[7] = t0 - t7; | 1270 | 5.05M | } |
|
1271 | | |
1272 | | static av_always_inline void iadst8_1d(const dctcoef *in, ptrdiff_t stride, |
1273 | | dctcoef *out, int pass) |
1274 | 4.09M | { |
1275 | 4.09M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; |
1276 | | |
1277 | 4.09M | t0a = 16305 * IN(7) + 1606 * IN(0); |
1278 | 4.09M | t1a = 1606 * IN(7) - 16305 * IN(0); |
1279 | 4.09M | t2a = 14449 * IN(5) + 7723 * IN(2); |
1280 | 4.09M | t3a = 7723 * IN(5) - 14449 * IN(2); |
1281 | 4.09M | t4a = 10394 * IN(3) + 12665 * IN(4); |
1282 | 4.09M | t5a = 12665 * IN(3) - 10394 * IN(4); |
1283 | 4.09M | t6a = 4756 * IN(1) + 15679 * IN(6); |
1284 | 4.09M | t7a = 15679 * IN(1) - 4756 * IN(6); |
1285 | | |
1286 | 4.09M | t0 = (t0a + t4a + (1 << 13)) >> 14; |
1287 | 4.09M | t1 = (t1a + t5a + (1 << 13)) >> 14; |
1288 | 4.09M | t2 = (t2a + t6a + (1 << 13)) >> 14; |
1289 | 4.09M | t3 = (t3a + t7a + (1 << 13)) >> 14; |
1290 | 4.09M | t4 = (t0a - t4a + (1 << 13)) >> 14; |
1291 | 4.09M | t5 = (t1a - t5a + (1 << 13)) >> 14; |
1292 | 4.09M | t6 = (t2a - t6a + (1 << 13)) >> 14; |
1293 | 4.09M | t7 = (t3a - t7a + (1 << 13)) >> 14; |
1294 | | |
1295 | 4.09M | t4a = 15137U * t4 + 6270U * t5; |
1296 | 4.09M | t5a = 6270U * t4 - 15137U * t5; |
1297 | 4.09M | t6a = 15137U * t7 - 6270U * t6; |
1298 | 4.09M | t7a = 6270U * t7 + 15137U * t6; |
1299 | | |
1300 | 4.09M | out[0] = t0 + t2; |
1301 | 4.09M | out[7] = -(t1 + t3); |
1302 | 4.09M | t2 = t0 - t2; |
1303 | 4.09M | t3 = t1 - t3; |
1304 | | |
1305 | 4.09M | out[1] = -((dctint)((1U << 13) + t4a + t6a) >> 14); |
1306 | 4.09M | out[6] = (dctint)((1U << 13) + t5a + t7a) >> 14; |
1307 | 4.09M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; |
1308 | 4.09M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; |
1309 | | |
1310 | 4.09M | out[3] = -((dctint)((t2 + t3) * 11585U + (1 << 13)) >> 14); |
1311 | 4.09M | out[4] = (dctint)((t2 - t3) * 11585U + (1 << 13)) >> 14; |
1312 | 4.09M | out[2] = (dctint)((t6 + t7) * 11585U + (1 << 13)) >> 14; |
1313 | 4.09M | out[5] = -((dctint)((t6 - t7) * 11585U + (1 << 13)) >> 14); |
1314 | 4.09M | } Line | Count | Source | 1274 | 1.51M | { | 1275 | 1.51M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1276 | | | 1277 | 1.51M | t0a = 16305 * IN(7) + 1606 * IN(0); | 1278 | 1.51M | t1a = 1606 * IN(7) - 16305 * IN(0); | 1279 | 1.51M | t2a = 14449 * IN(5) + 7723 * IN(2); | 1280 | 1.51M | t3a = 7723 * IN(5) - 14449 * IN(2); | 1281 | 1.51M | t4a = 10394 * IN(3) + 12665 * IN(4); | 1282 | 1.51M | t5a = 12665 * IN(3) - 10394 * IN(4); | 1283 | 1.51M | t6a = 4756 * IN(1) + 15679 * IN(6); | 1284 | 1.51M | t7a = 15679 * IN(1) - 4756 * IN(6); | 1285 | | | 1286 | 1.51M | t0 = (t0a + t4a + (1 << 13)) >> 14; | 1287 | 1.51M | t1 = (t1a + t5a + (1 << 13)) >> 14; | 1288 | 1.51M | t2 = (t2a + t6a + (1 << 13)) >> 14; | 1289 | 1.51M | t3 = (t3a + t7a + (1 << 13)) >> 14; | 1290 | 1.51M | t4 = (t0a - t4a + (1 << 13)) >> 14; | 1291 | 1.51M | t5 = (t1a - t5a + (1 << 13)) >> 14; | 1292 | 1.51M | t6 = (t2a - t6a + (1 << 13)) >> 14; | 1293 | 1.51M | t7 = (t3a - t7a + (1 << 13)) >> 14; | 1294 | | | 1295 | 1.51M | t4a = 15137U * t4 + 6270U * t5; | 1296 | 1.51M | t5a = 6270U * t4 - 15137U * t5; | 1297 | 1.51M | t6a = 15137U * t7 - 6270U * t6; | 1298 | 1.51M | t7a = 6270U * t7 + 15137U * t6; | 1299 | | | 1300 | 1.51M | out[0] = t0 + t2; | 1301 | 1.51M | out[7] = -(t1 + t3); | 1302 | 1.51M | t2 = t0 - t2; | 1303 | 1.51M | t3 = t1 - t3; | 1304 | | | 1305 | 1.51M | out[1] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1306 | 1.51M | out[6] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1307 | 1.51M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1308 | 1.51M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1309 | | | 1310 | 1.51M | out[3] = -((dctint)((t2 + t3) * 11585U + (1 << 13)) >> 14); | 1311 | 1.51M | out[4] = (dctint)((t2 - t3) * 11585U + (1 << 13)) >> 14; | 1312 | 1.51M | out[2] = (dctint)((t6 + t7) * 11585U + (1 << 13)) >> 14; | 1313 | 1.51M | out[5] = -((dctint)((t6 - t7) * 11585U + (1 << 13)) >> 14); | 1314 | 1.51M | } |
Line | Count | Source | 1274 | 1.37M | { | 1275 | 1.37M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1276 | | | 1277 | 1.37M | t0a = 16305 * IN(7) + 1606 * IN(0); | 1278 | 1.37M | t1a = 1606 * IN(7) - 16305 * IN(0); | 1279 | 1.37M | t2a = 14449 * IN(5) + 7723 * IN(2); | 1280 | 1.37M | t3a = 7723 * IN(5) - 14449 * IN(2); | 1281 | 1.37M | t4a = 10394 * IN(3) + 12665 * IN(4); | 1282 | 1.37M | t5a = 12665 * IN(3) - 10394 * IN(4); | 1283 | 1.37M | t6a = 4756 * IN(1) + 15679 * IN(6); | 1284 | 1.37M | t7a = 15679 * IN(1) - 4756 * IN(6); | 1285 | | | 1286 | 1.37M | t0 = (t0a + t4a + (1 << 13)) >> 14; | 1287 | 1.37M | t1 = (t1a + t5a + (1 << 13)) >> 14; | 1288 | 1.37M | t2 = (t2a + t6a + (1 << 13)) >> 14; | 1289 | 1.37M | t3 = (t3a + t7a + (1 << 13)) >> 14; | 1290 | 1.37M | t4 = (t0a - t4a + (1 << 13)) >> 14; | 1291 | 1.37M | t5 = (t1a - t5a + (1 << 13)) >> 14; | 1292 | 1.37M | t6 = (t2a - t6a + (1 << 13)) >> 14; | 1293 | 1.37M | t7 = (t3a - t7a + (1 << 13)) >> 14; | 1294 | | | 1295 | 1.37M | t4a = 15137U * t4 + 6270U * t5; | 1296 | 1.37M | t5a = 6270U * t4 - 15137U * t5; | 1297 | 1.37M | t6a = 15137U * t7 - 6270U * t6; | 1298 | 1.37M | t7a = 6270U * t7 + 15137U * t6; | 1299 | | | 1300 | 1.37M | out[0] = t0 + t2; | 1301 | 1.37M | out[7] = -(t1 + t3); | 1302 | 1.37M | t2 = t0 - t2; | 1303 | 1.37M | t3 = t1 - t3; | 1304 | | | 1305 | 1.37M | out[1] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1306 | 1.37M | out[6] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1307 | 1.37M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1308 | 1.37M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1309 | | | 1310 | 1.37M | out[3] = -((dctint)((t2 + t3) * 11585U + (1 << 13)) >> 14); | 1311 | 1.37M | out[4] = (dctint)((t2 - t3) * 11585U + (1 << 13)) >> 14; | 1312 | 1.37M | out[2] = (dctint)((t6 + t7) * 11585U + (1 << 13)) >> 14; | 1313 | 1.37M | out[5] = -((dctint)((t6 - t7) * 11585U + (1 << 13)) >> 14); | 1314 | 1.37M | } |
Line | Count | Source | 1274 | 1.20M | { | 1275 | 1.20M | dctint t0, t0a, t1, t1a, t2, t2a, t3, t3a, t4, t4a, t5, t5a, t6, t6a, t7, t7a; | 1276 | | | 1277 | 1.20M | t0a = 16305 * IN(7) + 1606 * IN(0); | 1278 | 1.20M | t1a = 1606 * IN(7) - 16305 * IN(0); | 1279 | 1.20M | t2a = 14449 * IN(5) + 7723 * IN(2); | 1280 | 1.20M | t3a = 7723 * IN(5) - 14449 * IN(2); | 1281 | 1.20M | t4a = 10394 * IN(3) + 12665 * IN(4); | 1282 | 1.20M | t5a = 12665 * IN(3) - 10394 * IN(4); | 1283 | 1.20M | t6a = 4756 * IN(1) + 15679 * IN(6); | 1284 | 1.20M | t7a = 15679 * IN(1) - 4756 * IN(6); | 1285 | | | 1286 | 1.20M | t0 = (t0a + t4a + (1 << 13)) >> 14; | 1287 | 1.20M | t1 = (t1a + t5a + (1 << 13)) >> 14; | 1288 | 1.20M | t2 = (t2a + t6a + (1 << 13)) >> 14; | 1289 | 1.20M | t3 = (t3a + t7a + (1 << 13)) >> 14; | 1290 | 1.20M | t4 = (t0a - t4a + (1 << 13)) >> 14; | 1291 | 1.20M | t5 = (t1a - t5a + (1 << 13)) >> 14; | 1292 | 1.20M | t6 = (t2a - t6a + (1 << 13)) >> 14; | 1293 | 1.20M | t7 = (t3a - t7a + (1 << 13)) >> 14; | 1294 | | | 1295 | 1.20M | t4a = 15137U * t4 + 6270U * t5; | 1296 | 1.20M | t5a = 6270U * t4 - 15137U * t5; | 1297 | 1.20M | t6a = 15137U * t7 - 6270U * t6; | 1298 | 1.20M | t7a = 6270U * t7 + 15137U * t6; | 1299 | | | 1300 | 1.20M | out[0] = t0 + t2; | 1301 | 1.20M | out[7] = -(t1 + t3); | 1302 | 1.20M | t2 = t0 - t2; | 1303 | 1.20M | t3 = t1 - t3; | 1304 | | | 1305 | 1.20M | out[1] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1306 | 1.20M | out[6] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1307 | 1.20M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1308 | 1.20M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1309 | | | 1310 | 1.20M | out[3] = -((dctint)((t2 + t3) * 11585U + (1 << 13)) >> 14); | 1311 | 1.20M | out[4] = (dctint)((t2 - t3) * 11585U + (1 << 13)) >> 14; | 1312 | 1.20M | out[2] = (dctint)((t6 + t7) * 11585U + (1 << 13)) >> 14; | 1313 | 1.20M | out[5] = -((dctint)((t6 - t7) * 11585U + (1 << 13)) >> 14); | 1314 | 1.20M | } |
|
1315 | | |
1316 | | itxfm_wrap(8, 5) |
1317 | | |
1318 | | static av_always_inline void idct16_1d(const dctcoef *in, ptrdiff_t stride, |
1319 | | dctcoef *out, int pass) |
1320 | 18.0M | { |
1321 | 18.0M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; |
1322 | 18.0M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; |
1323 | 18.0M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; |
1324 | | |
1325 | 18.0M | t0a = (dctint)((IN(0) + IN(8)) * 11585U + (1 << 13)) >> 14; |
1326 | 18.0M | t1a = (dctint)((IN(0) - IN(8)) * 11585U + (1 << 13)) >> 14; |
1327 | 18.0M | t2a = (dctint)(IN(4) * 6270U - IN(12) * 15137U + (1 << 13)) >> 14; |
1328 | 18.0M | t3a = (dctint)(IN(4) * 15137U + IN(12) * 6270U + (1 << 13)) >> 14; |
1329 | 18.0M | t4a = (dctint)(IN(2) * 3196U - IN(14) * 16069U + (1 << 13)) >> 14; |
1330 | 18.0M | t7a = (dctint)(IN(2) * 16069U + IN(14) * 3196U + (1 << 13)) >> 14; |
1331 | 18.0M | t5a = (dctint)(IN(10) * 13623U - IN(6) * 9102U + (1 << 13)) >> 14; |
1332 | 18.0M | t6a = (dctint)(IN(10) * 9102U + IN(6) * 13623U + (1 << 13)) >> 14; |
1333 | 18.0M | t8a = (dctint)(IN(1) * 1606U - IN(15) * 16305U + (1 << 13)) >> 14; |
1334 | 18.0M | t15a = (dctint)(IN(1) * 16305U + IN(15) * 1606U + (1 << 13)) >> 14; |
1335 | 18.0M | t9a = (dctint)(IN(9) * 12665U - IN(7) * 10394U + (1 << 13)) >> 14; |
1336 | 18.0M | t14a = (dctint)(IN(9) * 10394U + IN(7) * 12665U + (1 << 13)) >> 14; |
1337 | 18.0M | t10a = (dctint)(IN(5) * 7723U - IN(11) * 14449U + (1 << 13)) >> 14; |
1338 | 18.0M | t13a = (dctint)(IN(5) * 14449U + IN(11) * 7723U + (1 << 13)) >> 14; |
1339 | 18.0M | t11a = (dctint)(IN(13) * 15679U - IN(3) * 4756U + (1 << 13)) >> 14; |
1340 | 18.0M | t12a = (dctint)(IN(13) * 4756U + IN(3) * 15679U + (1 << 13)) >> 14; |
1341 | | |
1342 | 18.0M | t0 = t0a + t3a; |
1343 | 18.0M | t1 = t1a + t2a; |
1344 | 18.0M | t2 = t1a - t2a; |
1345 | 18.0M | t3 = t0a - t3a; |
1346 | 18.0M | t4 = t4a + t5a; |
1347 | 18.0M | t5 = t4a - t5a; |
1348 | 18.0M | t6 = t7a - t6a; |
1349 | 18.0M | t7 = t7a + t6a; |
1350 | 18.0M | t8 = t8a + t9a; |
1351 | 18.0M | t9 = t8a - t9a; |
1352 | 18.0M | t10 = t11a - t10a; |
1353 | 18.0M | t11 = t11a + t10a; |
1354 | 18.0M | t12 = t12a + t13a; |
1355 | 18.0M | t13 = t12a - t13a; |
1356 | 18.0M | t14 = t15a - t14a; |
1357 | 18.0M | t15 = t15a + t14a; |
1358 | | |
1359 | 18.0M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; |
1360 | 18.0M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; |
1361 | 18.0M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; |
1362 | 18.0M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; |
1363 | 18.0M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; |
1364 | 18.0M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; |
1365 | | |
1366 | 18.0M | t0a = t0 + t7; |
1367 | 18.0M | t1a = t1 + t6a; |
1368 | 18.0M | t2a = t2 + t5a; |
1369 | 18.0M | t3a = t3 + t4; |
1370 | 18.0M | t4 = t3 - t4; |
1371 | 18.0M | t5 = t2 - t5a; |
1372 | 18.0M | t6 = t1 - t6a; |
1373 | 18.0M | t7 = t0 - t7; |
1374 | 18.0M | t8a = t8 + t11; |
1375 | 18.0M | t9 = t9a + t10a; |
1376 | 18.0M | t10 = t9a - t10a; |
1377 | 18.0M | t11a = t8 - t11; |
1378 | 18.0M | t12a = t15 - t12; |
1379 | 18.0M | t13 = t14a - t13a; |
1380 | 18.0M | t14 = t14a + t13a; |
1381 | 18.0M | t15a = t15 + t12; |
1382 | | |
1383 | 18.0M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; |
1384 | 18.0M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; |
1385 | 18.0M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; |
1386 | 18.0M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; |
1387 | | |
1388 | 18.0M | out[ 0] = t0a + t15a; |
1389 | 18.0M | out[ 1] = t1a + t14; |
1390 | 18.0M | out[ 2] = t2a + t13a; |
1391 | 18.0M | out[ 3] = t3a + t12; |
1392 | 18.0M | out[ 4] = t4 + t11; |
1393 | 18.0M | out[ 5] = t5 + t10a; |
1394 | 18.0M | out[ 6] = t6 + t9; |
1395 | 18.0M | out[ 7] = t7 + t8a; |
1396 | 18.0M | out[ 8] = t7 - t8a; |
1397 | 18.0M | out[ 9] = t6 - t9; |
1398 | 18.0M | out[10] = t5 - t10a; |
1399 | 18.0M | out[11] = t4 - t11; |
1400 | 18.0M | out[12] = t3a - t12; |
1401 | 18.0M | out[13] = t2a - t13a; |
1402 | 18.0M | out[14] = t1a - t14; |
1403 | 18.0M | out[15] = t0a - t15a; |
1404 | 18.0M | } Line | Count | Source | 1320 | 4.74M | { | 1321 | 4.74M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1322 | 4.74M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1323 | 4.74M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1324 | | | 1325 | 4.74M | t0a = (dctint)((IN(0) + IN(8)) * 11585U + (1 << 13)) >> 14; | 1326 | 4.74M | t1a = (dctint)((IN(0) - IN(8)) * 11585U + (1 << 13)) >> 14; | 1327 | 4.74M | t2a = (dctint)(IN(4) * 6270U - IN(12) * 15137U + (1 << 13)) >> 14; | 1328 | 4.74M | t3a = (dctint)(IN(4) * 15137U + IN(12) * 6270U + (1 << 13)) >> 14; | 1329 | 4.74M | t4a = (dctint)(IN(2) * 3196U - IN(14) * 16069U + (1 << 13)) >> 14; | 1330 | 4.74M | t7a = (dctint)(IN(2) * 16069U + IN(14) * 3196U + (1 << 13)) >> 14; | 1331 | 4.74M | t5a = (dctint)(IN(10) * 13623U - IN(6) * 9102U + (1 << 13)) >> 14; | 1332 | 4.74M | t6a = (dctint)(IN(10) * 9102U + IN(6) * 13623U + (1 << 13)) >> 14; | 1333 | 4.74M | t8a = (dctint)(IN(1) * 1606U - IN(15) * 16305U + (1 << 13)) >> 14; | 1334 | 4.74M | t15a = (dctint)(IN(1) * 16305U + IN(15) * 1606U + (1 << 13)) >> 14; | 1335 | 4.74M | t9a = (dctint)(IN(9) * 12665U - IN(7) * 10394U + (1 << 13)) >> 14; | 1336 | 4.74M | t14a = (dctint)(IN(9) * 10394U + IN(7) * 12665U + (1 << 13)) >> 14; | 1337 | 4.74M | t10a = (dctint)(IN(5) * 7723U - IN(11) * 14449U + (1 << 13)) >> 14; | 1338 | 4.74M | t13a = (dctint)(IN(5) * 14449U + IN(11) * 7723U + (1 << 13)) >> 14; | 1339 | 4.74M | t11a = (dctint)(IN(13) * 15679U - IN(3) * 4756U + (1 << 13)) >> 14; | 1340 | 4.74M | t12a = (dctint)(IN(13) * 4756U + IN(3) * 15679U + (1 << 13)) >> 14; | 1341 | | | 1342 | 4.74M | t0 = t0a + t3a; | 1343 | 4.74M | t1 = t1a + t2a; | 1344 | 4.74M | t2 = t1a - t2a; | 1345 | 4.74M | t3 = t0a - t3a; | 1346 | 4.74M | t4 = t4a + t5a; | 1347 | 4.74M | t5 = t4a - t5a; | 1348 | 4.74M | t6 = t7a - t6a; | 1349 | 4.74M | t7 = t7a + t6a; | 1350 | 4.74M | t8 = t8a + t9a; | 1351 | 4.74M | t9 = t8a - t9a; | 1352 | 4.74M | t10 = t11a - t10a; | 1353 | 4.74M | t11 = t11a + t10a; | 1354 | 4.74M | t12 = t12a + t13a; | 1355 | 4.74M | t13 = t12a - t13a; | 1356 | 4.74M | t14 = t15a - t14a; | 1357 | 4.74M | t15 = t15a + t14a; | 1358 | | | 1359 | 4.74M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1360 | 4.74M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1361 | 4.74M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1362 | 4.74M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1363 | 4.74M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1364 | 4.74M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1365 | | | 1366 | 4.74M | t0a = t0 + t7; | 1367 | 4.74M | t1a = t1 + t6a; | 1368 | 4.74M | t2a = t2 + t5a; | 1369 | 4.74M | t3a = t3 + t4; | 1370 | 4.74M | t4 = t3 - t4; | 1371 | 4.74M | t5 = t2 - t5a; | 1372 | 4.74M | t6 = t1 - t6a; | 1373 | 4.74M | t7 = t0 - t7; | 1374 | 4.74M | t8a = t8 + t11; | 1375 | 4.74M | t9 = t9a + t10a; | 1376 | 4.74M | t10 = t9a - t10a; | 1377 | 4.74M | t11a = t8 - t11; | 1378 | 4.74M | t12a = t15 - t12; | 1379 | 4.74M | t13 = t14a - t13a; | 1380 | 4.74M | t14 = t14a + t13a; | 1381 | 4.74M | t15a = t15 + t12; | 1382 | | | 1383 | 4.74M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1384 | 4.74M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1385 | 4.74M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1386 | 4.74M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1387 | | | 1388 | 4.74M | out[ 0] = t0a + t15a; | 1389 | 4.74M | out[ 1] = t1a + t14; | 1390 | 4.74M | out[ 2] = t2a + t13a; | 1391 | 4.74M | out[ 3] = t3a + t12; | 1392 | 4.74M | out[ 4] = t4 + t11; | 1393 | 4.74M | out[ 5] = t5 + t10a; | 1394 | 4.74M | out[ 6] = t6 + t9; | 1395 | 4.74M | out[ 7] = t7 + t8a; | 1396 | 4.74M | out[ 8] = t7 - t8a; | 1397 | 4.74M | out[ 9] = t6 - t9; | 1398 | 4.74M | out[10] = t5 - t10a; | 1399 | 4.74M | out[11] = t4 - t11; | 1400 | 4.74M | out[12] = t3a - t12; | 1401 | 4.74M | out[13] = t2a - t13a; | 1402 | 4.74M | out[14] = t1a - t14; | 1403 | 4.74M | out[15] = t0a - t15a; | 1404 | 4.74M | } |
Line | Count | Source | 1320 | 7.39M | { | 1321 | 7.39M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1322 | 7.39M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1323 | 7.39M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1324 | | | 1325 | 7.39M | t0a = (dctint)((IN(0) + IN(8)) * 11585U + (1 << 13)) >> 14; | 1326 | 7.39M | t1a = (dctint)((IN(0) - IN(8)) * 11585U + (1 << 13)) >> 14; | 1327 | 7.39M | t2a = (dctint)(IN(4) * 6270U - IN(12) * 15137U + (1 << 13)) >> 14; | 1328 | 7.39M | t3a = (dctint)(IN(4) * 15137U + IN(12) * 6270U + (1 << 13)) >> 14; | 1329 | 7.39M | t4a = (dctint)(IN(2) * 3196U - IN(14) * 16069U + (1 << 13)) >> 14; | 1330 | 7.39M | t7a = (dctint)(IN(2) * 16069U + IN(14) * 3196U + (1 << 13)) >> 14; | 1331 | 7.39M | t5a = (dctint)(IN(10) * 13623U - IN(6) * 9102U + (1 << 13)) >> 14; | 1332 | 7.39M | t6a = (dctint)(IN(10) * 9102U + IN(6) * 13623U + (1 << 13)) >> 14; | 1333 | 7.39M | t8a = (dctint)(IN(1) * 1606U - IN(15) * 16305U + (1 << 13)) >> 14; | 1334 | 7.39M | t15a = (dctint)(IN(1) * 16305U + IN(15) * 1606U + (1 << 13)) >> 14; | 1335 | 7.39M | t9a = (dctint)(IN(9) * 12665U - IN(7) * 10394U + (1 << 13)) >> 14; | 1336 | 7.39M | t14a = (dctint)(IN(9) * 10394U + IN(7) * 12665U + (1 << 13)) >> 14; | 1337 | 7.39M | t10a = (dctint)(IN(5) * 7723U - IN(11) * 14449U + (1 << 13)) >> 14; | 1338 | 7.39M | t13a = (dctint)(IN(5) * 14449U + IN(11) * 7723U + (1 << 13)) >> 14; | 1339 | 7.39M | t11a = (dctint)(IN(13) * 15679U - IN(3) * 4756U + (1 << 13)) >> 14; | 1340 | 7.39M | t12a = (dctint)(IN(13) * 4756U + IN(3) * 15679U + (1 << 13)) >> 14; | 1341 | | | 1342 | 7.39M | t0 = t0a + t3a; | 1343 | 7.39M | t1 = t1a + t2a; | 1344 | 7.39M | t2 = t1a - t2a; | 1345 | 7.39M | t3 = t0a - t3a; | 1346 | 7.39M | t4 = t4a + t5a; | 1347 | 7.39M | t5 = t4a - t5a; | 1348 | 7.39M | t6 = t7a - t6a; | 1349 | 7.39M | t7 = t7a + t6a; | 1350 | 7.39M | t8 = t8a + t9a; | 1351 | 7.39M | t9 = t8a - t9a; | 1352 | 7.39M | t10 = t11a - t10a; | 1353 | 7.39M | t11 = t11a + t10a; | 1354 | 7.39M | t12 = t12a + t13a; | 1355 | 7.39M | t13 = t12a - t13a; | 1356 | 7.39M | t14 = t15a - t14a; | 1357 | 7.39M | t15 = t15a + t14a; | 1358 | | | 1359 | 7.39M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1360 | 7.39M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1361 | 7.39M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1362 | 7.39M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1363 | 7.39M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1364 | 7.39M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1365 | | | 1366 | 7.39M | t0a = t0 + t7; | 1367 | 7.39M | t1a = t1 + t6a; | 1368 | 7.39M | t2a = t2 + t5a; | 1369 | 7.39M | t3a = t3 + t4; | 1370 | 7.39M | t4 = t3 - t4; | 1371 | 7.39M | t5 = t2 - t5a; | 1372 | 7.39M | t6 = t1 - t6a; | 1373 | 7.39M | t7 = t0 - t7; | 1374 | 7.39M | t8a = t8 + t11; | 1375 | 7.39M | t9 = t9a + t10a; | 1376 | 7.39M | t10 = t9a - t10a; | 1377 | 7.39M | t11a = t8 - t11; | 1378 | 7.39M | t12a = t15 - t12; | 1379 | 7.39M | t13 = t14a - t13a; | 1380 | 7.39M | t14 = t14a + t13a; | 1381 | 7.39M | t15a = t15 + t12; | 1382 | | | 1383 | 7.39M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1384 | 7.39M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1385 | 7.39M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1386 | 7.39M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1387 | | | 1388 | 7.39M | out[ 0] = t0a + t15a; | 1389 | 7.39M | out[ 1] = t1a + t14; | 1390 | 7.39M | out[ 2] = t2a + t13a; | 1391 | 7.39M | out[ 3] = t3a + t12; | 1392 | 7.39M | out[ 4] = t4 + t11; | 1393 | 7.39M | out[ 5] = t5 + t10a; | 1394 | 7.39M | out[ 6] = t6 + t9; | 1395 | 7.39M | out[ 7] = t7 + t8a; | 1396 | 7.39M | out[ 8] = t7 - t8a; | 1397 | 7.39M | out[ 9] = t6 - t9; | 1398 | 7.39M | out[10] = t5 - t10a; | 1399 | 7.39M | out[11] = t4 - t11; | 1400 | 7.39M | out[12] = t3a - t12; | 1401 | 7.39M | out[13] = t2a - t13a; | 1402 | 7.39M | out[14] = t1a - t14; | 1403 | 7.39M | out[15] = t0a - t15a; | 1404 | 7.39M | } |
Line | Count | Source | 1320 | 5.88M | { | 1321 | 5.88M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1322 | 5.88M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1323 | 5.88M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1324 | | | 1325 | 5.88M | t0a = (dctint)((IN(0) + IN(8)) * 11585U + (1 << 13)) >> 14; | 1326 | 5.88M | t1a = (dctint)((IN(0) - IN(8)) * 11585U + (1 << 13)) >> 14; | 1327 | 5.88M | t2a = (dctint)(IN(4) * 6270U - IN(12) * 15137U + (1 << 13)) >> 14; | 1328 | 5.88M | t3a = (dctint)(IN(4) * 15137U + IN(12) * 6270U + (1 << 13)) >> 14; | 1329 | 5.88M | t4a = (dctint)(IN(2) * 3196U - IN(14) * 16069U + (1 << 13)) >> 14; | 1330 | 5.88M | t7a = (dctint)(IN(2) * 16069U + IN(14) * 3196U + (1 << 13)) >> 14; | 1331 | 5.88M | t5a = (dctint)(IN(10) * 13623U - IN(6) * 9102U + (1 << 13)) >> 14; | 1332 | 5.88M | t6a = (dctint)(IN(10) * 9102U + IN(6) * 13623U + (1 << 13)) >> 14; | 1333 | 5.88M | t8a = (dctint)(IN(1) * 1606U - IN(15) * 16305U + (1 << 13)) >> 14; | 1334 | 5.88M | t15a = (dctint)(IN(1) * 16305U + IN(15) * 1606U + (1 << 13)) >> 14; | 1335 | 5.88M | t9a = (dctint)(IN(9) * 12665U - IN(7) * 10394U + (1 << 13)) >> 14; | 1336 | 5.88M | t14a = (dctint)(IN(9) * 10394U + IN(7) * 12665U + (1 << 13)) >> 14; | 1337 | 5.88M | t10a = (dctint)(IN(5) * 7723U - IN(11) * 14449U + (1 << 13)) >> 14; | 1338 | 5.88M | t13a = (dctint)(IN(5) * 14449U + IN(11) * 7723U + (1 << 13)) >> 14; | 1339 | 5.88M | t11a = (dctint)(IN(13) * 15679U - IN(3) * 4756U + (1 << 13)) >> 14; | 1340 | 5.88M | t12a = (dctint)(IN(13) * 4756U + IN(3) * 15679U + (1 << 13)) >> 14; | 1341 | | | 1342 | 5.88M | t0 = t0a + t3a; | 1343 | 5.88M | t1 = t1a + t2a; | 1344 | 5.88M | t2 = t1a - t2a; | 1345 | 5.88M | t3 = t0a - t3a; | 1346 | 5.88M | t4 = t4a + t5a; | 1347 | 5.88M | t5 = t4a - t5a; | 1348 | 5.88M | t6 = t7a - t6a; | 1349 | 5.88M | t7 = t7a + t6a; | 1350 | 5.88M | t8 = t8a + t9a; | 1351 | 5.88M | t9 = t8a - t9a; | 1352 | 5.88M | t10 = t11a - t10a; | 1353 | 5.88M | t11 = t11a + t10a; | 1354 | 5.88M | t12 = t12a + t13a; | 1355 | 5.88M | t13 = t12a - t13a; | 1356 | 5.88M | t14 = t15a - t14a; | 1357 | 5.88M | t15 = t15a + t14a; | 1358 | | | 1359 | 5.88M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1360 | 5.88M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1361 | 5.88M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1362 | 5.88M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1363 | 5.88M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1364 | 5.88M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1365 | | | 1366 | 5.88M | t0a = t0 + t7; | 1367 | 5.88M | t1a = t1 + t6a; | 1368 | 5.88M | t2a = t2 + t5a; | 1369 | 5.88M | t3a = t3 + t4; | 1370 | 5.88M | t4 = t3 - t4; | 1371 | 5.88M | t5 = t2 - t5a; | 1372 | 5.88M | t6 = t1 - t6a; | 1373 | 5.88M | t7 = t0 - t7; | 1374 | 5.88M | t8a = t8 + t11; | 1375 | 5.88M | t9 = t9a + t10a; | 1376 | 5.88M | t10 = t9a - t10a; | 1377 | 5.88M | t11a = t8 - t11; | 1378 | 5.88M | t12a = t15 - t12; | 1379 | 5.88M | t13 = t14a - t13a; | 1380 | 5.88M | t14 = t14a + t13a; | 1381 | 5.88M | t15a = t15 + t12; | 1382 | | | 1383 | 5.88M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1384 | 5.88M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1385 | 5.88M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1386 | 5.88M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1387 | | | 1388 | 5.88M | out[ 0] = t0a + t15a; | 1389 | 5.88M | out[ 1] = t1a + t14; | 1390 | 5.88M | out[ 2] = t2a + t13a; | 1391 | 5.88M | out[ 3] = t3a + t12; | 1392 | 5.88M | out[ 4] = t4 + t11; | 1393 | 5.88M | out[ 5] = t5 + t10a; | 1394 | 5.88M | out[ 6] = t6 + t9; | 1395 | 5.88M | out[ 7] = t7 + t8a; | 1396 | 5.88M | out[ 8] = t7 - t8a; | 1397 | 5.88M | out[ 9] = t6 - t9; | 1398 | 5.88M | out[10] = t5 - t10a; | 1399 | 5.88M | out[11] = t4 - t11; | 1400 | 5.88M | out[12] = t3a - t12; | 1401 | 5.88M | out[13] = t2a - t13a; | 1402 | 5.88M | out[14] = t1a - t14; | 1403 | 5.88M | out[15] = t0a - t15a; | 1404 | 5.88M | } |
|
1405 | | |
1406 | | static av_always_inline void iadst16_1d(const dctcoef *in, ptrdiff_t stride, |
1407 | | dctcoef *out, int pass) |
1408 | 5.14M | { |
1409 | 5.14M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; |
1410 | 5.14M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; |
1411 | 5.14M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; |
1412 | | |
1413 | 5.14M | t0 = IN(15) * 16364U + IN(0) * 804U; |
1414 | 5.14M | t1 = IN(15) * 804U - IN(0) * 16364U; |
1415 | 5.14M | t2 = IN(13) * 15893U + IN(2) * 3981U; |
1416 | 5.14M | t3 = IN(13) * 3981U - IN(2) * 15893U; |
1417 | 5.14M | t4 = IN(11) * 14811U + IN(4) * 7005U; |
1418 | 5.14M | t5 = IN(11) * 7005U - IN(4) * 14811U; |
1419 | 5.14M | t6 = IN(9) * 13160U + IN(6) * 9760U; |
1420 | 5.14M | t7 = IN(9) * 9760U - IN(6) * 13160U; |
1421 | 5.14M | t8 = IN(7) * 11003U + IN(8) * 12140U; |
1422 | 5.14M | t9 = IN(7) * 12140U - IN(8) * 11003U; |
1423 | 5.14M | t10 = IN(5) * 8423U + IN(10) * 14053U; |
1424 | 5.14M | t11 = IN(5) * 14053U - IN(10) * 8423U; |
1425 | 5.14M | t12 = IN(3) * 5520U + IN(12) * 15426U; |
1426 | 5.14M | t13 = IN(3) * 15426U - IN(12) * 5520U; |
1427 | 5.14M | t14 = IN(1) * 2404U + IN(14) * 16207U; |
1428 | 5.14M | t15 = IN(1) * 16207U - IN(14) * 2404U; |
1429 | | |
1430 | 5.14M | t0a = (dctint)((1U << 13) + t0 + t8 ) >> 14; |
1431 | 5.14M | t1a = (dctint)((1U << 13) + t1 + t9 ) >> 14; |
1432 | 5.14M | t2a = (dctint)((1U << 13) + t2 + t10) >> 14; |
1433 | 5.14M | t3a = (dctint)((1U << 13) + t3 + t11) >> 14; |
1434 | 5.14M | t4a = (dctint)((1U << 13) + t4 + t12) >> 14; |
1435 | 5.14M | t5a = (dctint)((1U << 13) + t5 + t13) >> 14; |
1436 | 5.14M | t6a = (dctint)((1U << 13) + t6 + t14) >> 14; |
1437 | 5.14M | t7a = (dctint)((1U << 13) + t7 + t15) >> 14; |
1438 | 5.14M | t8a = (dctint)((1U << 13) + t0 - t8 ) >> 14; |
1439 | 5.14M | t9a = (dctint)((1U << 13) + t1 - t9 ) >> 14; |
1440 | 5.14M | t10a = (dctint)((1U << 13) + t2 - t10) >> 14; |
1441 | 5.14M | t11a = (dctint)((1U << 13) + t3 - t11) >> 14; |
1442 | 5.14M | t12a = (dctint)((1U << 13) + t4 - t12) >> 14; |
1443 | 5.14M | t13a = (dctint)((1U << 13) + t5 - t13) >> 14; |
1444 | 5.14M | t14a = (dctint)((1U << 13) + t6 - t14) >> 14; |
1445 | 5.14M | t15a = (dctint)((1U << 13) + t7 - t15) >> 14; |
1446 | | |
1447 | 5.14M | t8 = t8a * 16069U + t9a * 3196U; |
1448 | 5.14M | t9 = t8a * 3196U - t9a * 16069U; |
1449 | 5.14M | t10 = t10a * 9102U + t11a * 13623U; |
1450 | 5.14M | t11 = t10a * 13623U - t11a * 9102U; |
1451 | 5.14M | t12 = t13a * 16069U - t12a * 3196U; |
1452 | 5.14M | t13 = t13a * 3196U + t12a * 16069U; |
1453 | 5.14M | t14 = t15a * 9102U - t14a * 13623U; |
1454 | 5.14M | t15 = t15a * 13623U + t14a * 9102U; |
1455 | | |
1456 | 5.14M | t0 = t0a + t4a; |
1457 | 5.14M | t1 = t1a + t5a; |
1458 | 5.14M | t2 = t2a + t6a; |
1459 | 5.14M | t3 = t3a + t7a; |
1460 | 5.14M | t4 = t0a - t4a; |
1461 | 5.14M | t5 = t1a - t5a; |
1462 | 5.14M | t6 = t2a - t6a; |
1463 | 5.14M | t7 = t3a - t7a; |
1464 | 5.14M | t8a = (dctint)((1U << 13) + t8 + t12) >> 14; |
1465 | 5.14M | t9a = (dctint)((1U << 13) + t9 + t13) >> 14; |
1466 | 5.14M | t10a = (dctint)((1U << 13) + t10 + t14) >> 14; |
1467 | 5.14M | t11a = (dctint)((1U << 13) + t11 + t15) >> 14; |
1468 | 5.14M | t12a = (dctint)((1U << 13) + t8 - t12) >> 14; |
1469 | 5.14M | t13a = (dctint)((1U << 13) + t9 - t13) >> 14; |
1470 | 5.14M | t14a = (dctint)((1U << 13) + t10 - t14) >> 14; |
1471 | 5.14M | t15a = (dctint)((1U << 13) + t11 - t15) >> 14; |
1472 | | |
1473 | 5.14M | t4a = t4 * 15137U + t5 * 6270U; |
1474 | 5.14M | t5a = t4 * 6270U - t5 * 15137U; |
1475 | 5.14M | t6a = t7 * 15137U - t6 * 6270U; |
1476 | 5.14M | t7a = t7 * 6270U + t6 * 15137U; |
1477 | 5.14M | t12 = t12a * 15137U + t13a * 6270U; |
1478 | 5.14M | t13 = t12a * 6270U - t13a * 15137U; |
1479 | 5.14M | t14 = t15a * 15137U - t14a * 6270U; |
1480 | 5.14M | t15 = t15a * 6270U + t14a * 15137U; |
1481 | | |
1482 | 5.14M | out[ 0] = t0 + t2; |
1483 | 5.14M | out[15] = -(t1 + t3); |
1484 | 5.14M | t2a = t0 - t2; |
1485 | 5.14M | t3a = t1 - t3; |
1486 | 5.14M | out[ 3] = -((dctint)((1U << 13) + t4a + t6a) >> 14); |
1487 | 5.14M | out[12] = (dctint)((1U << 13) + t5a + t7a) >> 14; |
1488 | 5.14M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; |
1489 | 5.14M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; |
1490 | 5.14M | out[ 1] = -(t8a + t10a); |
1491 | 5.14M | out[14] = t9a + t11a; |
1492 | 5.14M | t10 = t8a - t10a; |
1493 | 5.14M | t11 = t9a - t11a; |
1494 | 5.14M | out[ 2] = (dctint)((1U << 13) + t12 + t14) >> 14; |
1495 | 5.14M | out[13] = -((dctint)((1U << 13) + t13 + t15) >> 14); |
1496 | 5.14M | t14a = (dctint)((1U << 13) + t12 - t14) >> 14; |
1497 | 5.14M | t15a = (dctint)((1U << 13) + t13 - t15) >> 14; |
1498 | | |
1499 | 5.14M | out[ 7] = (dctint)(-(t2a + t3a) * 11585U + (1 << 13)) >> 14; |
1500 | 5.14M | out[ 8] = (dctint)( (t2a - t3a) * 11585U + (1 << 13)) >> 14; |
1501 | 5.14M | out[ 4] = (dctint)( (t7 + t6) * 11585U + (1 << 13)) >> 14; |
1502 | 5.14M | out[11] = (dctint)( (t7 - t6) * 11585U + (1 << 13)) >> 14; |
1503 | 5.14M | out[ 6] = (dctint)( (t11 + t10) * 11585U + (1 << 13)) >> 14; |
1504 | 5.14M | out[ 9] = (dctint)( (t11 - t10) * 11585U + (1 << 13)) >> 14; |
1505 | 5.14M | out[ 5] = (dctint)(-(t14a + t15a) * 11585U + (1 << 13)) >> 14; |
1506 | 5.14M | out[10] = (dctint)( (t14a - t15a) * 11585U + (1 << 13)) >> 14; |
1507 | 5.14M | } vp9dsp_10bpp.c:iadst16_1d Line | Count | Source | 1408 | 1.25M | { | 1409 | 1.25M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1410 | 1.25M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1411 | 1.25M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1412 | | | 1413 | 1.25M | t0 = IN(15) * 16364U + IN(0) * 804U; | 1414 | 1.25M | t1 = IN(15) * 804U - IN(0) * 16364U; | 1415 | 1.25M | t2 = IN(13) * 15893U + IN(2) * 3981U; | 1416 | 1.25M | t3 = IN(13) * 3981U - IN(2) * 15893U; | 1417 | 1.25M | t4 = IN(11) * 14811U + IN(4) * 7005U; | 1418 | 1.25M | t5 = IN(11) * 7005U - IN(4) * 14811U; | 1419 | 1.25M | t6 = IN(9) * 13160U + IN(6) * 9760U; | 1420 | 1.25M | t7 = IN(9) * 9760U - IN(6) * 13160U; | 1421 | 1.25M | t8 = IN(7) * 11003U + IN(8) * 12140U; | 1422 | 1.25M | t9 = IN(7) * 12140U - IN(8) * 11003U; | 1423 | 1.25M | t10 = IN(5) * 8423U + IN(10) * 14053U; | 1424 | 1.25M | t11 = IN(5) * 14053U - IN(10) * 8423U; | 1425 | 1.25M | t12 = IN(3) * 5520U + IN(12) * 15426U; | 1426 | 1.25M | t13 = IN(3) * 15426U - IN(12) * 5520U; | 1427 | 1.25M | t14 = IN(1) * 2404U + IN(14) * 16207U; | 1428 | 1.25M | t15 = IN(1) * 16207U - IN(14) * 2404U; | 1429 | | | 1430 | 1.25M | t0a = (dctint)((1U << 13) + t0 + t8 ) >> 14; | 1431 | 1.25M | t1a = (dctint)((1U << 13) + t1 + t9 ) >> 14; | 1432 | 1.25M | t2a = (dctint)((1U << 13) + t2 + t10) >> 14; | 1433 | 1.25M | t3a = (dctint)((1U << 13) + t3 + t11) >> 14; | 1434 | 1.25M | t4a = (dctint)((1U << 13) + t4 + t12) >> 14; | 1435 | 1.25M | t5a = (dctint)((1U << 13) + t5 + t13) >> 14; | 1436 | 1.25M | t6a = (dctint)((1U << 13) + t6 + t14) >> 14; | 1437 | 1.25M | t7a = (dctint)((1U << 13) + t7 + t15) >> 14; | 1438 | 1.25M | t8a = (dctint)((1U << 13) + t0 - t8 ) >> 14; | 1439 | 1.25M | t9a = (dctint)((1U << 13) + t1 - t9 ) >> 14; | 1440 | 1.25M | t10a = (dctint)((1U << 13) + t2 - t10) >> 14; | 1441 | 1.25M | t11a = (dctint)((1U << 13) + t3 - t11) >> 14; | 1442 | 1.25M | t12a = (dctint)((1U << 13) + t4 - t12) >> 14; | 1443 | 1.25M | t13a = (dctint)((1U << 13) + t5 - t13) >> 14; | 1444 | 1.25M | t14a = (dctint)((1U << 13) + t6 - t14) >> 14; | 1445 | 1.25M | t15a = (dctint)((1U << 13) + t7 - t15) >> 14; | 1446 | | | 1447 | 1.25M | t8 = t8a * 16069U + t9a * 3196U; | 1448 | 1.25M | t9 = t8a * 3196U - t9a * 16069U; | 1449 | 1.25M | t10 = t10a * 9102U + t11a * 13623U; | 1450 | 1.25M | t11 = t10a * 13623U - t11a * 9102U; | 1451 | 1.25M | t12 = t13a * 16069U - t12a * 3196U; | 1452 | 1.25M | t13 = t13a * 3196U + t12a * 16069U; | 1453 | 1.25M | t14 = t15a * 9102U - t14a * 13623U; | 1454 | 1.25M | t15 = t15a * 13623U + t14a * 9102U; | 1455 | | | 1456 | 1.25M | t0 = t0a + t4a; | 1457 | 1.25M | t1 = t1a + t5a; | 1458 | 1.25M | t2 = t2a + t6a; | 1459 | 1.25M | t3 = t3a + t7a; | 1460 | 1.25M | t4 = t0a - t4a; | 1461 | 1.25M | t5 = t1a - t5a; | 1462 | 1.25M | t6 = t2a - t6a; | 1463 | 1.25M | t7 = t3a - t7a; | 1464 | 1.25M | t8a = (dctint)((1U << 13) + t8 + t12) >> 14; | 1465 | 1.25M | t9a = (dctint)((1U << 13) + t9 + t13) >> 14; | 1466 | 1.25M | t10a = (dctint)((1U << 13) + t10 + t14) >> 14; | 1467 | 1.25M | t11a = (dctint)((1U << 13) + t11 + t15) >> 14; | 1468 | 1.25M | t12a = (dctint)((1U << 13) + t8 - t12) >> 14; | 1469 | 1.25M | t13a = (dctint)((1U << 13) + t9 - t13) >> 14; | 1470 | 1.25M | t14a = (dctint)((1U << 13) + t10 - t14) >> 14; | 1471 | 1.25M | t15a = (dctint)((1U << 13) + t11 - t15) >> 14; | 1472 | | | 1473 | 1.25M | t4a = t4 * 15137U + t5 * 6270U; | 1474 | 1.25M | t5a = t4 * 6270U - t5 * 15137U; | 1475 | 1.25M | t6a = t7 * 15137U - t6 * 6270U; | 1476 | 1.25M | t7a = t7 * 6270U + t6 * 15137U; | 1477 | 1.25M | t12 = t12a * 15137U + t13a * 6270U; | 1478 | 1.25M | t13 = t12a * 6270U - t13a * 15137U; | 1479 | 1.25M | t14 = t15a * 15137U - t14a * 6270U; | 1480 | 1.25M | t15 = t15a * 6270U + t14a * 15137U; | 1481 | | | 1482 | 1.25M | out[ 0] = t0 + t2; | 1483 | 1.25M | out[15] = -(t1 + t3); | 1484 | 1.25M | t2a = t0 - t2; | 1485 | 1.25M | t3a = t1 - t3; | 1486 | 1.25M | out[ 3] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1487 | 1.25M | out[12] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1488 | 1.25M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1489 | 1.25M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1490 | 1.25M | out[ 1] = -(t8a + t10a); | 1491 | 1.25M | out[14] = t9a + t11a; | 1492 | 1.25M | t10 = t8a - t10a; | 1493 | 1.25M | t11 = t9a - t11a; | 1494 | 1.25M | out[ 2] = (dctint)((1U << 13) + t12 + t14) >> 14; | 1495 | 1.25M | out[13] = -((dctint)((1U << 13) + t13 + t15) >> 14); | 1496 | 1.25M | t14a = (dctint)((1U << 13) + t12 - t14) >> 14; | 1497 | 1.25M | t15a = (dctint)((1U << 13) + t13 - t15) >> 14; | 1498 | | | 1499 | 1.25M | out[ 7] = (dctint)(-(t2a + t3a) * 11585U + (1 << 13)) >> 14; | 1500 | 1.25M | out[ 8] = (dctint)( (t2a - t3a) * 11585U + (1 << 13)) >> 14; | 1501 | 1.25M | out[ 4] = (dctint)( (t7 + t6) * 11585U + (1 << 13)) >> 14; | 1502 | 1.25M | out[11] = (dctint)( (t7 - t6) * 11585U + (1 << 13)) >> 14; | 1503 | 1.25M | out[ 6] = (dctint)( (t11 + t10) * 11585U + (1 << 13)) >> 14; | 1504 | 1.25M | out[ 9] = (dctint)( (t11 - t10) * 11585U + (1 << 13)) >> 14; | 1505 | 1.25M | out[ 5] = (dctint)(-(t14a + t15a) * 11585U + (1 << 13)) >> 14; | 1506 | 1.25M | out[10] = (dctint)( (t14a - t15a) * 11585U + (1 << 13)) >> 14; | 1507 | 1.25M | } |
vp9dsp_12bpp.c:iadst16_1d Line | Count | Source | 1408 | 2.17M | { | 1409 | 2.17M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1410 | 2.17M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1411 | 2.17M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1412 | | | 1413 | 2.17M | t0 = IN(15) * 16364U + IN(0) * 804U; | 1414 | 2.17M | t1 = IN(15) * 804U - IN(0) * 16364U; | 1415 | 2.17M | t2 = IN(13) * 15893U + IN(2) * 3981U; | 1416 | 2.17M | t3 = IN(13) * 3981U - IN(2) * 15893U; | 1417 | 2.17M | t4 = IN(11) * 14811U + IN(4) * 7005U; | 1418 | 2.17M | t5 = IN(11) * 7005U - IN(4) * 14811U; | 1419 | 2.17M | t6 = IN(9) * 13160U + IN(6) * 9760U; | 1420 | 2.17M | t7 = IN(9) * 9760U - IN(6) * 13160U; | 1421 | 2.17M | t8 = IN(7) * 11003U + IN(8) * 12140U; | 1422 | 2.17M | t9 = IN(7) * 12140U - IN(8) * 11003U; | 1423 | 2.17M | t10 = IN(5) * 8423U + IN(10) * 14053U; | 1424 | 2.17M | t11 = IN(5) * 14053U - IN(10) * 8423U; | 1425 | 2.17M | t12 = IN(3) * 5520U + IN(12) * 15426U; | 1426 | 2.17M | t13 = IN(3) * 15426U - IN(12) * 5520U; | 1427 | 2.17M | t14 = IN(1) * 2404U + IN(14) * 16207U; | 1428 | 2.17M | t15 = IN(1) * 16207U - IN(14) * 2404U; | 1429 | | | 1430 | 2.17M | t0a = (dctint)((1U << 13) + t0 + t8 ) >> 14; | 1431 | 2.17M | t1a = (dctint)((1U << 13) + t1 + t9 ) >> 14; | 1432 | 2.17M | t2a = (dctint)((1U << 13) + t2 + t10) >> 14; | 1433 | 2.17M | t3a = (dctint)((1U << 13) + t3 + t11) >> 14; | 1434 | 2.17M | t4a = (dctint)((1U << 13) + t4 + t12) >> 14; | 1435 | 2.17M | t5a = (dctint)((1U << 13) + t5 + t13) >> 14; | 1436 | 2.17M | t6a = (dctint)((1U << 13) + t6 + t14) >> 14; | 1437 | 2.17M | t7a = (dctint)((1U << 13) + t7 + t15) >> 14; | 1438 | 2.17M | t8a = (dctint)((1U << 13) + t0 - t8 ) >> 14; | 1439 | 2.17M | t9a = (dctint)((1U << 13) + t1 - t9 ) >> 14; | 1440 | 2.17M | t10a = (dctint)((1U << 13) + t2 - t10) >> 14; | 1441 | 2.17M | t11a = (dctint)((1U << 13) + t3 - t11) >> 14; | 1442 | 2.17M | t12a = (dctint)((1U << 13) + t4 - t12) >> 14; | 1443 | 2.17M | t13a = (dctint)((1U << 13) + t5 - t13) >> 14; | 1444 | 2.17M | t14a = (dctint)((1U << 13) + t6 - t14) >> 14; | 1445 | 2.17M | t15a = (dctint)((1U << 13) + t7 - t15) >> 14; | 1446 | | | 1447 | 2.17M | t8 = t8a * 16069U + t9a * 3196U; | 1448 | 2.17M | t9 = t8a * 3196U - t9a * 16069U; | 1449 | 2.17M | t10 = t10a * 9102U + t11a * 13623U; | 1450 | 2.17M | t11 = t10a * 13623U - t11a * 9102U; | 1451 | 2.17M | t12 = t13a * 16069U - t12a * 3196U; | 1452 | 2.17M | t13 = t13a * 3196U + t12a * 16069U; | 1453 | 2.17M | t14 = t15a * 9102U - t14a * 13623U; | 1454 | 2.17M | t15 = t15a * 13623U + t14a * 9102U; | 1455 | | | 1456 | 2.17M | t0 = t0a + t4a; | 1457 | 2.17M | t1 = t1a + t5a; | 1458 | 2.17M | t2 = t2a + t6a; | 1459 | 2.17M | t3 = t3a + t7a; | 1460 | 2.17M | t4 = t0a - t4a; | 1461 | 2.17M | t5 = t1a - t5a; | 1462 | 2.17M | t6 = t2a - t6a; | 1463 | 2.17M | t7 = t3a - t7a; | 1464 | 2.17M | t8a = (dctint)((1U << 13) + t8 + t12) >> 14; | 1465 | 2.17M | t9a = (dctint)((1U << 13) + t9 + t13) >> 14; | 1466 | 2.17M | t10a = (dctint)((1U << 13) + t10 + t14) >> 14; | 1467 | 2.17M | t11a = (dctint)((1U << 13) + t11 + t15) >> 14; | 1468 | 2.17M | t12a = (dctint)((1U << 13) + t8 - t12) >> 14; | 1469 | 2.17M | t13a = (dctint)((1U << 13) + t9 - t13) >> 14; | 1470 | 2.17M | t14a = (dctint)((1U << 13) + t10 - t14) >> 14; | 1471 | 2.17M | t15a = (dctint)((1U << 13) + t11 - t15) >> 14; | 1472 | | | 1473 | 2.17M | t4a = t4 * 15137U + t5 * 6270U; | 1474 | 2.17M | t5a = t4 * 6270U - t5 * 15137U; | 1475 | 2.17M | t6a = t7 * 15137U - t6 * 6270U; | 1476 | 2.17M | t7a = t7 * 6270U + t6 * 15137U; | 1477 | 2.17M | t12 = t12a * 15137U + t13a * 6270U; | 1478 | 2.17M | t13 = t12a * 6270U - t13a * 15137U; | 1479 | 2.17M | t14 = t15a * 15137U - t14a * 6270U; | 1480 | 2.17M | t15 = t15a * 6270U + t14a * 15137U; | 1481 | | | 1482 | 2.17M | out[ 0] = t0 + t2; | 1483 | 2.17M | out[15] = -(t1 + t3); | 1484 | 2.17M | t2a = t0 - t2; | 1485 | 2.17M | t3a = t1 - t3; | 1486 | 2.17M | out[ 3] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1487 | 2.17M | out[12] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1488 | 2.17M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1489 | 2.17M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1490 | 2.17M | out[ 1] = -(t8a + t10a); | 1491 | 2.17M | out[14] = t9a + t11a; | 1492 | 2.17M | t10 = t8a - t10a; | 1493 | 2.17M | t11 = t9a - t11a; | 1494 | 2.17M | out[ 2] = (dctint)((1U << 13) + t12 + t14) >> 14; | 1495 | 2.17M | out[13] = -((dctint)((1U << 13) + t13 + t15) >> 14); | 1496 | 2.17M | t14a = (dctint)((1U << 13) + t12 - t14) >> 14; | 1497 | 2.17M | t15a = (dctint)((1U << 13) + t13 - t15) >> 14; | 1498 | | | 1499 | 2.17M | out[ 7] = (dctint)(-(t2a + t3a) * 11585U + (1 << 13)) >> 14; | 1500 | 2.17M | out[ 8] = (dctint)( (t2a - t3a) * 11585U + (1 << 13)) >> 14; | 1501 | 2.17M | out[ 4] = (dctint)( (t7 + t6) * 11585U + (1 << 13)) >> 14; | 1502 | 2.17M | out[11] = (dctint)( (t7 - t6) * 11585U + (1 << 13)) >> 14; | 1503 | 2.17M | out[ 6] = (dctint)( (t11 + t10) * 11585U + (1 << 13)) >> 14; | 1504 | 2.17M | out[ 9] = (dctint)( (t11 - t10) * 11585U + (1 << 13)) >> 14; | 1505 | 2.17M | out[ 5] = (dctint)(-(t14a + t15a) * 11585U + (1 << 13)) >> 14; | 1506 | 2.17M | out[10] = (dctint)( (t14a - t15a) * 11585U + (1 << 13)) >> 14; | 1507 | 2.17M | } |
Line | Count | Source | 1408 | 1.70M | { | 1409 | 1.70M | dctint t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15; | 1410 | 1.70M | dctint t0a, t1a, t2a, t3a, t4a, t5a, t6a, t7a; | 1411 | 1.70M | dctint t8a, t9a, t10a, t11a, t12a, t13a, t14a, t15a; | 1412 | | | 1413 | 1.70M | t0 = IN(15) * 16364U + IN(0) * 804U; | 1414 | 1.70M | t1 = IN(15) * 804U - IN(0) * 16364U; | 1415 | 1.70M | t2 = IN(13) * 15893U + IN(2) * 3981U; | 1416 | 1.70M | t3 = IN(13) * 3981U - IN(2) * 15893U; | 1417 | 1.70M | t4 = IN(11) * 14811U + IN(4) * 7005U; | 1418 | 1.70M | t5 = IN(11) * 7005U - IN(4) * 14811U; | 1419 | 1.70M | t6 = IN(9) * 13160U + IN(6) * 9760U; | 1420 | 1.70M | t7 = IN(9) * 9760U - IN(6) * 13160U; | 1421 | 1.70M | t8 = IN(7) * 11003U + IN(8) * 12140U; | 1422 | 1.70M | t9 = IN(7) * 12140U - IN(8) * 11003U; | 1423 | 1.70M | t10 = IN(5) * 8423U + IN(10) * 14053U; | 1424 | 1.70M | t11 = IN(5) * 14053U - IN(10) * 8423U; | 1425 | 1.70M | t12 = IN(3) * 5520U + IN(12) * 15426U; | 1426 | 1.70M | t13 = IN(3) * 15426U - IN(12) * 5520U; | 1427 | 1.70M | t14 = IN(1) * 2404U + IN(14) * 16207U; | 1428 | 1.70M | t15 = IN(1) * 16207U - IN(14) * 2404U; | 1429 | | | 1430 | 1.70M | t0a = (dctint)((1U << 13) + t0 + t8 ) >> 14; | 1431 | 1.70M | t1a = (dctint)((1U << 13) + t1 + t9 ) >> 14; | 1432 | 1.70M | t2a = (dctint)((1U << 13) + t2 + t10) >> 14; | 1433 | 1.70M | t3a = (dctint)((1U << 13) + t3 + t11) >> 14; | 1434 | 1.70M | t4a = (dctint)((1U << 13) + t4 + t12) >> 14; | 1435 | 1.70M | t5a = (dctint)((1U << 13) + t5 + t13) >> 14; | 1436 | 1.70M | t6a = (dctint)((1U << 13) + t6 + t14) >> 14; | 1437 | 1.70M | t7a = (dctint)((1U << 13) + t7 + t15) >> 14; | 1438 | 1.70M | t8a = (dctint)((1U << 13) + t0 - t8 ) >> 14; | 1439 | 1.70M | t9a = (dctint)((1U << 13) + t1 - t9 ) >> 14; | 1440 | 1.70M | t10a = (dctint)((1U << 13) + t2 - t10) >> 14; | 1441 | 1.70M | t11a = (dctint)((1U << 13) + t3 - t11) >> 14; | 1442 | 1.70M | t12a = (dctint)((1U << 13) + t4 - t12) >> 14; | 1443 | 1.70M | t13a = (dctint)((1U << 13) + t5 - t13) >> 14; | 1444 | 1.70M | t14a = (dctint)((1U << 13) + t6 - t14) >> 14; | 1445 | 1.70M | t15a = (dctint)((1U << 13) + t7 - t15) >> 14; | 1446 | | | 1447 | 1.70M | t8 = t8a * 16069U + t9a * 3196U; | 1448 | 1.70M | t9 = t8a * 3196U - t9a * 16069U; | 1449 | 1.70M | t10 = t10a * 9102U + t11a * 13623U; | 1450 | 1.70M | t11 = t10a * 13623U - t11a * 9102U; | 1451 | 1.70M | t12 = t13a * 16069U - t12a * 3196U; | 1452 | 1.70M | t13 = t13a * 3196U + t12a * 16069U; | 1453 | 1.70M | t14 = t15a * 9102U - t14a * 13623U; | 1454 | 1.70M | t15 = t15a * 13623U + t14a * 9102U; | 1455 | | | 1456 | 1.70M | t0 = t0a + t4a; | 1457 | 1.70M | t1 = t1a + t5a; | 1458 | 1.70M | t2 = t2a + t6a; | 1459 | 1.70M | t3 = t3a + t7a; | 1460 | 1.70M | t4 = t0a - t4a; | 1461 | 1.70M | t5 = t1a - t5a; | 1462 | 1.70M | t6 = t2a - t6a; | 1463 | 1.70M | t7 = t3a - t7a; | 1464 | 1.70M | t8a = (dctint)((1U << 13) + t8 + t12) >> 14; | 1465 | 1.70M | t9a = (dctint)((1U << 13) + t9 + t13) >> 14; | 1466 | 1.70M | t10a = (dctint)((1U << 13) + t10 + t14) >> 14; | 1467 | 1.70M | t11a = (dctint)((1U << 13) + t11 + t15) >> 14; | 1468 | 1.70M | t12a = (dctint)((1U << 13) + t8 - t12) >> 14; | 1469 | 1.70M | t13a = (dctint)((1U << 13) + t9 - t13) >> 14; | 1470 | 1.70M | t14a = (dctint)((1U << 13) + t10 - t14) >> 14; | 1471 | 1.70M | t15a = (dctint)((1U << 13) + t11 - t15) >> 14; | 1472 | | | 1473 | 1.70M | t4a = t4 * 15137U + t5 * 6270U; | 1474 | 1.70M | t5a = t4 * 6270U - t5 * 15137U; | 1475 | 1.70M | t6a = t7 * 15137U - t6 * 6270U; | 1476 | 1.70M | t7a = t7 * 6270U + t6 * 15137U; | 1477 | 1.70M | t12 = t12a * 15137U + t13a * 6270U; | 1478 | 1.70M | t13 = t12a * 6270U - t13a * 15137U; | 1479 | 1.70M | t14 = t15a * 15137U - t14a * 6270U; | 1480 | 1.70M | t15 = t15a * 6270U + t14a * 15137U; | 1481 | | | 1482 | 1.70M | out[ 0] = t0 + t2; | 1483 | 1.70M | out[15] = -(t1 + t3); | 1484 | 1.70M | t2a = t0 - t2; | 1485 | 1.70M | t3a = t1 - t3; | 1486 | 1.70M | out[ 3] = -((dctint)((1U << 13) + t4a + t6a) >> 14); | 1487 | 1.70M | out[12] = (dctint)((1U << 13) + t5a + t7a) >> 14; | 1488 | 1.70M | t6 = (dctint)((1U << 13) + t4a - t6a) >> 14; | 1489 | 1.70M | t7 = (dctint)((1U << 13) + t5a - t7a) >> 14; | 1490 | 1.70M | out[ 1] = -(t8a + t10a); | 1491 | 1.70M | out[14] = t9a + t11a; | 1492 | 1.70M | t10 = t8a - t10a; | 1493 | 1.70M | t11 = t9a - t11a; | 1494 | 1.70M | out[ 2] = (dctint)((1U << 13) + t12 + t14) >> 14; | 1495 | 1.70M | out[13] = -((dctint)((1U << 13) + t13 + t15) >> 14); | 1496 | 1.70M | t14a = (dctint)((1U << 13) + t12 - t14) >> 14; | 1497 | 1.70M | t15a = (dctint)((1U << 13) + t13 - t15) >> 14; | 1498 | | | 1499 | 1.70M | out[ 7] = (dctint)(-(t2a + t3a) * 11585U + (1 << 13)) >> 14; | 1500 | 1.70M | out[ 8] = (dctint)( (t2a - t3a) * 11585U + (1 << 13)) >> 14; | 1501 | 1.70M | out[ 4] = (dctint)( (t7 + t6) * 11585U + (1 << 13)) >> 14; | 1502 | 1.70M | out[11] = (dctint)( (t7 - t6) * 11585U + (1 << 13)) >> 14; | 1503 | 1.70M | out[ 6] = (dctint)( (t11 + t10) * 11585U + (1 << 13)) >> 14; | 1504 | 1.70M | out[ 9] = (dctint)( (t11 - t10) * 11585U + (1 << 13)) >> 14; | 1505 | 1.70M | out[ 5] = (dctint)(-(t14a + t15a) * 11585U + (1 << 13)) >> 14; | 1506 | 1.70M | out[10] = (dctint)( (t14a - t15a) * 11585U + (1 << 13)) >> 14; | 1507 | 1.70M | } |
|
1508 | | |
1509 | | itxfm_wrap(16, 6) |
1510 | | |
1511 | | static av_always_inline void idct32_1d(const dctcoef *in, ptrdiff_t stride, |
1512 | | dctcoef *out, int pass) |
1513 | 31.4M | { |
1514 | 31.4M | dctint t0a = (dctint)((IN(0) + IN(16)) * 11585U + (1 << 13)) >> 14; |
1515 | 31.4M | dctint t1a = (dctint)((IN(0) - IN(16)) * 11585U + (1 << 13)) >> 14; |
1516 | 31.4M | dctint t2a = (dctint)(IN( 8) * 6270U - IN(24) * 15137U + (1 << 13)) >> 14; |
1517 | 31.4M | dctint t3a = (dctint)(IN( 8) * 15137U + IN(24) * 6270U + (1 << 13)) >> 14; |
1518 | 31.4M | dctint t4a = (dctint)(IN( 4) * 3196U - IN(28) * 16069U + (1 << 13)) >> 14; |
1519 | 31.4M | dctint t7a = (dctint)(IN( 4) * 16069U + IN(28) * 3196U + (1 << 13)) >> 14; |
1520 | 31.4M | dctint t5a = (dctint)(IN(20) * 13623U - IN(12) * 9102U + (1 << 13)) >> 14; |
1521 | 31.4M | dctint t6a = (dctint)(IN(20) * 9102U + IN(12) * 13623U + (1 << 13)) >> 14; |
1522 | 31.4M | dctint t8a = (dctint)(IN( 2) * 1606U - IN(30) * 16305U + (1 << 13)) >> 14; |
1523 | 31.4M | dctint t15a = (dctint)(IN( 2) * 16305U + IN(30) * 1606U + (1 << 13)) >> 14; |
1524 | 31.4M | dctint t9a = (dctint)(IN(18) * 12665U - IN(14) * 10394U + (1 << 13)) >> 14; |
1525 | 31.4M | dctint t14a = (dctint)(IN(18) * 10394U + IN(14) * 12665U + (1 << 13)) >> 14; |
1526 | 31.4M | dctint t10a = (dctint)(IN(10) * 7723U - IN(22) * 14449U + (1 << 13)) >> 14; |
1527 | 31.4M | dctint t13a = (dctint)(IN(10) * 14449U + IN(22) * 7723U + (1 << 13)) >> 14; |
1528 | 31.4M | dctint t11a = (dctint)(IN(26) * 15679U - IN( 6) * 4756U + (1 << 13)) >> 14; |
1529 | 31.4M | dctint t12a = (dctint)(IN(26) * 4756U + IN( 6) * 15679U + (1 << 13)) >> 14; |
1530 | 31.4M | dctint t16a = (dctint)(IN( 1) * 804U - IN(31) * 16364U + (1 << 13)) >> 14; |
1531 | 31.4M | dctint t31a = (dctint)(IN( 1) * 16364U + IN(31) * 804U + (1 << 13)) >> 14; |
1532 | 31.4M | dctint t17a = (dctint)(IN(17) * 12140U - IN(15) * 11003U + (1 << 13)) >> 14; |
1533 | 31.4M | dctint t30a = (dctint)(IN(17) * 11003U + IN(15) * 12140U + (1 << 13)) >> 14; |
1534 | 31.4M | dctint t18a = (dctint)(IN( 9) * 7005U - IN(23) * 14811U + (1 << 13)) >> 14; |
1535 | 31.4M | dctint t29a = (dctint)(IN( 9) * 14811U + IN(23) * 7005U + (1 << 13)) >> 14; |
1536 | 31.4M | dctint t19a = (dctint)(IN(25) * 15426U - IN( 7) * 5520U + (1 << 13)) >> 14; |
1537 | 31.4M | dctint t28a = (dctint)(IN(25) * 5520U + IN( 7) * 15426U + (1 << 13)) >> 14; |
1538 | 31.4M | dctint t20a = (dctint)(IN( 5) * 3981U - IN(27) * 15893U + (1 << 13)) >> 14; |
1539 | 31.4M | dctint t27a = (dctint)(IN( 5) * 15893U + IN(27) * 3981U + (1 << 13)) >> 14; |
1540 | 31.4M | dctint t21a = (dctint)(IN(21) * 14053U - IN(11) * 8423U + (1 << 13)) >> 14; |
1541 | 31.4M | dctint t26a = (dctint)(IN(21) * 8423U + IN(11) * 14053U + (1 << 13)) >> 14; |
1542 | 31.4M | dctint t22a = (dctint)(IN(13) * 9760U - IN(19) * 13160U + (1 << 13)) >> 14; |
1543 | 31.4M | dctint t25a = (dctint)(IN(13) * 13160U + IN(19) * 9760U + (1 << 13)) >> 14; |
1544 | 31.4M | dctint t23a = (dctint)(IN(29) * 16207U - IN( 3) * 2404U + (1 << 13)) >> 14; |
1545 | 31.4M | dctint t24a = (dctint)(IN(29) * 2404U + IN( 3) * 16207U + (1 << 13)) >> 14; |
1546 | | |
1547 | 31.4M | dctint t0 = t0a + t3a; |
1548 | 31.4M | dctint t1 = t1a + t2a; |
1549 | 31.4M | dctint t2 = t1a - t2a; |
1550 | 31.4M | dctint t3 = t0a - t3a; |
1551 | 31.4M | dctint t4 = t4a + t5a; |
1552 | 31.4M | dctint t5 = t4a - t5a; |
1553 | 31.4M | dctint t6 = t7a - t6a; |
1554 | 31.4M | dctint t7 = t7a + t6a; |
1555 | 31.4M | dctint t8 = t8a + t9a; |
1556 | 31.4M | dctint t9 = t8a - t9a; |
1557 | 31.4M | dctint t10 = t11a - t10a; |
1558 | 31.4M | dctint t11 = t11a + t10a; |
1559 | 31.4M | dctint t12 = t12a + t13a; |
1560 | 31.4M | dctint t13 = t12a - t13a; |
1561 | 31.4M | dctint t14 = t15a - t14a; |
1562 | 31.4M | dctint t15 = t15a + t14a; |
1563 | 31.4M | dctint t16 = t16a + t17a; |
1564 | 31.4M | dctint t17 = t16a - t17a; |
1565 | 31.4M | dctint t18 = t19a - t18a; |
1566 | 31.4M | dctint t19 = t19a + t18a; |
1567 | 31.4M | dctint t20 = t20a + t21a; |
1568 | 31.4M | dctint t21 = t20a - t21a; |
1569 | 31.4M | dctint t22 = t23a - t22a; |
1570 | 31.4M | dctint t23 = t23a + t22a; |
1571 | 31.4M | dctint t24 = t24a + t25a; |
1572 | 31.4M | dctint t25 = t24a - t25a; |
1573 | 31.4M | dctint t26 = t27a - t26a; |
1574 | 31.4M | dctint t27 = t27a + t26a; |
1575 | 31.4M | dctint t28 = t28a + t29a; |
1576 | 31.4M | dctint t29 = t28a - t29a; |
1577 | 31.4M | dctint t30 = t31a - t30a; |
1578 | 31.4M | dctint t31 = t31a + t30a; |
1579 | | |
1580 | 31.4M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; |
1581 | 31.4M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; |
1582 | 31.4M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; |
1583 | 31.4M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; |
1584 | 31.4M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; |
1585 | 31.4M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; |
1586 | 31.4M | t17a = (dctint)( t30 * 3196U - t17 * 16069U + (1 << 13)) >> 14; |
1587 | 31.4M | t30a = (dctint)( t30 * 16069U + t17 * 3196U + (1 << 13)) >> 14; |
1588 | 31.4M | t18a = (dctint)(-(t29 * 16069U + t18 * 3196U) + (1 << 13)) >> 14; |
1589 | 31.4M | t29a = (dctint)( t29 * 3196U - t18 * 16069U + (1 << 13)) >> 14; |
1590 | 31.4M | t21a = (dctint)( t26 * 13623U - t21 * 9102U + (1 << 13)) >> 14; |
1591 | 31.4M | t26a = (dctint)( t26 * 9102U + t21 * 13623U + (1 << 13)) >> 14; |
1592 | 31.4M | t22a = (dctint)(-(t25 * 9102U + t22 * 13623U) + (1 << 13)) >> 14; |
1593 | 31.4M | t25a = (dctint)( t25 * 13623U - t22 * 9102U + (1 << 13)) >> 14; |
1594 | | |
1595 | 31.4M | t0a = t0 + t7; |
1596 | 31.4M | t1a = t1 + t6a; |
1597 | 31.4M | t2a = t2 + t5a; |
1598 | 31.4M | t3a = t3 + t4; |
1599 | 31.4M | t4a = t3 - t4; |
1600 | 31.4M | t5 = t2 - t5a; |
1601 | 31.4M | t6 = t1 - t6a; |
1602 | 31.4M | t7a = t0 - t7; |
1603 | 31.4M | t8a = t8 + t11; |
1604 | 31.4M | t9 = t9a + t10a; |
1605 | 31.4M | t10 = t9a - t10a; |
1606 | 31.4M | t11a = t8 - t11; |
1607 | 31.4M | t12a = t15 - t12; |
1608 | 31.4M | t13 = t14a - t13a; |
1609 | 31.4M | t14 = t14a + t13a; |
1610 | 31.4M | t15a = t15 + t12; |
1611 | 31.4M | t16a = t16 + t19; |
1612 | 31.4M | t17 = t17a + t18a; |
1613 | 31.4M | t18 = t17a - t18a; |
1614 | 31.4M | t19a = t16 - t19; |
1615 | 31.4M | t20a = t23 - t20; |
1616 | 31.4M | t21 = t22a - t21a; |
1617 | 31.4M | t22 = t22a + t21a; |
1618 | 31.4M | t23a = t23 + t20; |
1619 | 31.4M | t24a = t24 + t27; |
1620 | 31.4M | t25 = t25a + t26a; |
1621 | 31.4M | t26 = t25a - t26a; |
1622 | 31.4M | t27a = t24 - t27; |
1623 | 31.4M | t28a = t31 - t28; |
1624 | 31.4M | t29 = t30a - t29a; |
1625 | 31.4M | t30 = t30a + t29a; |
1626 | 31.4M | t31a = t31 + t28; |
1627 | | |
1628 | 31.4M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; |
1629 | 31.4M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; |
1630 | 31.4M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; |
1631 | 31.4M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; |
1632 | 31.4M | t18a = (dctint)( t29 * 6270U - t18 * 15137U + (1 << 13)) >> 14; |
1633 | 31.4M | t29a = (dctint)( t29 * 15137U + t18 * 6270U + (1 << 13)) >> 14; |
1634 | 31.4M | t19 = (dctint)( t28a * 6270U - t19a * 15137U + (1 << 13)) >> 14; |
1635 | 31.4M | t28 = (dctint)( t28a * 15137U + t19a * 6270U + (1 << 13)) >> 14; |
1636 | 31.4M | t20 = (dctint)(-(t27a * 15137U + t20a * 6270U) + (1 << 13)) >> 14; |
1637 | 31.4M | t27 = (dctint)( t27a * 6270U - t20a * 15137U + (1 << 13)) >> 14; |
1638 | 31.4M | t21a = (dctint)(-(t26 * 15137U + t21 * 6270U) + (1 << 13)) >> 14; |
1639 | 31.4M | t26a = (dctint)( t26 * 6270U - t21 * 15137U + (1 << 13)) >> 14; |
1640 | | |
1641 | 31.4M | t0 = t0a + t15a; |
1642 | 31.4M | t1 = t1a + t14; |
1643 | 31.4M | t2 = t2a + t13a; |
1644 | 31.4M | t3 = t3a + t12; |
1645 | 31.4M | t4 = t4a + t11; |
1646 | 31.4M | t5a = t5 + t10a; |
1647 | 31.4M | t6a = t6 + t9; |
1648 | 31.4M | t7 = t7a + t8a; |
1649 | 31.4M | t8 = t7a - t8a; |
1650 | 31.4M | t9a = t6 - t9; |
1651 | 31.4M | t10 = t5 - t10a; |
1652 | 31.4M | t11a = t4a - t11; |
1653 | 31.4M | t12a = t3a - t12; |
1654 | 31.4M | t13 = t2a - t13a; |
1655 | 31.4M | t14a = t1a - t14; |
1656 | 31.4M | t15 = t0a - t15a; |
1657 | 31.4M | t16 = t16a + t23a; |
1658 | 31.4M | t17a = t17 + t22; |
1659 | 31.4M | t18 = t18a + t21a; |
1660 | 31.4M | t19a = t19 + t20; |
1661 | 31.4M | t20a = t19 - t20; |
1662 | 31.4M | t21 = t18a - t21a; |
1663 | 31.4M | t22a = t17 - t22; |
1664 | 31.4M | t23 = t16a - t23a; |
1665 | 31.4M | t24 = t31a - t24a; |
1666 | 31.4M | t25a = t30 - t25; |
1667 | 31.4M | t26 = t29a - t26a; |
1668 | 31.4M | t27a = t28 - t27; |
1669 | 31.4M | t28a = t28 + t27; |
1670 | 31.4M | t29 = t29a + t26a; |
1671 | 31.4M | t30a = t30 + t25; |
1672 | 31.4M | t31 = t31a + t24a; |
1673 | | |
1674 | 31.4M | t20 = (dctint)((t27a - t20a) * 11585U + (1 << 13)) >> 14; |
1675 | 31.4M | t27 = (dctint)((t27a + t20a) * 11585U + (1 << 13)) >> 14; |
1676 | 31.4M | t21a = (dctint)((t26 - t21 ) * 11585U + (1 << 13)) >> 14; |
1677 | 31.4M | t26a = (dctint)((t26 + t21 ) * 11585U + (1 << 13)) >> 14; |
1678 | 31.4M | t22 = (dctint)((t25a - t22a) * 11585U + (1 << 13)) >> 14; |
1679 | 31.4M | t25 = (dctint)((t25a + t22a) * 11585U + (1 << 13)) >> 14; |
1680 | 31.4M | t23a = (dctint)((t24 - t23 ) * 11585U + (1 << 13)) >> 14; |
1681 | 31.4M | t24a = (dctint)((t24 + t23 ) * 11585U + (1 << 13)) >> 14; |
1682 | | |
1683 | 31.4M | out[ 0] = t0 + t31; |
1684 | 31.4M | out[ 1] = t1 + t30a; |
1685 | 31.4M | out[ 2] = t2 + t29; |
1686 | 31.4M | out[ 3] = t3 + t28a; |
1687 | 31.4M | out[ 4] = t4 + t27; |
1688 | 31.4M | out[ 5] = t5a + t26a; |
1689 | 31.4M | out[ 6] = t6a + t25; |
1690 | 31.4M | out[ 7] = t7 + t24a; |
1691 | 31.4M | out[ 8] = t8 + t23a; |
1692 | 31.4M | out[ 9] = t9a + t22; |
1693 | 31.4M | out[10] = t10 + t21a; |
1694 | 31.4M | out[11] = t11a + t20; |
1695 | 31.4M | out[12] = t12a + t19a; |
1696 | 31.4M | out[13] = t13 + t18; |
1697 | 31.4M | out[14] = t14a + t17a; |
1698 | 31.4M | out[15] = t15 + t16; |
1699 | 31.4M | out[16] = t15 - t16; |
1700 | 31.4M | out[17] = t14a - t17a; |
1701 | 31.4M | out[18] = t13 - t18; |
1702 | 31.4M | out[19] = t12a - t19a; |
1703 | 31.4M | out[20] = t11a - t20; |
1704 | 31.4M | out[21] = t10 - t21a; |
1705 | 31.4M | out[22] = t9a - t22; |
1706 | 31.4M | out[23] = t8 - t23a; |
1707 | 31.4M | out[24] = t7 - t24a; |
1708 | 31.4M | out[25] = t6a - t25; |
1709 | 31.4M | out[26] = t5a - t26a; |
1710 | 31.4M | out[27] = t4 - t27; |
1711 | 31.4M | out[28] = t3 - t28a; |
1712 | 31.4M | out[29] = t2 - t29; |
1713 | 31.4M | out[30] = t1 - t30a; |
1714 | 31.4M | out[31] = t0 - t31; |
1715 | 31.4M | } Line | Count | Source | 1513 | 10.1M | { | 1514 | 10.1M | dctint t0a = (dctint)((IN(0) + IN(16)) * 11585U + (1 << 13)) >> 14; | 1515 | 10.1M | dctint t1a = (dctint)((IN(0) - IN(16)) * 11585U + (1 << 13)) >> 14; | 1516 | 10.1M | dctint t2a = (dctint)(IN( 8) * 6270U - IN(24) * 15137U + (1 << 13)) >> 14; | 1517 | 10.1M | dctint t3a = (dctint)(IN( 8) * 15137U + IN(24) * 6270U + (1 << 13)) >> 14; | 1518 | 10.1M | dctint t4a = (dctint)(IN( 4) * 3196U - IN(28) * 16069U + (1 << 13)) >> 14; | 1519 | 10.1M | dctint t7a = (dctint)(IN( 4) * 16069U + IN(28) * 3196U + (1 << 13)) >> 14; | 1520 | 10.1M | dctint t5a = (dctint)(IN(20) * 13623U - IN(12) * 9102U + (1 << 13)) >> 14; | 1521 | 10.1M | dctint t6a = (dctint)(IN(20) * 9102U + IN(12) * 13623U + (1 << 13)) >> 14; | 1522 | 10.1M | dctint t8a = (dctint)(IN( 2) * 1606U - IN(30) * 16305U + (1 << 13)) >> 14; | 1523 | 10.1M | dctint t15a = (dctint)(IN( 2) * 16305U + IN(30) * 1606U + (1 << 13)) >> 14; | 1524 | 10.1M | dctint t9a = (dctint)(IN(18) * 12665U - IN(14) * 10394U + (1 << 13)) >> 14; | 1525 | 10.1M | dctint t14a = (dctint)(IN(18) * 10394U + IN(14) * 12665U + (1 << 13)) >> 14; | 1526 | 10.1M | dctint t10a = (dctint)(IN(10) * 7723U - IN(22) * 14449U + (1 << 13)) >> 14; | 1527 | 10.1M | dctint t13a = (dctint)(IN(10) * 14449U + IN(22) * 7723U + (1 << 13)) >> 14; | 1528 | 10.1M | dctint t11a = (dctint)(IN(26) * 15679U - IN( 6) * 4756U + (1 << 13)) >> 14; | 1529 | 10.1M | dctint t12a = (dctint)(IN(26) * 4756U + IN( 6) * 15679U + (1 << 13)) >> 14; | 1530 | 10.1M | dctint t16a = (dctint)(IN( 1) * 804U - IN(31) * 16364U + (1 << 13)) >> 14; | 1531 | 10.1M | dctint t31a = (dctint)(IN( 1) * 16364U + IN(31) * 804U + (1 << 13)) >> 14; | 1532 | 10.1M | dctint t17a = (dctint)(IN(17) * 12140U - IN(15) * 11003U + (1 << 13)) >> 14; | 1533 | 10.1M | dctint t30a = (dctint)(IN(17) * 11003U + IN(15) * 12140U + (1 << 13)) >> 14; | 1534 | 10.1M | dctint t18a = (dctint)(IN( 9) * 7005U - IN(23) * 14811U + (1 << 13)) >> 14; | 1535 | 10.1M | dctint t29a = (dctint)(IN( 9) * 14811U + IN(23) * 7005U + (1 << 13)) >> 14; | 1536 | 10.1M | dctint t19a = (dctint)(IN(25) * 15426U - IN( 7) * 5520U + (1 << 13)) >> 14; | 1537 | 10.1M | dctint t28a = (dctint)(IN(25) * 5520U + IN( 7) * 15426U + (1 << 13)) >> 14; | 1538 | 10.1M | dctint t20a = (dctint)(IN( 5) * 3981U - IN(27) * 15893U + (1 << 13)) >> 14; | 1539 | 10.1M | dctint t27a = (dctint)(IN( 5) * 15893U + IN(27) * 3981U + (1 << 13)) >> 14; | 1540 | 10.1M | dctint t21a = (dctint)(IN(21) * 14053U - IN(11) * 8423U + (1 << 13)) >> 14; | 1541 | 10.1M | dctint t26a = (dctint)(IN(21) * 8423U + IN(11) * 14053U + (1 << 13)) >> 14; | 1542 | 10.1M | dctint t22a = (dctint)(IN(13) * 9760U - IN(19) * 13160U + (1 << 13)) >> 14; | 1543 | 10.1M | dctint t25a = (dctint)(IN(13) * 13160U + IN(19) * 9760U + (1 << 13)) >> 14; | 1544 | 10.1M | dctint t23a = (dctint)(IN(29) * 16207U - IN( 3) * 2404U + (1 << 13)) >> 14; | 1545 | 10.1M | dctint t24a = (dctint)(IN(29) * 2404U + IN( 3) * 16207U + (1 << 13)) >> 14; | 1546 | | | 1547 | 10.1M | dctint t0 = t0a + t3a; | 1548 | 10.1M | dctint t1 = t1a + t2a; | 1549 | 10.1M | dctint t2 = t1a - t2a; | 1550 | 10.1M | dctint t3 = t0a - t3a; | 1551 | 10.1M | dctint t4 = t4a + t5a; | 1552 | 10.1M | dctint t5 = t4a - t5a; | 1553 | 10.1M | dctint t6 = t7a - t6a; | 1554 | 10.1M | dctint t7 = t7a + t6a; | 1555 | 10.1M | dctint t8 = t8a + t9a; | 1556 | 10.1M | dctint t9 = t8a - t9a; | 1557 | 10.1M | dctint t10 = t11a - t10a; | 1558 | 10.1M | dctint t11 = t11a + t10a; | 1559 | 10.1M | dctint t12 = t12a + t13a; | 1560 | 10.1M | dctint t13 = t12a - t13a; | 1561 | 10.1M | dctint t14 = t15a - t14a; | 1562 | 10.1M | dctint t15 = t15a + t14a; | 1563 | 10.1M | dctint t16 = t16a + t17a; | 1564 | 10.1M | dctint t17 = t16a - t17a; | 1565 | 10.1M | dctint t18 = t19a - t18a; | 1566 | 10.1M | dctint t19 = t19a + t18a; | 1567 | 10.1M | dctint t20 = t20a + t21a; | 1568 | 10.1M | dctint t21 = t20a - t21a; | 1569 | 10.1M | dctint t22 = t23a - t22a; | 1570 | 10.1M | dctint t23 = t23a + t22a; | 1571 | 10.1M | dctint t24 = t24a + t25a; | 1572 | 10.1M | dctint t25 = t24a - t25a; | 1573 | 10.1M | dctint t26 = t27a - t26a; | 1574 | 10.1M | dctint t27 = t27a + t26a; | 1575 | 10.1M | dctint t28 = t28a + t29a; | 1576 | 10.1M | dctint t29 = t28a - t29a; | 1577 | 10.1M | dctint t30 = t31a - t30a; | 1578 | 10.1M | dctint t31 = t31a + t30a; | 1579 | | | 1580 | 10.1M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1581 | 10.1M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1582 | 10.1M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1583 | 10.1M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1584 | 10.1M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1585 | 10.1M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1586 | 10.1M | t17a = (dctint)( t30 * 3196U - t17 * 16069U + (1 << 13)) >> 14; | 1587 | 10.1M | t30a = (dctint)( t30 * 16069U + t17 * 3196U + (1 << 13)) >> 14; | 1588 | 10.1M | t18a = (dctint)(-(t29 * 16069U + t18 * 3196U) + (1 << 13)) >> 14; | 1589 | 10.1M | t29a = (dctint)( t29 * 3196U - t18 * 16069U + (1 << 13)) >> 14; | 1590 | 10.1M | t21a = (dctint)( t26 * 13623U - t21 * 9102U + (1 << 13)) >> 14; | 1591 | 10.1M | t26a = (dctint)( t26 * 9102U + t21 * 13623U + (1 << 13)) >> 14; | 1592 | 10.1M | t22a = (dctint)(-(t25 * 9102U + t22 * 13623U) + (1 << 13)) >> 14; | 1593 | 10.1M | t25a = (dctint)( t25 * 13623U - t22 * 9102U + (1 << 13)) >> 14; | 1594 | | | 1595 | 10.1M | t0a = t0 + t7; | 1596 | 10.1M | t1a = t1 + t6a; | 1597 | 10.1M | t2a = t2 + t5a; | 1598 | 10.1M | t3a = t3 + t4; | 1599 | 10.1M | t4a = t3 - t4; | 1600 | 10.1M | t5 = t2 - t5a; | 1601 | 10.1M | t6 = t1 - t6a; | 1602 | 10.1M | t7a = t0 - t7; | 1603 | 10.1M | t8a = t8 + t11; | 1604 | 10.1M | t9 = t9a + t10a; | 1605 | 10.1M | t10 = t9a - t10a; | 1606 | 10.1M | t11a = t8 - t11; | 1607 | 10.1M | t12a = t15 - t12; | 1608 | 10.1M | t13 = t14a - t13a; | 1609 | 10.1M | t14 = t14a + t13a; | 1610 | 10.1M | t15a = t15 + t12; | 1611 | 10.1M | t16a = t16 + t19; | 1612 | 10.1M | t17 = t17a + t18a; | 1613 | 10.1M | t18 = t17a - t18a; | 1614 | 10.1M | t19a = t16 - t19; | 1615 | 10.1M | t20a = t23 - t20; | 1616 | 10.1M | t21 = t22a - t21a; | 1617 | 10.1M | t22 = t22a + t21a; | 1618 | 10.1M | t23a = t23 + t20; | 1619 | 10.1M | t24a = t24 + t27; | 1620 | 10.1M | t25 = t25a + t26a; | 1621 | 10.1M | t26 = t25a - t26a; | 1622 | 10.1M | t27a = t24 - t27; | 1623 | 10.1M | t28a = t31 - t28; | 1624 | 10.1M | t29 = t30a - t29a; | 1625 | 10.1M | t30 = t30a + t29a; | 1626 | 10.1M | t31a = t31 + t28; | 1627 | | | 1628 | 10.1M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1629 | 10.1M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1630 | 10.1M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1631 | 10.1M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1632 | 10.1M | t18a = (dctint)( t29 * 6270U - t18 * 15137U + (1 << 13)) >> 14; | 1633 | 10.1M | t29a = (dctint)( t29 * 15137U + t18 * 6270U + (1 << 13)) >> 14; | 1634 | 10.1M | t19 = (dctint)( t28a * 6270U - t19a * 15137U + (1 << 13)) >> 14; | 1635 | 10.1M | t28 = (dctint)( t28a * 15137U + t19a * 6270U + (1 << 13)) >> 14; | 1636 | 10.1M | t20 = (dctint)(-(t27a * 15137U + t20a * 6270U) + (1 << 13)) >> 14; | 1637 | 10.1M | t27 = (dctint)( t27a * 6270U - t20a * 15137U + (1 << 13)) >> 14; | 1638 | 10.1M | t21a = (dctint)(-(t26 * 15137U + t21 * 6270U) + (1 << 13)) >> 14; | 1639 | 10.1M | t26a = (dctint)( t26 * 6270U - t21 * 15137U + (1 << 13)) >> 14; | 1640 | | | 1641 | 10.1M | t0 = t0a + t15a; | 1642 | 10.1M | t1 = t1a + t14; | 1643 | 10.1M | t2 = t2a + t13a; | 1644 | 10.1M | t3 = t3a + t12; | 1645 | 10.1M | t4 = t4a + t11; | 1646 | 10.1M | t5a = t5 + t10a; | 1647 | 10.1M | t6a = t6 + t9; | 1648 | 10.1M | t7 = t7a + t8a; | 1649 | 10.1M | t8 = t7a - t8a; | 1650 | 10.1M | t9a = t6 - t9; | 1651 | 10.1M | t10 = t5 - t10a; | 1652 | 10.1M | t11a = t4a - t11; | 1653 | 10.1M | t12a = t3a - t12; | 1654 | 10.1M | t13 = t2a - t13a; | 1655 | 10.1M | t14a = t1a - t14; | 1656 | 10.1M | t15 = t0a - t15a; | 1657 | 10.1M | t16 = t16a + t23a; | 1658 | 10.1M | t17a = t17 + t22; | 1659 | 10.1M | t18 = t18a + t21a; | 1660 | 10.1M | t19a = t19 + t20; | 1661 | 10.1M | t20a = t19 - t20; | 1662 | 10.1M | t21 = t18a - t21a; | 1663 | 10.1M | t22a = t17 - t22; | 1664 | 10.1M | t23 = t16a - t23a; | 1665 | 10.1M | t24 = t31a - t24a; | 1666 | 10.1M | t25a = t30 - t25; | 1667 | 10.1M | t26 = t29a - t26a; | 1668 | 10.1M | t27a = t28 - t27; | 1669 | 10.1M | t28a = t28 + t27; | 1670 | 10.1M | t29 = t29a + t26a; | 1671 | 10.1M | t30a = t30 + t25; | 1672 | 10.1M | t31 = t31a + t24a; | 1673 | | | 1674 | 10.1M | t20 = (dctint)((t27a - t20a) * 11585U + (1 << 13)) >> 14; | 1675 | 10.1M | t27 = (dctint)((t27a + t20a) * 11585U + (1 << 13)) >> 14; | 1676 | 10.1M | t21a = (dctint)((t26 - t21 ) * 11585U + (1 << 13)) >> 14; | 1677 | 10.1M | t26a = (dctint)((t26 + t21 ) * 11585U + (1 << 13)) >> 14; | 1678 | 10.1M | t22 = (dctint)((t25a - t22a) * 11585U + (1 << 13)) >> 14; | 1679 | 10.1M | t25 = (dctint)((t25a + t22a) * 11585U + (1 << 13)) >> 14; | 1680 | 10.1M | t23a = (dctint)((t24 - t23 ) * 11585U + (1 << 13)) >> 14; | 1681 | 10.1M | t24a = (dctint)((t24 + t23 ) * 11585U + (1 << 13)) >> 14; | 1682 | | | 1683 | 10.1M | out[ 0] = t0 + t31; | 1684 | 10.1M | out[ 1] = t1 + t30a; | 1685 | 10.1M | out[ 2] = t2 + t29; | 1686 | 10.1M | out[ 3] = t3 + t28a; | 1687 | 10.1M | out[ 4] = t4 + t27; | 1688 | 10.1M | out[ 5] = t5a + t26a; | 1689 | 10.1M | out[ 6] = t6a + t25; | 1690 | 10.1M | out[ 7] = t7 + t24a; | 1691 | 10.1M | out[ 8] = t8 + t23a; | 1692 | 10.1M | out[ 9] = t9a + t22; | 1693 | 10.1M | out[10] = t10 + t21a; | 1694 | 10.1M | out[11] = t11a + t20; | 1695 | 10.1M | out[12] = t12a + t19a; | 1696 | 10.1M | out[13] = t13 + t18; | 1697 | 10.1M | out[14] = t14a + t17a; | 1698 | 10.1M | out[15] = t15 + t16; | 1699 | 10.1M | out[16] = t15 - t16; | 1700 | 10.1M | out[17] = t14a - t17a; | 1701 | 10.1M | out[18] = t13 - t18; | 1702 | 10.1M | out[19] = t12a - t19a; | 1703 | 10.1M | out[20] = t11a - t20; | 1704 | 10.1M | out[21] = t10 - t21a; | 1705 | 10.1M | out[22] = t9a - t22; | 1706 | 10.1M | out[23] = t8 - t23a; | 1707 | 10.1M | out[24] = t7 - t24a; | 1708 | 10.1M | out[25] = t6a - t25; | 1709 | 10.1M | out[26] = t5a - t26a; | 1710 | 10.1M | out[27] = t4 - t27; | 1711 | 10.1M | out[28] = t3 - t28a; | 1712 | 10.1M | out[29] = t2 - t29; | 1713 | 10.1M | out[30] = t1 - t30a; | 1714 | 10.1M | out[31] = t0 - t31; | 1715 | 10.1M | } |
Line | Count | Source | 1513 | 9.34M | { | 1514 | 9.34M | dctint t0a = (dctint)((IN(0) + IN(16)) * 11585U + (1 << 13)) >> 14; | 1515 | 9.34M | dctint t1a = (dctint)((IN(0) - IN(16)) * 11585U + (1 << 13)) >> 14; | 1516 | 9.34M | dctint t2a = (dctint)(IN( 8) * 6270U - IN(24) * 15137U + (1 << 13)) >> 14; | 1517 | 9.34M | dctint t3a = (dctint)(IN( 8) * 15137U + IN(24) * 6270U + (1 << 13)) >> 14; | 1518 | 9.34M | dctint t4a = (dctint)(IN( 4) * 3196U - IN(28) * 16069U + (1 << 13)) >> 14; | 1519 | 9.34M | dctint t7a = (dctint)(IN( 4) * 16069U + IN(28) * 3196U + (1 << 13)) >> 14; | 1520 | 9.34M | dctint t5a = (dctint)(IN(20) * 13623U - IN(12) * 9102U + (1 << 13)) >> 14; | 1521 | 9.34M | dctint t6a = (dctint)(IN(20) * 9102U + IN(12) * 13623U + (1 << 13)) >> 14; | 1522 | 9.34M | dctint t8a = (dctint)(IN( 2) * 1606U - IN(30) * 16305U + (1 << 13)) >> 14; | 1523 | 9.34M | dctint t15a = (dctint)(IN( 2) * 16305U + IN(30) * 1606U + (1 << 13)) >> 14; | 1524 | 9.34M | dctint t9a = (dctint)(IN(18) * 12665U - IN(14) * 10394U + (1 << 13)) >> 14; | 1525 | 9.34M | dctint t14a = (dctint)(IN(18) * 10394U + IN(14) * 12665U + (1 << 13)) >> 14; | 1526 | 9.34M | dctint t10a = (dctint)(IN(10) * 7723U - IN(22) * 14449U + (1 << 13)) >> 14; | 1527 | 9.34M | dctint t13a = (dctint)(IN(10) * 14449U + IN(22) * 7723U + (1 << 13)) >> 14; | 1528 | 9.34M | dctint t11a = (dctint)(IN(26) * 15679U - IN( 6) * 4756U + (1 << 13)) >> 14; | 1529 | 9.34M | dctint t12a = (dctint)(IN(26) * 4756U + IN( 6) * 15679U + (1 << 13)) >> 14; | 1530 | 9.34M | dctint t16a = (dctint)(IN( 1) * 804U - IN(31) * 16364U + (1 << 13)) >> 14; | 1531 | 9.34M | dctint t31a = (dctint)(IN( 1) * 16364U + IN(31) * 804U + (1 << 13)) >> 14; | 1532 | 9.34M | dctint t17a = (dctint)(IN(17) * 12140U - IN(15) * 11003U + (1 << 13)) >> 14; | 1533 | 9.34M | dctint t30a = (dctint)(IN(17) * 11003U + IN(15) * 12140U + (1 << 13)) >> 14; | 1534 | 9.34M | dctint t18a = (dctint)(IN( 9) * 7005U - IN(23) * 14811U + (1 << 13)) >> 14; | 1535 | 9.34M | dctint t29a = (dctint)(IN( 9) * 14811U + IN(23) * 7005U + (1 << 13)) >> 14; | 1536 | 9.34M | dctint t19a = (dctint)(IN(25) * 15426U - IN( 7) * 5520U + (1 << 13)) >> 14; | 1537 | 9.34M | dctint t28a = (dctint)(IN(25) * 5520U + IN( 7) * 15426U + (1 << 13)) >> 14; | 1538 | 9.34M | dctint t20a = (dctint)(IN( 5) * 3981U - IN(27) * 15893U + (1 << 13)) >> 14; | 1539 | 9.34M | dctint t27a = (dctint)(IN( 5) * 15893U + IN(27) * 3981U + (1 << 13)) >> 14; | 1540 | 9.34M | dctint t21a = (dctint)(IN(21) * 14053U - IN(11) * 8423U + (1 << 13)) >> 14; | 1541 | 9.34M | dctint t26a = (dctint)(IN(21) * 8423U + IN(11) * 14053U + (1 << 13)) >> 14; | 1542 | 9.34M | dctint t22a = (dctint)(IN(13) * 9760U - IN(19) * 13160U + (1 << 13)) >> 14; | 1543 | 9.34M | dctint t25a = (dctint)(IN(13) * 13160U + IN(19) * 9760U + (1 << 13)) >> 14; | 1544 | 9.34M | dctint t23a = (dctint)(IN(29) * 16207U - IN( 3) * 2404U + (1 << 13)) >> 14; | 1545 | 9.34M | dctint t24a = (dctint)(IN(29) * 2404U + IN( 3) * 16207U + (1 << 13)) >> 14; | 1546 | | | 1547 | 9.34M | dctint t0 = t0a + t3a; | 1548 | 9.34M | dctint t1 = t1a + t2a; | 1549 | 9.34M | dctint t2 = t1a - t2a; | 1550 | 9.34M | dctint t3 = t0a - t3a; | 1551 | 9.34M | dctint t4 = t4a + t5a; | 1552 | 9.34M | dctint t5 = t4a - t5a; | 1553 | 9.34M | dctint t6 = t7a - t6a; | 1554 | 9.34M | dctint t7 = t7a + t6a; | 1555 | 9.34M | dctint t8 = t8a + t9a; | 1556 | 9.34M | dctint t9 = t8a - t9a; | 1557 | 9.34M | dctint t10 = t11a - t10a; | 1558 | 9.34M | dctint t11 = t11a + t10a; | 1559 | 9.34M | dctint t12 = t12a + t13a; | 1560 | 9.34M | dctint t13 = t12a - t13a; | 1561 | 9.34M | dctint t14 = t15a - t14a; | 1562 | 9.34M | dctint t15 = t15a + t14a; | 1563 | 9.34M | dctint t16 = t16a + t17a; | 1564 | 9.34M | dctint t17 = t16a - t17a; | 1565 | 9.34M | dctint t18 = t19a - t18a; | 1566 | 9.34M | dctint t19 = t19a + t18a; | 1567 | 9.34M | dctint t20 = t20a + t21a; | 1568 | 9.34M | dctint t21 = t20a - t21a; | 1569 | 9.34M | dctint t22 = t23a - t22a; | 1570 | 9.34M | dctint t23 = t23a + t22a; | 1571 | 9.34M | dctint t24 = t24a + t25a; | 1572 | 9.34M | dctint t25 = t24a - t25a; | 1573 | 9.34M | dctint t26 = t27a - t26a; | 1574 | 9.34M | dctint t27 = t27a + t26a; | 1575 | 9.34M | dctint t28 = t28a + t29a; | 1576 | 9.34M | dctint t29 = t28a - t29a; | 1577 | 9.34M | dctint t30 = t31a - t30a; | 1578 | 9.34M | dctint t31 = t31a + t30a; | 1579 | | | 1580 | 9.34M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1581 | 9.34M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1582 | 9.34M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1583 | 9.34M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1584 | 9.34M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1585 | 9.34M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1586 | 9.34M | t17a = (dctint)( t30 * 3196U - t17 * 16069U + (1 << 13)) >> 14; | 1587 | 9.34M | t30a = (dctint)( t30 * 16069U + t17 * 3196U + (1 << 13)) >> 14; | 1588 | 9.34M | t18a = (dctint)(-(t29 * 16069U + t18 * 3196U) + (1 << 13)) >> 14; | 1589 | 9.34M | t29a = (dctint)( t29 * 3196U - t18 * 16069U + (1 << 13)) >> 14; | 1590 | 9.34M | t21a = (dctint)( t26 * 13623U - t21 * 9102U + (1 << 13)) >> 14; | 1591 | 9.34M | t26a = (dctint)( t26 * 9102U + t21 * 13623U + (1 << 13)) >> 14; | 1592 | 9.34M | t22a = (dctint)(-(t25 * 9102U + t22 * 13623U) + (1 << 13)) >> 14; | 1593 | 9.34M | t25a = (dctint)( t25 * 13623U - t22 * 9102U + (1 << 13)) >> 14; | 1594 | | | 1595 | 9.34M | t0a = t0 + t7; | 1596 | 9.34M | t1a = t1 + t6a; | 1597 | 9.34M | t2a = t2 + t5a; | 1598 | 9.34M | t3a = t3 + t4; | 1599 | 9.34M | t4a = t3 - t4; | 1600 | 9.34M | t5 = t2 - t5a; | 1601 | 9.34M | t6 = t1 - t6a; | 1602 | 9.34M | t7a = t0 - t7; | 1603 | 9.34M | t8a = t8 + t11; | 1604 | 9.34M | t9 = t9a + t10a; | 1605 | 9.34M | t10 = t9a - t10a; | 1606 | 9.34M | t11a = t8 - t11; | 1607 | 9.34M | t12a = t15 - t12; | 1608 | 9.34M | t13 = t14a - t13a; | 1609 | 9.34M | t14 = t14a + t13a; | 1610 | 9.34M | t15a = t15 + t12; | 1611 | 9.34M | t16a = t16 + t19; | 1612 | 9.34M | t17 = t17a + t18a; | 1613 | 9.34M | t18 = t17a - t18a; | 1614 | 9.34M | t19a = t16 - t19; | 1615 | 9.34M | t20a = t23 - t20; | 1616 | 9.34M | t21 = t22a - t21a; | 1617 | 9.34M | t22 = t22a + t21a; | 1618 | 9.34M | t23a = t23 + t20; | 1619 | 9.34M | t24a = t24 + t27; | 1620 | 9.34M | t25 = t25a + t26a; | 1621 | 9.34M | t26 = t25a - t26a; | 1622 | 9.34M | t27a = t24 - t27; | 1623 | 9.34M | t28a = t31 - t28; | 1624 | 9.34M | t29 = t30a - t29a; | 1625 | 9.34M | t30 = t30a + t29a; | 1626 | 9.34M | t31a = t31 + t28; | 1627 | | | 1628 | 9.34M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1629 | 9.34M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1630 | 9.34M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1631 | 9.34M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1632 | 9.34M | t18a = (dctint)( t29 * 6270U - t18 * 15137U + (1 << 13)) >> 14; | 1633 | 9.34M | t29a = (dctint)( t29 * 15137U + t18 * 6270U + (1 << 13)) >> 14; | 1634 | 9.34M | t19 = (dctint)( t28a * 6270U - t19a * 15137U + (1 << 13)) >> 14; | 1635 | 9.34M | t28 = (dctint)( t28a * 15137U + t19a * 6270U + (1 << 13)) >> 14; | 1636 | 9.34M | t20 = (dctint)(-(t27a * 15137U + t20a * 6270U) + (1 << 13)) >> 14; | 1637 | 9.34M | t27 = (dctint)( t27a * 6270U - t20a * 15137U + (1 << 13)) >> 14; | 1638 | 9.34M | t21a = (dctint)(-(t26 * 15137U + t21 * 6270U) + (1 << 13)) >> 14; | 1639 | 9.34M | t26a = (dctint)( t26 * 6270U - t21 * 15137U + (1 << 13)) >> 14; | 1640 | | | 1641 | 9.34M | t0 = t0a + t15a; | 1642 | 9.34M | t1 = t1a + t14; | 1643 | 9.34M | t2 = t2a + t13a; | 1644 | 9.34M | t3 = t3a + t12; | 1645 | 9.34M | t4 = t4a + t11; | 1646 | 9.34M | t5a = t5 + t10a; | 1647 | 9.34M | t6a = t6 + t9; | 1648 | 9.34M | t7 = t7a + t8a; | 1649 | 9.34M | t8 = t7a - t8a; | 1650 | 9.34M | t9a = t6 - t9; | 1651 | 9.34M | t10 = t5 - t10a; | 1652 | 9.34M | t11a = t4a - t11; | 1653 | 9.34M | t12a = t3a - t12; | 1654 | 9.34M | t13 = t2a - t13a; | 1655 | 9.34M | t14a = t1a - t14; | 1656 | 9.34M | t15 = t0a - t15a; | 1657 | 9.34M | t16 = t16a + t23a; | 1658 | 9.34M | t17a = t17 + t22; | 1659 | 9.34M | t18 = t18a + t21a; | 1660 | 9.34M | t19a = t19 + t20; | 1661 | 9.34M | t20a = t19 - t20; | 1662 | 9.34M | t21 = t18a - t21a; | 1663 | 9.34M | t22a = t17 - t22; | 1664 | 9.34M | t23 = t16a - t23a; | 1665 | 9.34M | t24 = t31a - t24a; | 1666 | 9.34M | t25a = t30 - t25; | 1667 | 9.34M | t26 = t29a - t26a; | 1668 | 9.34M | t27a = t28 - t27; | 1669 | 9.34M | t28a = t28 + t27; | 1670 | 9.34M | t29 = t29a + t26a; | 1671 | 9.34M | t30a = t30 + t25; | 1672 | 9.34M | t31 = t31a + t24a; | 1673 | | | 1674 | 9.34M | t20 = (dctint)((t27a - t20a) * 11585U + (1 << 13)) >> 14; | 1675 | 9.34M | t27 = (dctint)((t27a + t20a) * 11585U + (1 << 13)) >> 14; | 1676 | 9.34M | t21a = (dctint)((t26 - t21 ) * 11585U + (1 << 13)) >> 14; | 1677 | 9.34M | t26a = (dctint)((t26 + t21 ) * 11585U + (1 << 13)) >> 14; | 1678 | 9.34M | t22 = (dctint)((t25a - t22a) * 11585U + (1 << 13)) >> 14; | 1679 | 9.34M | t25 = (dctint)((t25a + t22a) * 11585U + (1 << 13)) >> 14; | 1680 | 9.34M | t23a = (dctint)((t24 - t23 ) * 11585U + (1 << 13)) >> 14; | 1681 | 9.34M | t24a = (dctint)((t24 + t23 ) * 11585U + (1 << 13)) >> 14; | 1682 | | | 1683 | 9.34M | out[ 0] = t0 + t31; | 1684 | 9.34M | out[ 1] = t1 + t30a; | 1685 | 9.34M | out[ 2] = t2 + t29; | 1686 | 9.34M | out[ 3] = t3 + t28a; | 1687 | 9.34M | out[ 4] = t4 + t27; | 1688 | 9.34M | out[ 5] = t5a + t26a; | 1689 | 9.34M | out[ 6] = t6a + t25; | 1690 | 9.34M | out[ 7] = t7 + t24a; | 1691 | 9.34M | out[ 8] = t8 + t23a; | 1692 | 9.34M | out[ 9] = t9a + t22; | 1693 | 9.34M | out[10] = t10 + t21a; | 1694 | 9.34M | out[11] = t11a + t20; | 1695 | 9.34M | out[12] = t12a + t19a; | 1696 | 9.34M | out[13] = t13 + t18; | 1697 | 9.34M | out[14] = t14a + t17a; | 1698 | 9.34M | out[15] = t15 + t16; | 1699 | 9.34M | out[16] = t15 - t16; | 1700 | 9.34M | out[17] = t14a - t17a; | 1701 | 9.34M | out[18] = t13 - t18; | 1702 | 9.34M | out[19] = t12a - t19a; | 1703 | 9.34M | out[20] = t11a - t20; | 1704 | 9.34M | out[21] = t10 - t21a; | 1705 | 9.34M | out[22] = t9a - t22; | 1706 | 9.34M | out[23] = t8 - t23a; | 1707 | 9.34M | out[24] = t7 - t24a; | 1708 | 9.34M | out[25] = t6a - t25; | 1709 | 9.34M | out[26] = t5a - t26a; | 1710 | 9.34M | out[27] = t4 - t27; | 1711 | 9.34M | out[28] = t3 - t28a; | 1712 | 9.34M | out[29] = t2 - t29; | 1713 | 9.34M | out[30] = t1 - t30a; | 1714 | 9.34M | out[31] = t0 - t31; | 1715 | 9.34M | } |
Line | Count | Source | 1513 | 11.9M | { | 1514 | 11.9M | dctint t0a = (dctint)((IN(0) + IN(16)) * 11585U + (1 << 13)) >> 14; | 1515 | 11.9M | dctint t1a = (dctint)((IN(0) - IN(16)) * 11585U + (1 << 13)) >> 14; | 1516 | 11.9M | dctint t2a = (dctint)(IN( 8) * 6270U - IN(24) * 15137U + (1 << 13)) >> 14; | 1517 | 11.9M | dctint t3a = (dctint)(IN( 8) * 15137U + IN(24) * 6270U + (1 << 13)) >> 14; | 1518 | 11.9M | dctint t4a = (dctint)(IN( 4) * 3196U - IN(28) * 16069U + (1 << 13)) >> 14; | 1519 | 11.9M | dctint t7a = (dctint)(IN( 4) * 16069U + IN(28) * 3196U + (1 << 13)) >> 14; | 1520 | 11.9M | dctint t5a = (dctint)(IN(20) * 13623U - IN(12) * 9102U + (1 << 13)) >> 14; | 1521 | 11.9M | dctint t6a = (dctint)(IN(20) * 9102U + IN(12) * 13623U + (1 << 13)) >> 14; | 1522 | 11.9M | dctint t8a = (dctint)(IN( 2) * 1606U - IN(30) * 16305U + (1 << 13)) >> 14; | 1523 | 11.9M | dctint t15a = (dctint)(IN( 2) * 16305U + IN(30) * 1606U + (1 << 13)) >> 14; | 1524 | 11.9M | dctint t9a = (dctint)(IN(18) * 12665U - IN(14) * 10394U + (1 << 13)) >> 14; | 1525 | 11.9M | dctint t14a = (dctint)(IN(18) * 10394U + IN(14) * 12665U + (1 << 13)) >> 14; | 1526 | 11.9M | dctint t10a = (dctint)(IN(10) * 7723U - IN(22) * 14449U + (1 << 13)) >> 14; | 1527 | 11.9M | dctint t13a = (dctint)(IN(10) * 14449U + IN(22) * 7723U + (1 << 13)) >> 14; | 1528 | 11.9M | dctint t11a = (dctint)(IN(26) * 15679U - IN( 6) * 4756U + (1 << 13)) >> 14; | 1529 | 11.9M | dctint t12a = (dctint)(IN(26) * 4756U + IN( 6) * 15679U + (1 << 13)) >> 14; | 1530 | 11.9M | dctint t16a = (dctint)(IN( 1) * 804U - IN(31) * 16364U + (1 << 13)) >> 14; | 1531 | 11.9M | dctint t31a = (dctint)(IN( 1) * 16364U + IN(31) * 804U + (1 << 13)) >> 14; | 1532 | 11.9M | dctint t17a = (dctint)(IN(17) * 12140U - IN(15) * 11003U + (1 << 13)) >> 14; | 1533 | 11.9M | dctint t30a = (dctint)(IN(17) * 11003U + IN(15) * 12140U + (1 << 13)) >> 14; | 1534 | 11.9M | dctint t18a = (dctint)(IN( 9) * 7005U - IN(23) * 14811U + (1 << 13)) >> 14; | 1535 | 11.9M | dctint t29a = (dctint)(IN( 9) * 14811U + IN(23) * 7005U + (1 << 13)) >> 14; | 1536 | 11.9M | dctint t19a = (dctint)(IN(25) * 15426U - IN( 7) * 5520U + (1 << 13)) >> 14; | 1537 | 11.9M | dctint t28a = (dctint)(IN(25) * 5520U + IN( 7) * 15426U + (1 << 13)) >> 14; | 1538 | 11.9M | dctint t20a = (dctint)(IN( 5) * 3981U - IN(27) * 15893U + (1 << 13)) >> 14; | 1539 | 11.9M | dctint t27a = (dctint)(IN( 5) * 15893U + IN(27) * 3981U + (1 << 13)) >> 14; | 1540 | 11.9M | dctint t21a = (dctint)(IN(21) * 14053U - IN(11) * 8423U + (1 << 13)) >> 14; | 1541 | 11.9M | dctint t26a = (dctint)(IN(21) * 8423U + IN(11) * 14053U + (1 << 13)) >> 14; | 1542 | 11.9M | dctint t22a = (dctint)(IN(13) * 9760U - IN(19) * 13160U + (1 << 13)) >> 14; | 1543 | 11.9M | dctint t25a = (dctint)(IN(13) * 13160U + IN(19) * 9760U + (1 << 13)) >> 14; | 1544 | 11.9M | dctint t23a = (dctint)(IN(29) * 16207U - IN( 3) * 2404U + (1 << 13)) >> 14; | 1545 | 11.9M | dctint t24a = (dctint)(IN(29) * 2404U + IN( 3) * 16207U + (1 << 13)) >> 14; | 1546 | | | 1547 | 11.9M | dctint t0 = t0a + t3a; | 1548 | 11.9M | dctint t1 = t1a + t2a; | 1549 | 11.9M | dctint t2 = t1a - t2a; | 1550 | 11.9M | dctint t3 = t0a - t3a; | 1551 | 11.9M | dctint t4 = t4a + t5a; | 1552 | 11.9M | dctint t5 = t4a - t5a; | 1553 | 11.9M | dctint t6 = t7a - t6a; | 1554 | 11.9M | dctint t7 = t7a + t6a; | 1555 | 11.9M | dctint t8 = t8a + t9a; | 1556 | 11.9M | dctint t9 = t8a - t9a; | 1557 | 11.9M | dctint t10 = t11a - t10a; | 1558 | 11.9M | dctint t11 = t11a + t10a; | 1559 | 11.9M | dctint t12 = t12a + t13a; | 1560 | 11.9M | dctint t13 = t12a - t13a; | 1561 | 11.9M | dctint t14 = t15a - t14a; | 1562 | 11.9M | dctint t15 = t15a + t14a; | 1563 | 11.9M | dctint t16 = t16a + t17a; | 1564 | 11.9M | dctint t17 = t16a - t17a; | 1565 | 11.9M | dctint t18 = t19a - t18a; | 1566 | 11.9M | dctint t19 = t19a + t18a; | 1567 | 11.9M | dctint t20 = t20a + t21a; | 1568 | 11.9M | dctint t21 = t20a - t21a; | 1569 | 11.9M | dctint t22 = t23a - t22a; | 1570 | 11.9M | dctint t23 = t23a + t22a; | 1571 | 11.9M | dctint t24 = t24a + t25a; | 1572 | 11.9M | dctint t25 = t24a - t25a; | 1573 | 11.9M | dctint t26 = t27a - t26a; | 1574 | 11.9M | dctint t27 = t27a + t26a; | 1575 | 11.9M | dctint t28 = t28a + t29a; | 1576 | 11.9M | dctint t29 = t28a - t29a; | 1577 | 11.9M | dctint t30 = t31a - t30a; | 1578 | 11.9M | dctint t31 = t31a + t30a; | 1579 | | | 1580 | 11.9M | t5a = (dctint)((t6 - t5) * 11585U + (1 << 13)) >> 14; | 1581 | 11.9M | t6a = (dctint)((t6 + t5) * 11585U + (1 << 13)) >> 14; | 1582 | 11.9M | t9a = (dctint)( t14 * 6270U - t9 * 15137U + (1 << 13)) >> 14; | 1583 | 11.9M | t14a = (dctint)( t14 * 15137U + t9 * 6270U + (1 << 13)) >> 14; | 1584 | 11.9M | t10a = (dctint)(-(t13 * 15137U + t10 * 6270U) + (1 << 13)) >> 14; | 1585 | 11.9M | t13a = (dctint)( t13 * 6270U - t10 * 15137U + (1 << 13)) >> 14; | 1586 | 11.9M | t17a = (dctint)( t30 * 3196U - t17 * 16069U + (1 << 13)) >> 14; | 1587 | 11.9M | t30a = (dctint)( t30 * 16069U + t17 * 3196U + (1 << 13)) >> 14; | 1588 | 11.9M | t18a = (dctint)(-(t29 * 16069U + t18 * 3196U) + (1 << 13)) >> 14; | 1589 | 11.9M | t29a = (dctint)( t29 * 3196U - t18 * 16069U + (1 << 13)) >> 14; | 1590 | 11.9M | t21a = (dctint)( t26 * 13623U - t21 * 9102U + (1 << 13)) >> 14; | 1591 | 11.9M | t26a = (dctint)( t26 * 9102U + t21 * 13623U + (1 << 13)) >> 14; | 1592 | 11.9M | t22a = (dctint)(-(t25 * 9102U + t22 * 13623U) + (1 << 13)) >> 14; | 1593 | 11.9M | t25a = (dctint)( t25 * 13623U - t22 * 9102U + (1 << 13)) >> 14; | 1594 | | | 1595 | 11.9M | t0a = t0 + t7; | 1596 | 11.9M | t1a = t1 + t6a; | 1597 | 11.9M | t2a = t2 + t5a; | 1598 | 11.9M | t3a = t3 + t4; | 1599 | 11.9M | t4a = t3 - t4; | 1600 | 11.9M | t5 = t2 - t5a; | 1601 | 11.9M | t6 = t1 - t6a; | 1602 | 11.9M | t7a = t0 - t7; | 1603 | 11.9M | t8a = t8 + t11; | 1604 | 11.9M | t9 = t9a + t10a; | 1605 | 11.9M | t10 = t9a - t10a; | 1606 | 11.9M | t11a = t8 - t11; | 1607 | 11.9M | t12a = t15 - t12; | 1608 | 11.9M | t13 = t14a - t13a; | 1609 | 11.9M | t14 = t14a + t13a; | 1610 | 11.9M | t15a = t15 + t12; | 1611 | 11.9M | t16a = t16 + t19; | 1612 | 11.9M | t17 = t17a + t18a; | 1613 | 11.9M | t18 = t17a - t18a; | 1614 | 11.9M | t19a = t16 - t19; | 1615 | 11.9M | t20a = t23 - t20; | 1616 | 11.9M | t21 = t22a - t21a; | 1617 | 11.9M | t22 = t22a + t21a; | 1618 | 11.9M | t23a = t23 + t20; | 1619 | 11.9M | t24a = t24 + t27; | 1620 | 11.9M | t25 = t25a + t26a; | 1621 | 11.9M | t26 = t25a - t26a; | 1622 | 11.9M | t27a = t24 - t27; | 1623 | 11.9M | t28a = t31 - t28; | 1624 | 11.9M | t29 = t30a - t29a; | 1625 | 11.9M | t30 = t30a + t29a; | 1626 | 11.9M | t31a = t31 + t28; | 1627 | | | 1628 | 11.9M | t10a = (dctint)((t13 - t10) * 11585U + (1 << 13)) >> 14; | 1629 | 11.9M | t13a = (dctint)((t13 + t10) * 11585U + (1 << 13)) >> 14; | 1630 | 11.9M | t11 = (dctint)((t12a - t11a) * 11585U + (1 << 13)) >> 14; | 1631 | 11.9M | t12 = (dctint)((t12a + t11a) * 11585U + (1 << 13)) >> 14; | 1632 | 11.9M | t18a = (dctint)( t29 * 6270U - t18 * 15137U + (1 << 13)) >> 14; | 1633 | 11.9M | t29a = (dctint)( t29 * 15137U + t18 * 6270U + (1 << 13)) >> 14; | 1634 | 11.9M | t19 = (dctint)( t28a * 6270U - t19a * 15137U + (1 << 13)) >> 14; | 1635 | 11.9M | t28 = (dctint)( t28a * 15137U + t19a * 6270U + (1 << 13)) >> 14; | 1636 | 11.9M | t20 = (dctint)(-(t27a * 15137U + t20a * 6270U) + (1 << 13)) >> 14; | 1637 | 11.9M | t27 = (dctint)( t27a * 6270U - t20a * 15137U + (1 << 13)) >> 14; | 1638 | 11.9M | t21a = (dctint)(-(t26 * 15137U + t21 * 6270U) + (1 << 13)) >> 14; | 1639 | 11.9M | t26a = (dctint)( t26 * 6270U - t21 * 15137U + (1 << 13)) >> 14; | 1640 | | | 1641 | 11.9M | t0 = t0a + t15a; | 1642 | 11.9M | t1 = t1a + t14; | 1643 | 11.9M | t2 = t2a + t13a; | 1644 | 11.9M | t3 = t3a + t12; | 1645 | 11.9M | t4 = t4a + t11; | 1646 | 11.9M | t5a = t5 + t10a; | 1647 | 11.9M | t6a = t6 + t9; | 1648 | 11.9M | t7 = t7a + t8a; | 1649 | 11.9M | t8 = t7a - t8a; | 1650 | 11.9M | t9a = t6 - t9; | 1651 | 11.9M | t10 = t5 - t10a; | 1652 | 11.9M | t11a = t4a - t11; | 1653 | 11.9M | t12a = t3a - t12; | 1654 | 11.9M | t13 = t2a - t13a; | 1655 | 11.9M | t14a = t1a - t14; | 1656 | 11.9M | t15 = t0a - t15a; | 1657 | 11.9M | t16 = t16a + t23a; | 1658 | 11.9M | t17a = t17 + t22; | 1659 | 11.9M | t18 = t18a + t21a; | 1660 | 11.9M | t19a = t19 + t20; | 1661 | 11.9M | t20a = t19 - t20; | 1662 | 11.9M | t21 = t18a - t21a; | 1663 | 11.9M | t22a = t17 - t22; | 1664 | 11.9M | t23 = t16a - t23a; | 1665 | 11.9M | t24 = t31a - t24a; | 1666 | 11.9M | t25a = t30 - t25; | 1667 | 11.9M | t26 = t29a - t26a; | 1668 | 11.9M | t27a = t28 - t27; | 1669 | 11.9M | t28a = t28 + t27; | 1670 | 11.9M | t29 = t29a + t26a; | 1671 | 11.9M | t30a = t30 + t25; | 1672 | 11.9M | t31 = t31a + t24a; | 1673 | | | 1674 | 11.9M | t20 = (dctint)((t27a - t20a) * 11585U + (1 << 13)) >> 14; | 1675 | 11.9M | t27 = (dctint)((t27a + t20a) * 11585U + (1 << 13)) >> 14; | 1676 | 11.9M | t21a = (dctint)((t26 - t21 ) * 11585U + (1 << 13)) >> 14; | 1677 | 11.9M | t26a = (dctint)((t26 + t21 ) * 11585U + (1 << 13)) >> 14; | 1678 | 11.9M | t22 = (dctint)((t25a - t22a) * 11585U + (1 << 13)) >> 14; | 1679 | 11.9M | t25 = (dctint)((t25a + t22a) * 11585U + (1 << 13)) >> 14; | 1680 | 11.9M | t23a = (dctint)((t24 - t23 ) * 11585U + (1 << 13)) >> 14; | 1681 | 11.9M | t24a = (dctint)((t24 + t23 ) * 11585U + (1 << 13)) >> 14; | 1682 | | | 1683 | 11.9M | out[ 0] = t0 + t31; | 1684 | 11.9M | out[ 1] = t1 + t30a; | 1685 | 11.9M | out[ 2] = t2 + t29; | 1686 | 11.9M | out[ 3] = t3 + t28a; | 1687 | 11.9M | out[ 4] = t4 + t27; | 1688 | 11.9M | out[ 5] = t5a + t26a; | 1689 | 11.9M | out[ 6] = t6a + t25; | 1690 | 11.9M | out[ 7] = t7 + t24a; | 1691 | 11.9M | out[ 8] = t8 + t23a; | 1692 | 11.9M | out[ 9] = t9a + t22; | 1693 | 11.9M | out[10] = t10 + t21a; | 1694 | 11.9M | out[11] = t11a + t20; | 1695 | 11.9M | out[12] = t12a + t19a; | 1696 | 11.9M | out[13] = t13 + t18; | 1697 | 11.9M | out[14] = t14a + t17a; | 1698 | 11.9M | out[15] = t15 + t16; | 1699 | 11.9M | out[16] = t15 - t16; | 1700 | 11.9M | out[17] = t14a - t17a; | 1701 | 11.9M | out[18] = t13 - t18; | 1702 | 11.9M | out[19] = t12a - t19a; | 1703 | 11.9M | out[20] = t11a - t20; | 1704 | 11.9M | out[21] = t10 - t21a; | 1705 | 11.9M | out[22] = t9a - t22; | 1706 | 11.9M | out[23] = t8 - t23a; | 1707 | 11.9M | out[24] = t7 - t24a; | 1708 | 11.9M | out[25] = t6a - t25; | 1709 | 11.9M | out[26] = t5a - t26a; | 1710 | 11.9M | out[27] = t4 - t27; | 1711 | 11.9M | out[28] = t3 - t28a; | 1712 | 11.9M | out[29] = t2 - t29; | 1713 | 11.9M | out[30] = t1 - t30a; | 1714 | 11.9M | out[31] = t0 - t31; | 1715 | 11.9M | } |
|
1716 | | |
1717 | | itxfm_wrapper(idct, idct, 32, 6, 1) |
1718 | | |
1719 | | static av_always_inline void iwht4_1d(const dctcoef *in, ptrdiff_t stride, |
1720 | | dctcoef *out, int pass) |
1721 | 1.40M | { |
1722 | 1.40M | int t0, t1, t2, t3, t4; |
1723 | | |
1724 | 1.40M | if (pass == 0) { |
1725 | 704k | t0 = IN(0) >> 2; |
1726 | 704k | t1 = IN(3) >> 2; |
1727 | 704k | t2 = IN(1) >> 2; |
1728 | 704k | t3 = IN(2) >> 2; |
1729 | 704k | } else { |
1730 | 704k | t0 = IN(0); |
1731 | 704k | t1 = IN(3); |
1732 | 704k | t2 = IN(1); |
1733 | 704k | t3 = IN(2); |
1734 | 704k | } |
1735 | | |
1736 | 1.40M | t0 += t2; |
1737 | 1.40M | t3 -= t1; |
1738 | 1.40M | t4 = (t0 - t3) >> 1; |
1739 | 1.40M | t1 = t4 - t1; |
1740 | 1.40M | t2 = t4 - t2; |
1741 | 1.40M | t0 -= t1; |
1742 | 1.40M | t3 += t2; |
1743 | | |
1744 | 1.40M | out[0] = t0; |
1745 | 1.40M | out[1] = t1; |
1746 | 1.40M | out[2] = t2; |
1747 | 1.40M | out[3] = t3; |
1748 | 1.40M | } |
1749 | | |
1750 | | itxfm_wrapper(iwht, iwht, 4, 0, 0) |
1751 | | |
1752 | | #undef IN |
1753 | | #undef itxfm_wrapper |
1754 | | #undef itxfm_wrap |
1755 | | |
1756 | | static av_cold void vp9dsp_itxfm_init(VP9DSPContext *dsp) |
1757 | 15.2k | { |
1758 | 15.2k | #define init_itxfm(tx, sz) \ |
1759 | 45.7k | dsp->itxfm_add[tx][DCT_DCT] = idct_idct_##sz##_add_c; \ |
1760 | 45.7k | dsp->itxfm_add[tx][DCT_ADST] = iadst_idct_##sz##_add_c; \ |
1761 | 45.7k | dsp->itxfm_add[tx][ADST_DCT] = idct_iadst_##sz##_add_c; \ |
1762 | 45.7k | dsp->itxfm_add[tx][ADST_ADST] = iadst_iadst_##sz##_add_c |
1763 | | |
1764 | 15.2k | #define init_idct(tx, nm) \ |
1765 | 30.5k | dsp->itxfm_add[tx][DCT_DCT] = \ |
1766 | 30.5k | dsp->itxfm_add[tx][ADST_DCT] = \ |
1767 | 30.5k | dsp->itxfm_add[tx][DCT_ADST] = \ |
1768 | 30.5k | dsp->itxfm_add[tx][ADST_ADST] = nm##_add_c |
1769 | | |
1770 | 15.2k | init_itxfm(TX_4X4, 4x4); |
1771 | 15.2k | init_itxfm(TX_8X8, 8x8); |
1772 | 15.2k | init_itxfm(TX_16X16, 16x16); |
1773 | 15.2k | init_idct(TX_32X32, idct_idct_32x32); |
1774 | 15.2k | init_idct(4 /* lossless */, iwht_iwht_4x4); |
1775 | | |
1776 | 15.2k | #undef init_itxfm |
1777 | 15.2k | #undef init_idct |
1778 | 15.2k | } vp9dsp_10bpp.c:vp9dsp_itxfm_init Line | Count | Source | 1757 | 4.10k | { | 1758 | 4.10k | #define init_itxfm(tx, sz) \ | 1759 | 4.10k | dsp->itxfm_add[tx][DCT_DCT] = idct_idct_##sz##_add_c; \ | 1760 | 4.10k | dsp->itxfm_add[tx][DCT_ADST] = iadst_idct_##sz##_add_c; \ | 1761 | 4.10k | dsp->itxfm_add[tx][ADST_DCT] = idct_iadst_##sz##_add_c; \ | 1762 | 4.10k | dsp->itxfm_add[tx][ADST_ADST] = iadst_iadst_##sz##_add_c | 1763 | | | 1764 | 4.10k | #define init_idct(tx, nm) \ | 1765 | 4.10k | dsp->itxfm_add[tx][DCT_DCT] = \ | 1766 | 4.10k | dsp->itxfm_add[tx][ADST_DCT] = \ | 1767 | 4.10k | dsp->itxfm_add[tx][DCT_ADST] = \ | 1768 | 4.10k | dsp->itxfm_add[tx][ADST_ADST] = nm##_add_c | 1769 | | | 1770 | 4.10k | init_itxfm(TX_4X4, 4x4); | 1771 | 4.10k | init_itxfm(TX_8X8, 8x8); | 1772 | 4.10k | init_itxfm(TX_16X16, 16x16); | 1773 | 4.10k | init_idct(TX_32X32, idct_idct_32x32); | 1774 | 4.10k | init_idct(4 /* lossless */, iwht_iwht_4x4); | 1775 | | | 1776 | 4.10k | #undef init_itxfm | 1777 | 4.10k | #undef init_idct | 1778 | 4.10k | } |
vp9dsp_12bpp.c:vp9dsp_itxfm_init Line | Count | Source | 1757 | 4.57k | { | 1758 | 4.57k | #define init_itxfm(tx, sz) \ | 1759 | 4.57k | dsp->itxfm_add[tx][DCT_DCT] = idct_idct_##sz##_add_c; \ | 1760 | 4.57k | dsp->itxfm_add[tx][DCT_ADST] = iadst_idct_##sz##_add_c; \ | 1761 | 4.57k | dsp->itxfm_add[tx][ADST_DCT] = idct_iadst_##sz##_add_c; \ | 1762 | 4.57k | dsp->itxfm_add[tx][ADST_ADST] = iadst_iadst_##sz##_add_c | 1763 | | | 1764 | 4.57k | #define init_idct(tx, nm) \ | 1765 | 4.57k | dsp->itxfm_add[tx][DCT_DCT] = \ | 1766 | 4.57k | dsp->itxfm_add[tx][ADST_DCT] = \ | 1767 | 4.57k | dsp->itxfm_add[tx][DCT_ADST] = \ | 1768 | 4.57k | dsp->itxfm_add[tx][ADST_ADST] = nm##_add_c | 1769 | | | 1770 | 4.57k | init_itxfm(TX_4X4, 4x4); | 1771 | 4.57k | init_itxfm(TX_8X8, 8x8); | 1772 | 4.57k | init_itxfm(TX_16X16, 16x16); | 1773 | 4.57k | init_idct(TX_32X32, idct_idct_32x32); | 1774 | 4.57k | init_idct(4 /* lossless */, iwht_iwht_4x4); | 1775 | | | 1776 | 4.57k | #undef init_itxfm | 1777 | 4.57k | #undef init_idct | 1778 | 4.57k | } |
vp9dsp_8bpp.c:vp9dsp_itxfm_init Line | Count | Source | 1757 | 6.58k | { | 1758 | 6.58k | #define init_itxfm(tx, sz) \ | 1759 | 6.58k | dsp->itxfm_add[tx][DCT_DCT] = idct_idct_##sz##_add_c; \ | 1760 | 6.58k | dsp->itxfm_add[tx][DCT_ADST] = iadst_idct_##sz##_add_c; \ | 1761 | 6.58k | dsp->itxfm_add[tx][ADST_DCT] = idct_iadst_##sz##_add_c; \ | 1762 | 6.58k | dsp->itxfm_add[tx][ADST_ADST] = iadst_iadst_##sz##_add_c | 1763 | | | 1764 | 6.58k | #define init_idct(tx, nm) \ | 1765 | 6.58k | dsp->itxfm_add[tx][DCT_DCT] = \ | 1766 | 6.58k | dsp->itxfm_add[tx][ADST_DCT] = \ | 1767 | 6.58k | dsp->itxfm_add[tx][DCT_ADST] = \ | 1768 | 6.58k | dsp->itxfm_add[tx][ADST_ADST] = nm##_add_c | 1769 | | | 1770 | 6.58k | init_itxfm(TX_4X4, 4x4); | 1771 | 6.58k | init_itxfm(TX_8X8, 8x8); | 1772 | 6.58k | init_itxfm(TX_16X16, 16x16); | 1773 | 6.58k | init_idct(TX_32X32, idct_idct_32x32); | 1774 | 6.58k | init_idct(4 /* lossless */, iwht_iwht_4x4); | 1775 | | | 1776 | 6.58k | #undef init_itxfm | 1777 | 6.58k | #undef init_idct | 1778 | 6.58k | } |
|
1779 | | |
1780 | | static av_always_inline void loop_filter(pixel *dst, int E, int I, int H, |
1781 | | ptrdiff_t stridea, ptrdiff_t strideb, |
1782 | | int wd) |
1783 | 467M | { |
1784 | 467M | int i, F = 1 << (BIT_DEPTH - 8); |
1785 | | |
1786 | 467M | E <<= (BIT_DEPTH - 8); |
1787 | 467M | I <<= (BIT_DEPTH - 8); |
1788 | 467M | H <<= (BIT_DEPTH - 8); |
1789 | 4.20G | for (i = 0; i < 8; i++, dst += stridea) { |
1790 | 3.73G | int p7, p6, p5, p4; |
1791 | 3.73G | int p3 = dst[strideb * -4], p2 = dst[strideb * -3]; |
1792 | 3.73G | int p1 = dst[strideb * -2], p0 = dst[strideb * -1]; |
1793 | 3.73G | int q0 = dst[strideb * +0], q1 = dst[strideb * +1]; |
1794 | 3.73G | int q2 = dst[strideb * +2], q3 = dst[strideb * +3]; |
1795 | 3.73G | int q4, q5, q6, q7; |
1796 | 3.73G | int fm = FFABS(p3 - p2) <= I && FFABS(p2 - p1) <= I && |
1797 | 3.66G | FFABS(p1 - p0) <= I && FFABS(q1 - q0) <= I && |
1798 | 3.62G | FFABS(q2 - q1) <= I && FFABS(q3 - q2) <= I && |
1799 | 3.61G | FFABS(p0 - q0) * 2 + (FFABS(p1 - q1) >> 1) <= E; |
1800 | 3.73G | int flat8out, flat8in; |
1801 | | |
1802 | 3.73G | if (!fm) |
1803 | 160M | continue; |
1804 | | |
1805 | 3.57G | if (wd >= 16) { |
1806 | 310M | p7 = dst[strideb * -8]; |
1807 | 310M | p6 = dst[strideb * -7]; |
1808 | 310M | p5 = dst[strideb * -6]; |
1809 | 310M | p4 = dst[strideb * -5]; |
1810 | 310M | q4 = dst[strideb * +4]; |
1811 | 310M | q5 = dst[strideb * +5]; |
1812 | 310M | q6 = dst[strideb * +6]; |
1813 | 310M | q7 = dst[strideb * +7]; |
1814 | | |
1815 | 310M | flat8out = FFABS(p7 - p0) <= F && FFABS(p6 - p0) <= F && |
1816 | 292M | FFABS(p5 - p0) <= F && FFABS(p4 - p0) <= F && |
1817 | 292M | FFABS(q4 - q0) <= F && FFABS(q5 - q0) <= F && |
1818 | 284M | FFABS(q6 - q0) <= F && FFABS(q7 - q0) <= F; |
1819 | 310M | } |
1820 | | |
1821 | 3.57G | if (wd >= 8) |
1822 | 971M | flat8in = FFABS(p3 - p0) <= F && FFABS(p2 - p0) <= F && |
1823 | 923M | FFABS(p1 - p0) <= F && FFABS(q1 - q0) <= F && |
1824 | 914M | FFABS(q2 - q0) <= F && FFABS(q3 - q0) <= F; |
1825 | | |
1826 | 3.57G | if (wd >= 16 && flat8out && flat8in) { |
1827 | 282M | dst[strideb * -7] = (p7 + p7 + p7 + p7 + p7 + p7 + p7 + p6 * 2 + |
1828 | 282M | p5 + p4 + p3 + p2 + p1 + p0 + q0 + 8) >> 4; |
1829 | 282M | dst[strideb * -6] = (p7 + p7 + p7 + p7 + p7 + p7 + p6 + p5 * 2 + |
1830 | 282M | p4 + p3 + p2 + p1 + p0 + q0 + q1 + 8) >> 4; |
1831 | 282M | dst[strideb * -5] = (p7 + p7 + p7 + p7 + p7 + p6 + p5 + p4 * 2 + |
1832 | 282M | p3 + p2 + p1 + p0 + q0 + q1 + q2 + 8) >> 4; |
1833 | 282M | dst[strideb * -4] = (p7 + p7 + p7 + p7 + p6 + p5 + p4 + p3 * 2 + |
1834 | 282M | p2 + p1 + p0 + q0 + q1 + q2 + q3 + 8) >> 4; |
1835 | 282M | dst[strideb * -3] = (p7 + p7 + p7 + p6 + p5 + p4 + p3 + p2 * 2 + |
1836 | 282M | p1 + p0 + q0 + q1 + q2 + q3 + q4 + 8) >> 4; |
1837 | 282M | dst[strideb * -2] = (p7 + p7 + p6 + p5 + p4 + p3 + p2 + p1 * 2 + |
1838 | 282M | p0 + q0 + q1 + q2 + q3 + q4 + q5 + 8) >> 4; |
1839 | 282M | dst[strideb * -1] = (p7 + p6 + p5 + p4 + p3 + p2 + p1 + p0 * 2 + |
1840 | 282M | q0 + q1 + q2 + q3 + q4 + q5 + q6 + 8) >> 4; |
1841 | 282M | dst[strideb * +0] = (p6 + p5 + p4 + p3 + p2 + p1 + p0 + q0 * 2 + |
1842 | 282M | q1 + q2 + q3 + q4 + q5 + q6 + q7 + 8) >> 4; |
1843 | 282M | dst[strideb * +1] = (p5 + p4 + p3 + p2 + p1 + p0 + q0 + q1 * 2 + |
1844 | 282M | q2 + q3 + q4 + q5 + q6 + q7 + q7 + 8) >> 4; |
1845 | 282M | dst[strideb * +2] = (p4 + p3 + p2 + p1 + p0 + q0 + q1 + q2 * 2 + |
1846 | 282M | q3 + q4 + q5 + q6 + q7 + q7 + q7 + 8) >> 4; |
1847 | 282M | dst[strideb * +3] = (p3 + p2 + p1 + p0 + q0 + q1 + q2 + q3 * 2 + |
1848 | 282M | q4 + q5 + q6 + q7 + q7 + q7 + q7 + 8) >> 4; |
1849 | 282M | dst[strideb * +4] = (p2 + p1 + p0 + q0 + q1 + q2 + q3 + q4 * 2 + |
1850 | 282M | q5 + q6 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; |
1851 | 282M | dst[strideb * +5] = (p1 + p0 + q0 + q1 + q2 + q3 + q4 + q5 * 2 + |
1852 | 282M | q6 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; |
1853 | 282M | dst[strideb * +6] = (p0 + q0 + q1 + q2 + q3 + q4 + q5 + q6 * 2 + |
1854 | 282M | q7 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; |
1855 | 3.29G | } else if (wd >= 8 && flat8in) { |
1856 | 622M | dst[strideb * -3] = (p3 + p3 + p3 + 2 * p2 + p1 + p0 + q0 + 4) >> 3; |
1857 | 622M | dst[strideb * -2] = (p3 + p3 + p2 + 2 * p1 + p0 + q0 + q1 + 4) >> 3; |
1858 | 622M | dst[strideb * -1] = (p3 + p2 + p1 + 2 * p0 + q0 + q1 + q2 + 4) >> 3; |
1859 | 622M | dst[strideb * +0] = (p2 + p1 + p0 + 2 * q0 + q1 + q2 + q3 + 4) >> 3; |
1860 | 622M | dst[strideb * +1] = (p1 + p0 + q0 + 2 * q1 + q2 + q3 + q3 + 4) >> 3; |
1861 | 622M | dst[strideb * +2] = (p0 + q0 + q1 + 2 * q2 + q3 + q3 + q3 + 4) >> 3; |
1862 | 2.67G | } else { |
1863 | 2.67G | int hev = FFABS(p1 - p0) > H || FFABS(q1 - q0) > H; |
1864 | | |
1865 | 2.67G | if (hev) { |
1866 | 79.7M | int f = av_clip_intp2(p1 - q1, BIT_DEPTH - 1), f1, f2; |
1867 | 79.7M | f = av_clip_intp2(3 * (q0 - p0) + f, BIT_DEPTH - 1); |
1868 | | |
1869 | 79.7M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; |
1870 | 79.7M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; |
1871 | | |
1872 | 79.7M | dst[strideb * -1] = av_clip_pixel(p0 + f2); |
1873 | 79.7M | dst[strideb * +0] = av_clip_pixel(q0 - f1); |
1874 | 2.59G | } else { |
1875 | 2.59G | int f = av_clip_intp2(3 * (q0 - p0), BIT_DEPTH - 1), f1, f2; |
1876 | | |
1877 | 2.59G | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; |
1878 | 2.59G | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; |
1879 | | |
1880 | 2.59G | dst[strideb * -1] = av_clip_pixel(p0 + f2); |
1881 | 2.59G | dst[strideb * +0] = av_clip_pixel(q0 - f1); |
1882 | | |
1883 | 2.59G | f = (f1 + 1) >> 1; |
1884 | 2.59G | dst[strideb * -2] = av_clip_pixel(p1 + f); |
1885 | 2.59G | dst[strideb * +1] = av_clip_pixel(q1 - f); |
1886 | 2.59G | } |
1887 | 2.67G | } |
1888 | 3.57G | } |
1889 | 467M | } vp9dsp_10bpp.c:loop_filter Line | Count | Source | 1783 | 86.6M | { | 1784 | 86.6M | int i, F = 1 << (BIT_DEPTH - 8); | 1785 | | | 1786 | 86.6M | E <<= (BIT_DEPTH - 8); | 1787 | 86.6M | I <<= (BIT_DEPTH - 8); | 1788 | 86.6M | H <<= (BIT_DEPTH - 8); | 1789 | 779M | for (i = 0; i < 8; i++, dst += stridea) { | 1790 | 692M | int p7, p6, p5, p4; | 1791 | 692M | int p3 = dst[strideb * -4], p2 = dst[strideb * -3]; | 1792 | 692M | int p1 = dst[strideb * -2], p0 = dst[strideb * -1]; | 1793 | 692M | int q0 = dst[strideb * +0], q1 = dst[strideb * +1]; | 1794 | 692M | int q2 = dst[strideb * +2], q3 = dst[strideb * +3]; | 1795 | 692M | int q4, q5, q6, q7; | 1796 | 692M | int fm = FFABS(p3 - p2) <= I && FFABS(p2 - p1) <= I && | 1797 | 672M | FFABS(p1 - p0) <= I && FFABS(q1 - q0) <= I && | 1798 | 660M | FFABS(q2 - q1) <= I && FFABS(q3 - q2) <= I && | 1799 | 654M | FFABS(p0 - q0) * 2 + (FFABS(p1 - q1) >> 1) <= E; | 1800 | 692M | int flat8out, flat8in; | 1801 | | | 1802 | 692M | if (!fm) | 1803 | 51.6M | continue; | 1804 | | | 1805 | 641M | if (wd >= 16) { | 1806 | 78.1M | p7 = dst[strideb * -8]; | 1807 | 78.1M | p6 = dst[strideb * -7]; | 1808 | 78.1M | p5 = dst[strideb * -6]; | 1809 | 78.1M | p4 = dst[strideb * -5]; | 1810 | 78.1M | q4 = dst[strideb * +4]; | 1811 | 78.1M | q5 = dst[strideb * +5]; | 1812 | 78.1M | q6 = dst[strideb * +6]; | 1813 | 78.1M | q7 = dst[strideb * +7]; | 1814 | | | 1815 | 78.1M | flat8out = FFABS(p7 - p0) <= F && FFABS(p6 - p0) <= F && | 1816 | 71.9M | FFABS(p5 - p0) <= F && FFABS(p4 - p0) <= F && | 1817 | 71.8M | FFABS(q4 - q0) <= F && FFABS(q5 - q0) <= F && | 1818 | 69.2M | FFABS(q6 - q0) <= F && FFABS(q7 - q0) <= F; | 1819 | 78.1M | } | 1820 | | | 1821 | 641M | if (wd >= 8) | 1822 | 207M | flat8in = FFABS(p3 - p0) <= F && FFABS(p2 - p0) <= F && | 1823 | 195M | FFABS(p1 - p0) <= F && FFABS(q1 - q0) <= F && | 1824 | 192M | FFABS(q2 - q0) <= F && FFABS(q3 - q0) <= F; | 1825 | | | 1826 | 641M | if (wd >= 16 && flat8out && flat8in) { | 1827 | 68.8M | dst[strideb * -7] = (p7 + p7 + p7 + p7 + p7 + p7 + p7 + p6 * 2 + | 1828 | 68.8M | p5 + p4 + p3 + p2 + p1 + p0 + q0 + 8) >> 4; | 1829 | 68.8M | dst[strideb * -6] = (p7 + p7 + p7 + p7 + p7 + p7 + p6 + p5 * 2 + | 1830 | 68.8M | p4 + p3 + p2 + p1 + p0 + q0 + q1 + 8) >> 4; | 1831 | 68.8M | dst[strideb * -5] = (p7 + p7 + p7 + p7 + p7 + p6 + p5 + p4 * 2 + | 1832 | 68.8M | p3 + p2 + p1 + p0 + q0 + q1 + q2 + 8) >> 4; | 1833 | 68.8M | dst[strideb * -4] = (p7 + p7 + p7 + p7 + p6 + p5 + p4 + p3 * 2 + | 1834 | 68.8M | p2 + p1 + p0 + q0 + q1 + q2 + q3 + 8) >> 4; | 1835 | 68.8M | dst[strideb * -3] = (p7 + p7 + p7 + p6 + p5 + p4 + p3 + p2 * 2 + | 1836 | 68.8M | p1 + p0 + q0 + q1 + q2 + q3 + q4 + 8) >> 4; | 1837 | 68.8M | dst[strideb * -2] = (p7 + p7 + p6 + p5 + p4 + p3 + p2 + p1 * 2 + | 1838 | 68.8M | p0 + q0 + q1 + q2 + q3 + q4 + q5 + 8) >> 4; | 1839 | 68.8M | dst[strideb * -1] = (p7 + p6 + p5 + p4 + p3 + p2 + p1 + p0 * 2 + | 1840 | 68.8M | q0 + q1 + q2 + q3 + q4 + q5 + q6 + 8) >> 4; | 1841 | 68.8M | dst[strideb * +0] = (p6 + p5 + p4 + p3 + p2 + p1 + p0 + q0 * 2 + | 1842 | 68.8M | q1 + q2 + q3 + q4 + q5 + q6 + q7 + 8) >> 4; | 1843 | 68.8M | dst[strideb * +1] = (p5 + p4 + p3 + p2 + p1 + p0 + q0 + q1 * 2 + | 1844 | 68.8M | q2 + q3 + q4 + q5 + q6 + q7 + q7 + 8) >> 4; | 1845 | 68.8M | dst[strideb * +2] = (p4 + p3 + p2 + p1 + p0 + q0 + q1 + q2 * 2 + | 1846 | 68.8M | q3 + q4 + q5 + q6 + q7 + q7 + q7 + 8) >> 4; | 1847 | 68.8M | dst[strideb * +3] = (p3 + p2 + p1 + p0 + q0 + q1 + q2 + q3 * 2 + | 1848 | 68.8M | q4 + q5 + q6 + q7 + q7 + q7 + q7 + 8) >> 4; | 1849 | 68.8M | dst[strideb * +4] = (p2 + p1 + p0 + q0 + q1 + q2 + q3 + q4 * 2 + | 1850 | 68.8M | q5 + q6 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1851 | 68.8M | dst[strideb * +5] = (p1 + p0 + q0 + q1 + q2 + q3 + q4 + q5 * 2 + | 1852 | 68.8M | q6 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1853 | 68.8M | dst[strideb * +6] = (p0 + q0 + q1 + q2 + q3 + q4 + q5 + q6 * 2 + | 1854 | 68.8M | q7 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1855 | 572M | } else if (wd >= 8 && flat8in) { | 1856 | 121M | dst[strideb * -3] = (p3 + p3 + p3 + 2 * p2 + p1 + p0 + q0 + 4) >> 3; | 1857 | 121M | dst[strideb * -2] = (p3 + p3 + p2 + 2 * p1 + p0 + q0 + q1 + 4) >> 3; | 1858 | 121M | dst[strideb * -1] = (p3 + p2 + p1 + 2 * p0 + q0 + q1 + q2 + 4) >> 3; | 1859 | 121M | dst[strideb * +0] = (p2 + p1 + p0 + 2 * q0 + q1 + q2 + q3 + 4) >> 3; | 1860 | 121M | dst[strideb * +1] = (p1 + p0 + q0 + 2 * q1 + q2 + q3 + q3 + 4) >> 3; | 1861 | 121M | dst[strideb * +2] = (p0 + q0 + q1 + 2 * q2 + q3 + q3 + q3 + 4) >> 3; | 1862 | 450M | } else { | 1863 | 450M | int hev = FFABS(p1 - p0) > H || FFABS(q1 - q0) > H; | 1864 | | | 1865 | 450M | if (hev) { | 1866 | 18.4M | int f = av_clip_intp2(p1 - q1, BIT_DEPTH - 1), f1, f2; | 1867 | 18.4M | f = av_clip_intp2(3 * (q0 - p0) + f, BIT_DEPTH - 1); | 1868 | | | 1869 | 18.4M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1870 | 18.4M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1871 | | | 1872 | 18.4M | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1873 | 18.4M | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1874 | 432M | } else { | 1875 | 432M | int f = av_clip_intp2(3 * (q0 - p0), BIT_DEPTH - 1), f1, f2; | 1876 | | | 1877 | 432M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1878 | 432M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1879 | | | 1880 | 432M | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1881 | 432M | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1882 | | | 1883 | 432M | f = (f1 + 1) >> 1; | 1884 | 432M | dst[strideb * -2] = av_clip_pixel(p1 + f); | 1885 | 432M | dst[strideb * +1] = av_clip_pixel(q1 - f); | 1886 | 432M | } | 1887 | 450M | } | 1888 | 641M | } | 1889 | 86.6M | } |
vp9dsp_12bpp.c:loop_filter Line | Count | Source | 1783 | 237M | { | 1784 | 237M | int i, F = 1 << (BIT_DEPTH - 8); | 1785 | | | 1786 | 237M | E <<= (BIT_DEPTH - 8); | 1787 | 237M | I <<= (BIT_DEPTH - 8); | 1788 | 237M | H <<= (BIT_DEPTH - 8); | 1789 | 2.13G | for (i = 0; i < 8; i++, dst += stridea) { | 1790 | 1.89G | int p7, p6, p5, p4; | 1791 | 1.89G | int p3 = dst[strideb * -4], p2 = dst[strideb * -3]; | 1792 | 1.89G | int p1 = dst[strideb * -2], p0 = dst[strideb * -1]; | 1793 | 1.89G | int q0 = dst[strideb * +0], q1 = dst[strideb * +1]; | 1794 | 1.89G | int q2 = dst[strideb * +2], q3 = dst[strideb * +3]; | 1795 | 1.89G | int q4, q5, q6, q7; | 1796 | 1.89G | int fm = FFABS(p3 - p2) <= I && FFABS(p2 - p1) <= I && | 1797 | 1.85G | FFABS(p1 - p0) <= I && FFABS(q1 - q0) <= I && | 1798 | 1.83G | FFABS(q2 - q1) <= I && FFABS(q3 - q2) <= I && | 1799 | 1.82G | FFABS(p0 - q0) * 2 + (FFABS(p1 - q1) >> 1) <= E; | 1800 | 1.89G | int flat8out, flat8in; | 1801 | | | 1802 | 1.89G | if (!fm) | 1803 | 82.0M | continue; | 1804 | | | 1805 | 1.81G | if (wd >= 16) { | 1806 | 76.7M | p7 = dst[strideb * -8]; | 1807 | 76.7M | p6 = dst[strideb * -7]; | 1808 | 76.7M | p5 = dst[strideb * -6]; | 1809 | 76.7M | p4 = dst[strideb * -5]; | 1810 | 76.7M | q4 = dst[strideb * +4]; | 1811 | 76.7M | q5 = dst[strideb * +5]; | 1812 | 76.7M | q6 = dst[strideb * +6]; | 1813 | 76.7M | q7 = dst[strideb * +7]; | 1814 | | | 1815 | 76.7M | flat8out = FFABS(p7 - p0) <= F && FFABS(p6 - p0) <= F && | 1816 | 71.5M | FFABS(p5 - p0) <= F && FFABS(p4 - p0) <= F && | 1817 | 71.4M | FFABS(q4 - q0) <= F && FFABS(q5 - q0) <= F && | 1818 | 69.1M | FFABS(q6 - q0) <= F && FFABS(q7 - q0) <= F; | 1819 | 76.7M | } | 1820 | | | 1821 | 1.81G | if (wd >= 8) | 1822 | 401M | flat8in = FFABS(p3 - p0) <= F && FFABS(p2 - p0) <= F && | 1823 | 373M | FFABS(p1 - p0) <= F && FFABS(q1 - q0) <= F && | 1824 | 369M | FFABS(q2 - q0) <= F && FFABS(q3 - q0) <= F; | 1825 | | | 1826 | 1.81G | if (wd >= 16 && flat8out && flat8in) { | 1827 | 68.5M | dst[strideb * -7] = (p7 + p7 + p7 + p7 + p7 + p7 + p7 + p6 * 2 + | 1828 | 68.5M | p5 + p4 + p3 + p2 + p1 + p0 + q0 + 8) >> 4; | 1829 | 68.5M | dst[strideb * -6] = (p7 + p7 + p7 + p7 + p7 + p7 + p6 + p5 * 2 + | 1830 | 68.5M | p4 + p3 + p2 + p1 + p0 + q0 + q1 + 8) >> 4; | 1831 | 68.5M | dst[strideb * -5] = (p7 + p7 + p7 + p7 + p7 + p6 + p5 + p4 * 2 + | 1832 | 68.5M | p3 + p2 + p1 + p0 + q0 + q1 + q2 + 8) >> 4; | 1833 | 68.5M | dst[strideb * -4] = (p7 + p7 + p7 + p7 + p6 + p5 + p4 + p3 * 2 + | 1834 | 68.5M | p2 + p1 + p0 + q0 + q1 + q2 + q3 + 8) >> 4; | 1835 | 68.5M | dst[strideb * -3] = (p7 + p7 + p7 + p6 + p5 + p4 + p3 + p2 * 2 + | 1836 | 68.5M | p1 + p0 + q0 + q1 + q2 + q3 + q4 + 8) >> 4; | 1837 | 68.5M | dst[strideb * -2] = (p7 + p7 + p6 + p5 + p4 + p3 + p2 + p1 * 2 + | 1838 | 68.5M | p0 + q0 + q1 + q2 + q3 + q4 + q5 + 8) >> 4; | 1839 | 68.5M | dst[strideb * -1] = (p7 + p6 + p5 + p4 + p3 + p2 + p1 + p0 * 2 + | 1840 | 68.5M | q0 + q1 + q2 + q3 + q4 + q5 + q6 + 8) >> 4; | 1841 | 68.5M | dst[strideb * +0] = (p6 + p5 + p4 + p3 + p2 + p1 + p0 + q0 * 2 + | 1842 | 68.5M | q1 + q2 + q3 + q4 + q5 + q6 + q7 + 8) >> 4; | 1843 | 68.5M | dst[strideb * +1] = (p5 + p4 + p3 + p2 + p1 + p0 + q0 + q1 * 2 + | 1844 | 68.5M | q2 + q3 + q4 + q5 + q6 + q7 + q7 + 8) >> 4; | 1845 | 68.5M | dst[strideb * +2] = (p4 + p3 + p2 + p1 + p0 + q0 + q1 + q2 * 2 + | 1846 | 68.5M | q3 + q4 + q5 + q6 + q7 + q7 + q7 + 8) >> 4; | 1847 | 68.5M | dst[strideb * +3] = (p3 + p2 + p1 + p0 + q0 + q1 + q2 + q3 * 2 + | 1848 | 68.5M | q4 + q5 + q6 + q7 + q7 + q7 + q7 + 8) >> 4; | 1849 | 68.5M | dst[strideb * +4] = (p2 + p1 + p0 + q0 + q1 + q2 + q3 + q4 * 2 + | 1850 | 68.5M | q5 + q6 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1851 | 68.5M | dst[strideb * +5] = (p1 + p0 + q0 + q1 + q2 + q3 + q4 + q5 * 2 + | 1852 | 68.5M | q6 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1853 | 68.5M | dst[strideb * +6] = (p0 + q0 + q1 + q2 + q3 + q4 + q5 + q6 * 2 + | 1854 | 68.5M | q7 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1855 | 1.74G | } else if (wd >= 8 && flat8in) { | 1856 | 296M | dst[strideb * -3] = (p3 + p3 + p3 + 2 * p2 + p1 + p0 + q0 + 4) >> 3; | 1857 | 296M | dst[strideb * -2] = (p3 + p3 + p2 + 2 * p1 + p0 + q0 + q1 + 4) >> 3; | 1858 | 296M | dst[strideb * -1] = (p3 + p2 + p1 + 2 * p0 + q0 + q1 + q2 + 4) >> 3; | 1859 | 296M | dst[strideb * +0] = (p2 + p1 + p0 + 2 * q0 + q1 + q2 + q3 + 4) >> 3; | 1860 | 296M | dst[strideb * +1] = (p1 + p0 + q0 + 2 * q1 + q2 + q3 + q3 + 4) >> 3; | 1861 | 296M | dst[strideb * +2] = (p0 + q0 + q1 + 2 * q2 + q3 + q3 + q3 + 4) >> 3; | 1862 | 1.44G | } else { | 1863 | 1.44G | int hev = FFABS(p1 - p0) > H || FFABS(q1 - q0) > H; | 1864 | | | 1865 | 1.44G | if (hev) { | 1866 | 50.5M | int f = av_clip_intp2(p1 - q1, BIT_DEPTH - 1), f1, f2; | 1867 | 50.5M | f = av_clip_intp2(3 * (q0 - p0) + f, BIT_DEPTH - 1); | 1868 | | | 1869 | 50.5M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1870 | 50.5M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1871 | | | 1872 | 50.5M | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1873 | 50.5M | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1874 | 1.39G | } else { | 1875 | 1.39G | int f = av_clip_intp2(3 * (q0 - p0), BIT_DEPTH - 1), f1, f2; | 1876 | | | 1877 | 1.39G | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1878 | 1.39G | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1879 | | | 1880 | 1.39G | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1881 | 1.39G | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1882 | | | 1883 | 1.39G | f = (f1 + 1) >> 1; | 1884 | 1.39G | dst[strideb * -2] = av_clip_pixel(p1 + f); | 1885 | 1.39G | dst[strideb * +1] = av_clip_pixel(q1 - f); | 1886 | 1.39G | } | 1887 | 1.44G | } | 1888 | 1.81G | } | 1889 | 237M | } |
vp9dsp_8bpp.c:loop_filter Line | Count | Source | 1783 | 143M | { | 1784 | 143M | int i, F = 1 << (BIT_DEPTH - 8); | 1785 | | | 1786 | 143M | E <<= (BIT_DEPTH - 8); | 1787 | 143M | I <<= (BIT_DEPTH - 8); | 1788 | 143M | H <<= (BIT_DEPTH - 8); | 1789 | 1.29G | for (i = 0; i < 8; i++, dst += stridea) { | 1790 | 1.15G | int p7, p6, p5, p4; | 1791 | 1.15G | int p3 = dst[strideb * -4], p2 = dst[strideb * -3]; | 1792 | 1.15G | int p1 = dst[strideb * -2], p0 = dst[strideb * -1]; | 1793 | 1.15G | int q0 = dst[strideb * +0], q1 = dst[strideb * +1]; | 1794 | 1.15G | int q2 = dst[strideb * +2], q3 = dst[strideb * +3]; | 1795 | 1.15G | int q4, q5, q6, q7; | 1796 | 1.15G | int fm = FFABS(p3 - p2) <= I && FFABS(p2 - p1) <= I && | 1797 | 1.13G | FFABS(p1 - p0) <= I && FFABS(q1 - q0) <= I && | 1798 | 1.13G | FFABS(q2 - q1) <= I && FFABS(q3 - q2) <= I && | 1799 | 1.12G | FFABS(p0 - q0) * 2 + (FFABS(p1 - q1) >> 1) <= E; | 1800 | 1.15G | int flat8out, flat8in; | 1801 | | | 1802 | 1.15G | if (!fm) | 1803 | 27.1M | continue; | 1804 | | | 1805 | 1.12G | if (wd >= 16) { | 1806 | 155M | p7 = dst[strideb * -8]; | 1807 | 155M | p6 = dst[strideb * -7]; | 1808 | 155M | p5 = dst[strideb * -6]; | 1809 | 155M | p4 = dst[strideb * -5]; | 1810 | 155M | q4 = dst[strideb * +4]; | 1811 | 155M | q5 = dst[strideb * +5]; | 1812 | 155M | q6 = dst[strideb * +6]; | 1813 | 155M | q7 = dst[strideb * +7]; | 1814 | | | 1815 | 155M | flat8out = FFABS(p7 - p0) <= F && FFABS(p6 - p0) <= F && | 1816 | 149M | FFABS(p5 - p0) <= F && FFABS(p4 - p0) <= F && | 1817 | 148M | FFABS(q4 - q0) <= F && FFABS(q5 - q0) <= F && | 1818 | 145M | FFABS(q6 - q0) <= F && FFABS(q7 - q0) <= F; | 1819 | 155M | } | 1820 | | | 1821 | 1.12G | if (wd >= 8) | 1822 | 362M | flat8in = FFABS(p3 - p0) <= F && FFABS(p2 - p0) <= F && | 1823 | 354M | FFABS(p1 - p0) <= F && FFABS(q1 - q0) <= F && | 1824 | 352M | FFABS(q2 - q0) <= F && FFABS(q3 - q0) <= F; | 1825 | | | 1826 | 1.12G | if (wd >= 16 && flat8out && flat8in) { | 1827 | 145M | dst[strideb * -7] = (p7 + p7 + p7 + p7 + p7 + p7 + p7 + p6 * 2 + | 1828 | 145M | p5 + p4 + p3 + p2 + p1 + p0 + q0 + 8) >> 4; | 1829 | 145M | dst[strideb * -6] = (p7 + p7 + p7 + p7 + p7 + p7 + p6 + p5 * 2 + | 1830 | 145M | p4 + p3 + p2 + p1 + p0 + q0 + q1 + 8) >> 4; | 1831 | 145M | dst[strideb * -5] = (p7 + p7 + p7 + p7 + p7 + p6 + p5 + p4 * 2 + | 1832 | 145M | p3 + p2 + p1 + p0 + q0 + q1 + q2 + 8) >> 4; | 1833 | 145M | dst[strideb * -4] = (p7 + p7 + p7 + p7 + p6 + p5 + p4 + p3 * 2 + | 1834 | 145M | p2 + p1 + p0 + q0 + q1 + q2 + q3 + 8) >> 4; | 1835 | 145M | dst[strideb * -3] = (p7 + p7 + p7 + p6 + p5 + p4 + p3 + p2 * 2 + | 1836 | 145M | p1 + p0 + q0 + q1 + q2 + q3 + q4 + 8) >> 4; | 1837 | 145M | dst[strideb * -2] = (p7 + p7 + p6 + p5 + p4 + p3 + p2 + p1 * 2 + | 1838 | 145M | p0 + q0 + q1 + q2 + q3 + q4 + q5 + 8) >> 4; | 1839 | 145M | dst[strideb * -1] = (p7 + p6 + p5 + p4 + p3 + p2 + p1 + p0 * 2 + | 1840 | 145M | q0 + q1 + q2 + q3 + q4 + q5 + q6 + 8) >> 4; | 1841 | 145M | dst[strideb * +0] = (p6 + p5 + p4 + p3 + p2 + p1 + p0 + q0 * 2 + | 1842 | 145M | q1 + q2 + q3 + q4 + q5 + q6 + q7 + 8) >> 4; | 1843 | 145M | dst[strideb * +1] = (p5 + p4 + p3 + p2 + p1 + p0 + q0 + q1 * 2 + | 1844 | 145M | q2 + q3 + q4 + q5 + q6 + q7 + q7 + 8) >> 4; | 1845 | 145M | dst[strideb * +2] = (p4 + p3 + p2 + p1 + p0 + q0 + q1 + q2 * 2 + | 1846 | 145M | q3 + q4 + q5 + q6 + q7 + q7 + q7 + 8) >> 4; | 1847 | 145M | dst[strideb * +3] = (p3 + p2 + p1 + p0 + q0 + q1 + q2 + q3 * 2 + | 1848 | 145M | q4 + q5 + q6 + q7 + q7 + q7 + q7 + 8) >> 4; | 1849 | 145M | dst[strideb * +4] = (p2 + p1 + p0 + q0 + q1 + q2 + q3 + q4 * 2 + | 1850 | 145M | q5 + q6 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1851 | 145M | dst[strideb * +5] = (p1 + p0 + q0 + q1 + q2 + q3 + q4 + q5 * 2 + | 1852 | 145M | q6 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1853 | 145M | dst[strideb * +6] = (p0 + q0 + q1 + q2 + q3 + q4 + q5 + q6 * 2 + | 1854 | 145M | q7 + q7 + q7 + q7 + q7 + q7 + q7 + 8) >> 4; | 1855 | 977M | } else if (wd >= 8 && flat8in) { | 1856 | 204M | dst[strideb * -3] = (p3 + p3 + p3 + 2 * p2 + p1 + p0 + q0 + 4) >> 3; | 1857 | 204M | dst[strideb * -2] = (p3 + p3 + p2 + 2 * p1 + p0 + q0 + q1 + 4) >> 3; | 1858 | 204M | dst[strideb * -1] = (p3 + p2 + p1 + 2 * p0 + q0 + q1 + q2 + 4) >> 3; | 1859 | 204M | dst[strideb * +0] = (p2 + p1 + p0 + 2 * q0 + q1 + q2 + q3 + 4) >> 3; | 1860 | 204M | dst[strideb * +1] = (p1 + p0 + q0 + 2 * q1 + q2 + q3 + q3 + 4) >> 3; | 1861 | 204M | dst[strideb * +2] = (p0 + q0 + q1 + 2 * q2 + q3 + q3 + q3 + 4) >> 3; | 1862 | 773M | } else { | 1863 | 773M | int hev = FFABS(p1 - p0) > H || FFABS(q1 - q0) > H; | 1864 | | | 1865 | 773M | if (hev) { | 1866 | 10.7M | int f = av_clip_intp2(p1 - q1, BIT_DEPTH - 1), f1, f2; | 1867 | 10.7M | f = av_clip_intp2(3 * (q0 - p0) + f, BIT_DEPTH - 1); | 1868 | | | 1869 | 10.7M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1870 | 10.7M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1871 | | | 1872 | 10.7M | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1873 | 10.7M | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1874 | 762M | } else { | 1875 | 762M | int f = av_clip_intp2(3 * (q0 - p0), BIT_DEPTH - 1), f1, f2; | 1876 | | | 1877 | 762M | f1 = FFMIN(f + 4, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1878 | 762M | f2 = FFMIN(f + 3, (1 << (BIT_DEPTH - 1)) - 1) >> 3; | 1879 | | | 1880 | 762M | dst[strideb * -1] = av_clip_pixel(p0 + f2); | 1881 | 762M | dst[strideb * +0] = av_clip_pixel(q0 - f1); | 1882 | | | 1883 | 762M | f = (f1 + 1) >> 1; | 1884 | 762M | dst[strideb * -2] = av_clip_pixel(p1 + f); | 1885 | 762M | dst[strideb * +1] = av_clip_pixel(q1 - f); | 1886 | 762M | } | 1887 | 773M | } | 1888 | 1.12G | } | 1889 | 143M | } |
|
1890 | | |
1891 | | #define lf_8_fn(dir, wd, stridea, strideb) \ |
1892 | | static void loop_filter_##dir##_##wd##_8_c(uint8_t *_dst, \ |
1893 | | ptrdiff_t stride, \ |
1894 | 467M | int E, int I, int H) \ |
1895 | 467M | { \ |
1896 | 467M | pixel *dst = (pixel *) _dst; \ |
1897 | 467M | stride /= sizeof(pixel); \ |
1898 | 467M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ |
1899 | 467M | } vp9dsp_10bpp.c:loop_filter_h_4_8_c Line | Count | Source | 1894 | 28.2M | int E, int I, int H) \ | 1895 | 28.2M | { \ | 1896 | 28.2M | pixel *dst = (pixel *) _dst; \ | 1897 | 28.2M | stride /= sizeof(pixel); \ | 1898 | 28.2M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 28.2M | } |
vp9dsp_10bpp.c:loop_filter_v_4_8_c Line | Count | Source | 1894 | 28.9M | int E, int I, int H) \ | 1895 | 28.9M | { \ | 1896 | 28.9M | pixel *dst = (pixel *) _dst; \ | 1897 | 28.9M | stride /= sizeof(pixel); \ | 1898 | 28.9M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 28.9M | } |
vp9dsp_10bpp.c:loop_filter_h_8_8_c Line | Count | Source | 1894 | 8.57M | int E, int I, int H) \ | 1895 | 8.57M | { \ | 1896 | 8.57M | pixel *dst = (pixel *) _dst; \ | 1897 | 8.57M | stride /= sizeof(pixel); \ | 1898 | 8.57M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 8.57M | } |
vp9dsp_10bpp.c:loop_filter_v_8_8_c Line | Count | Source | 1894 | 9.32M | int E, int I, int H) \ | 1895 | 9.32M | { \ | 1896 | 9.32M | pixel *dst = (pixel *) _dst; \ | 1897 | 9.32M | stride /= sizeof(pixel); \ | 1898 | 9.32M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 9.32M | } |
vp9dsp_10bpp.c:loop_filter_h_16_8_c Line | Count | Source | 1894 | 5.21M | int E, int I, int H) \ | 1895 | 5.21M | { \ | 1896 | 5.21M | pixel *dst = (pixel *) _dst; \ | 1897 | 5.21M | stride /= sizeof(pixel); \ | 1898 | 5.21M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 5.21M | } |
vp9dsp_10bpp.c:loop_filter_v_16_8_c Line | Count | Source | 1894 | 6.28M | int E, int I, int H) \ | 1895 | 6.28M | { \ | 1896 | 6.28M | pixel *dst = (pixel *) _dst; \ | 1897 | 6.28M | stride /= sizeof(pixel); \ | 1898 | 6.28M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 6.28M | } |
vp9dsp_12bpp.c:loop_filter_h_4_8_c Line | Count | Source | 1894 | 89.3M | int E, int I, int H) \ | 1895 | 89.3M | { \ | 1896 | 89.3M | pixel *dst = (pixel *) _dst; \ | 1897 | 89.3M | stride /= sizeof(pixel); \ | 1898 | 89.3M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 89.3M | } |
vp9dsp_12bpp.c:loop_filter_v_4_8_c Line | Count | Source | 1894 | 92.8M | int E, int I, int H) \ | 1895 | 92.8M | { \ | 1896 | 92.8M | pixel *dst = (pixel *) _dst; \ | 1897 | 92.8M | stride /= sizeof(pixel); \ | 1898 | 92.8M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 92.8M | } |
vp9dsp_12bpp.c:loop_filter_h_8_8_c Line | Count | Source | 1894 | 20.3M | int E, int I, int H) \ | 1895 | 20.3M | { \ | 1896 | 20.3M | pixel *dst = (pixel *) _dst; \ | 1897 | 20.3M | stride /= sizeof(pixel); \ | 1898 | 20.3M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 20.3M | } |
vp9dsp_12bpp.c:loop_filter_v_8_8_c Line | Count | Source | 1894 | 22.6M | int E, int I, int H) \ | 1895 | 22.6M | { \ | 1896 | 22.6M | pixel *dst = (pixel *) _dst; \ | 1897 | 22.6M | stride /= sizeof(pixel); \ | 1898 | 22.6M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 22.6M | } |
vp9dsp_12bpp.c:loop_filter_h_16_8_c Line | Count | Source | 1894 | 5.69M | int E, int I, int H) \ | 1895 | 5.69M | { \ | 1896 | 5.69M | pixel *dst = (pixel *) _dst; \ | 1897 | 5.69M | stride /= sizeof(pixel); \ | 1898 | 5.69M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 5.69M | } |
vp9dsp_12bpp.c:loop_filter_v_16_8_c Line | Count | Source | 1894 | 6.11M | int E, int I, int H) \ | 1895 | 6.11M | { \ | 1896 | 6.11M | pixel *dst = (pixel *) _dst; \ | 1897 | 6.11M | stride /= sizeof(pixel); \ | 1898 | 6.11M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 6.11M | } |
vp9dsp_8bpp.c:loop_filter_h_4_8_c Line | Count | Source | 1894 | 50.2M | int E, int I, int H) \ | 1895 | 50.2M | { \ | 1896 | 50.2M | pixel *dst = (pixel *) _dst; \ | 1897 | 50.2M | stride /= sizeof(pixel); \ | 1898 | 50.2M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 50.2M | } |
vp9dsp_8bpp.c:loop_filter_v_4_8_c Line | Count | Source | 1894 | 46.2M | int E, int I, int H) \ | 1895 | 46.2M | { \ | 1896 | 46.2M | pixel *dst = (pixel *) _dst; \ | 1897 | 46.2M | stride /= sizeof(pixel); \ | 1898 | 46.2M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 46.2M | } |
vp9dsp_8bpp.c:loop_filter_h_8_8_c Line | Count | Source | 1894 | 14.6M | int E, int I, int H) \ | 1895 | 14.6M | { \ | 1896 | 14.6M | pixel *dst = (pixel *) _dst; \ | 1897 | 14.6M | stride /= sizeof(pixel); \ | 1898 | 14.6M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 14.6M | } |
vp9dsp_8bpp.c:loop_filter_v_8_8_c Line | Count | Source | 1894 | 12.2M | int E, int I, int H) \ | 1895 | 12.2M | { \ | 1896 | 12.2M | pixel *dst = (pixel *) _dst; \ | 1897 | 12.2M | stride /= sizeof(pixel); \ | 1898 | 12.2M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 12.2M | } |
vp9dsp_8bpp.c:loop_filter_h_16_8_c Line | Count | Source | 1894 | 10.4M | int E, int I, int H) \ | 1895 | 10.4M | { \ | 1896 | 10.4M | pixel *dst = (pixel *) _dst; \ | 1897 | 10.4M | stride /= sizeof(pixel); \ | 1898 | 10.4M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 10.4M | } |
vp9dsp_8bpp.c:loop_filter_v_16_8_c Line | Count | Source | 1894 | 9.88M | int E, int I, int H) \ | 1895 | 9.88M | { \ | 1896 | 9.88M | pixel *dst = (pixel *) _dst; \ | 1897 | 9.88M | stride /= sizeof(pixel); \ | 1898 | 9.88M | loop_filter(dst, E, I, H, stridea, strideb, wd); \ | 1899 | 9.88M | } |
|
1900 | | |
1901 | | #define lf_8_fns(wd) \ |
1902 | | lf_8_fn(h, wd, stride, 1) \ |
1903 | | lf_8_fn(v, wd, 1, stride) |
1904 | | |
1905 | | lf_8_fns(4) |
1906 | | lf_8_fns(8) |
1907 | | lf_8_fns(16) |
1908 | | |
1909 | | #undef lf_8_fn |
1910 | | #undef lf_8_fns |
1911 | | |
1912 | | #define lf_16_fn(dir, stridea) \ |
1913 | | static void loop_filter_##dir##_16_16_c(uint8_t *dst, \ |
1914 | | ptrdiff_t stride, \ |
1915 | 20.7M | int E, int I, int H) \ |
1916 | 20.7M | { \ |
1917 | 20.7M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ |
1918 | 20.7M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ |
1919 | 20.7M | } vp9dsp_10bpp.c:loop_filter_h_16_16_c Line | Count | Source | 1915 | 2.58M | int E, int I, int H) \ | 1916 | 2.58M | { \ | 1917 | 2.58M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 2.58M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 2.58M | } |
vp9dsp_10bpp.c:loop_filter_v_16_16_c Line | Count | Source | 1915 | 2.73M | int E, int I, int H) \ | 1916 | 2.73M | { \ | 1917 | 2.73M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 2.73M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 2.73M | } |
vp9dsp_12bpp.c:loop_filter_h_16_16_c Line | Count | Source | 1915 | 2.76M | int E, int I, int H) \ | 1916 | 2.76M | { \ | 1917 | 2.76M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 2.76M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 2.76M | } |
vp9dsp_12bpp.c:loop_filter_v_16_16_c Line | Count | Source | 1915 | 2.90M | int E, int I, int H) \ | 1916 | 2.90M | { \ | 1917 | 2.90M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 2.90M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 2.90M | } |
vp9dsp_8bpp.c:loop_filter_h_16_16_c Line | Count | Source | 1915 | 5.08M | int E, int I, int H) \ | 1916 | 5.08M | { \ | 1917 | 5.08M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 5.08M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 5.08M | } |
vp9dsp_8bpp.c:loop_filter_v_16_16_c Line | Count | Source | 1915 | 4.67M | int E, int I, int H) \ | 1916 | 4.67M | { \ | 1917 | 4.67M | loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \ | 1918 | 4.67M | loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \ | 1919 | 4.67M | } |
|
1920 | | |
1921 | | lf_16_fn(h, stride) |
1922 | | lf_16_fn(v, sizeof(pixel)) |
1923 | | |
1924 | | #undef lf_16_fn |
1925 | | |
1926 | | #define lf_mix_fn(dir, wd1, wd2, stridea) \ |
1927 | | static void loop_filter_##dir##_##wd1##wd2##_16_c(uint8_t *dst, \ |
1928 | | ptrdiff_t stride, \ |
1929 | 181M | int E, int I, int H) \ |
1930 | 181M | { \ |
1931 | 181M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ |
1932 | 181M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ |
1933 | 181M | } vp9dsp_10bpp.c:loop_filter_h_44_16_c Line | Count | Source | 1929 | 12.5M | int E, int I, int H) \ | 1930 | 12.5M | { \ | 1931 | 12.5M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 12.5M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 12.5M | } |
vp9dsp_10bpp.c:loop_filter_v_44_16_c Line | Count | Source | 1929 | 11.3M | int E, int I, int H) \ | 1930 | 11.3M | { \ | 1931 | 11.3M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 11.3M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 11.3M | } |
vp9dsp_10bpp.c:loop_filter_h_48_16_c Line | Count | Source | 1929 | 135k | int E, int I, int H) \ | 1930 | 135k | { \ | 1931 | 135k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 135k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 135k | } |
vp9dsp_10bpp.c:loop_filter_v_48_16_c Line | Count | Source | 1929 | 167k | int E, int I, int H) \ | 1930 | 167k | { \ | 1931 | 167k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 167k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 167k | } |
vp9dsp_10bpp.c:loop_filter_h_84_16_c Line | Count | Source | 1929 | 151k | int E, int I, int H) \ | 1930 | 151k | { \ | 1931 | 151k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 151k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 151k | } |
vp9dsp_10bpp.c:loop_filter_v_84_16_c Line | Count | Source | 1929 | 198k | int E, int I, int H) \ | 1930 | 198k | { \ | 1931 | 198k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 198k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 198k | } |
vp9dsp_10bpp.c:loop_filter_h_88_16_c Line | Count | Source | 1929 | 3.89M | int E, int I, int H) \ | 1930 | 3.89M | { \ | 1931 | 3.89M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 3.89M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 3.89M | } |
vp9dsp_10bpp.c:loop_filter_v_88_16_c Line | Count | Source | 1929 | 3.36M | int E, int I, int H) \ | 1930 | 3.36M | { \ | 1931 | 3.36M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 3.36M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 3.36M | } |
vp9dsp_12bpp.c:loop_filter_h_44_16_c Line | Count | Source | 1929 | 40.4M | int E, int I, int H) \ | 1930 | 40.4M | { \ | 1931 | 40.4M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 40.4M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 40.4M | } |
vp9dsp_12bpp.c:loop_filter_v_44_16_c Line | Count | Source | 1929 | 38.9M | int E, int I, int H) \ | 1930 | 38.9M | { \ | 1931 | 38.9M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 38.9M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 38.9M | } |
vp9dsp_12bpp.c:loop_filter_h_48_16_c Line | Count | Source | 1929 | 88.7k | int E, int I, int H) \ | 1930 | 88.7k | { \ | 1931 | 88.7k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 88.7k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 88.7k | } |
vp9dsp_12bpp.c:loop_filter_v_48_16_c Line | Count | Source | 1929 | 113k | int E, int I, int H) \ | 1930 | 113k | { \ | 1931 | 113k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 113k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 113k | } |
vp9dsp_12bpp.c:loop_filter_h_84_16_c Line | Count | Source | 1929 | 99.0k | int E, int I, int H) \ | 1930 | 99.0k | { \ | 1931 | 99.0k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 99.0k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 99.0k | } |
vp9dsp_12bpp.c:loop_filter_v_84_16_c Line | Count | Source | 1929 | 171k | int E, int I, int H) \ | 1930 | 171k | { \ | 1931 | 171k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 171k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 171k | } |
vp9dsp_12bpp.c:loop_filter_h_88_16_c Line | Count | Source | 1929 | 9.51M | int E, int I, int H) \ | 1930 | 9.51M | { \ | 1931 | 9.51M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 9.51M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 9.51M | } |
vp9dsp_12bpp.c:loop_filter_v_88_16_c Line | Count | Source | 1929 | 9.35M | int E, int I, int H) \ | 1930 | 9.35M | { \ | 1931 | 9.35M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 9.35M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 9.35M | } |
vp9dsp_8bpp.c:loop_filter_h_44_16_c Line | Count | Source | 1929 | 18.8M | int E, int I, int H) \ | 1930 | 18.8M | { \ | 1931 | 18.8M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 18.8M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 18.8M | } |
vp9dsp_8bpp.c:loop_filter_v_44_16_c Line | Count | Source | 1929 | 20.6M | int E, int I, int H) \ | 1930 | 20.6M | { \ | 1931 | 20.6M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 20.6M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 20.6M | } |
vp9dsp_8bpp.c:loop_filter_h_48_16_c Line | Count | Source | 1929 | 248k | int E, int I, int H) \ | 1930 | 248k | { \ | 1931 | 248k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 248k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 248k | } |
vp9dsp_8bpp.c:loop_filter_v_48_16_c Line | Count | Source | 1929 | 177k | int E, int I, int H) \ | 1930 | 177k | { \ | 1931 | 177k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 177k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 177k | } |
vp9dsp_8bpp.c:loop_filter_h_84_16_c Line | Count | Source | 1929 | 263k | int E, int I, int H) \ | 1930 | 263k | { \ | 1931 | 263k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 263k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 263k | } |
vp9dsp_8bpp.c:loop_filter_v_84_16_c Line | Count | Source | 1929 | 190k | int E, int I, int H) \ | 1930 | 190k | { \ | 1931 | 190k | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 190k | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 190k | } |
vp9dsp_8bpp.c:loop_filter_h_88_16_c Line | Count | Source | 1929 | 5.75M | int E, int I, int H) \ | 1930 | 5.75M | { \ | 1931 | 5.75M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 5.75M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 5.75M | } |
vp9dsp_8bpp.c:loop_filter_v_88_16_c Line | Count | Source | 1929 | 5.07M | int E, int I, int H) \ | 1930 | 5.07M | { \ | 1931 | 5.07M | loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \ | 1932 | 5.07M | loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \ | 1933 | 5.07M | } |
|
1934 | | |
1935 | | #define lf_mix_fns(wd1, wd2) \ |
1936 | | lf_mix_fn(h, wd1, wd2, stride) \ |
1937 | | lf_mix_fn(v, wd1, wd2, sizeof(pixel)) |
1938 | | |
1939 | | lf_mix_fns(4, 4) |
1940 | | lf_mix_fns(4, 8) |
1941 | | lf_mix_fns(8, 4) |
1942 | | lf_mix_fns(8, 8) |
1943 | | |
1944 | | #undef lf_mix_fn |
1945 | | #undef lf_mix_fns |
1946 | | |
1947 | | static av_cold void vp9dsp_loopfilter_init(VP9DSPContext *dsp) |
1948 | 15.2k | { |
1949 | 15.2k | dsp->loop_filter_8[0][0] = loop_filter_h_4_8_c; |
1950 | 15.2k | dsp->loop_filter_8[0][1] = loop_filter_v_4_8_c; |
1951 | 15.2k | dsp->loop_filter_8[1][0] = loop_filter_h_8_8_c; |
1952 | 15.2k | dsp->loop_filter_8[1][1] = loop_filter_v_8_8_c; |
1953 | 15.2k | dsp->loop_filter_8[2][0] = loop_filter_h_16_8_c; |
1954 | 15.2k | dsp->loop_filter_8[2][1] = loop_filter_v_16_8_c; |
1955 | | |
1956 | 15.2k | dsp->loop_filter_16[0] = loop_filter_h_16_16_c; |
1957 | 15.2k | dsp->loop_filter_16[1] = loop_filter_v_16_16_c; |
1958 | | |
1959 | 15.2k | dsp->loop_filter_mix2[0][0][0] = loop_filter_h_44_16_c; |
1960 | 15.2k | dsp->loop_filter_mix2[0][0][1] = loop_filter_v_44_16_c; |
1961 | 15.2k | dsp->loop_filter_mix2[0][1][0] = loop_filter_h_48_16_c; |
1962 | 15.2k | dsp->loop_filter_mix2[0][1][1] = loop_filter_v_48_16_c; |
1963 | 15.2k | dsp->loop_filter_mix2[1][0][0] = loop_filter_h_84_16_c; |
1964 | 15.2k | dsp->loop_filter_mix2[1][0][1] = loop_filter_v_84_16_c; |
1965 | 15.2k | dsp->loop_filter_mix2[1][1][0] = loop_filter_h_88_16_c; |
1966 | 15.2k | dsp->loop_filter_mix2[1][1][1] = loop_filter_v_88_16_c; |
1967 | 15.2k | } vp9dsp_10bpp.c:vp9dsp_loopfilter_init Line | Count | Source | 1948 | 4.10k | { | 1949 | 4.10k | dsp->loop_filter_8[0][0] = loop_filter_h_4_8_c; | 1950 | 4.10k | dsp->loop_filter_8[0][1] = loop_filter_v_4_8_c; | 1951 | 4.10k | dsp->loop_filter_8[1][0] = loop_filter_h_8_8_c; | 1952 | 4.10k | dsp->loop_filter_8[1][1] = loop_filter_v_8_8_c; | 1953 | 4.10k | dsp->loop_filter_8[2][0] = loop_filter_h_16_8_c; | 1954 | 4.10k | dsp->loop_filter_8[2][1] = loop_filter_v_16_8_c; | 1955 | | | 1956 | 4.10k | dsp->loop_filter_16[0] = loop_filter_h_16_16_c; | 1957 | 4.10k | dsp->loop_filter_16[1] = loop_filter_v_16_16_c; | 1958 | | | 1959 | 4.10k | dsp->loop_filter_mix2[0][0][0] = loop_filter_h_44_16_c; | 1960 | 4.10k | dsp->loop_filter_mix2[0][0][1] = loop_filter_v_44_16_c; | 1961 | 4.10k | dsp->loop_filter_mix2[0][1][0] = loop_filter_h_48_16_c; | 1962 | 4.10k | dsp->loop_filter_mix2[0][1][1] = loop_filter_v_48_16_c; | 1963 | 4.10k | dsp->loop_filter_mix2[1][0][0] = loop_filter_h_84_16_c; | 1964 | 4.10k | dsp->loop_filter_mix2[1][0][1] = loop_filter_v_84_16_c; | 1965 | 4.10k | dsp->loop_filter_mix2[1][1][0] = loop_filter_h_88_16_c; | 1966 | 4.10k | dsp->loop_filter_mix2[1][1][1] = loop_filter_v_88_16_c; | 1967 | 4.10k | } |
vp9dsp_12bpp.c:vp9dsp_loopfilter_init Line | Count | Source | 1948 | 4.57k | { | 1949 | 4.57k | dsp->loop_filter_8[0][0] = loop_filter_h_4_8_c; | 1950 | 4.57k | dsp->loop_filter_8[0][1] = loop_filter_v_4_8_c; | 1951 | 4.57k | dsp->loop_filter_8[1][0] = loop_filter_h_8_8_c; | 1952 | 4.57k | dsp->loop_filter_8[1][1] = loop_filter_v_8_8_c; | 1953 | 4.57k | dsp->loop_filter_8[2][0] = loop_filter_h_16_8_c; | 1954 | 4.57k | dsp->loop_filter_8[2][1] = loop_filter_v_16_8_c; | 1955 | | | 1956 | 4.57k | dsp->loop_filter_16[0] = loop_filter_h_16_16_c; | 1957 | 4.57k | dsp->loop_filter_16[1] = loop_filter_v_16_16_c; | 1958 | | | 1959 | 4.57k | dsp->loop_filter_mix2[0][0][0] = loop_filter_h_44_16_c; | 1960 | 4.57k | dsp->loop_filter_mix2[0][0][1] = loop_filter_v_44_16_c; | 1961 | 4.57k | dsp->loop_filter_mix2[0][1][0] = loop_filter_h_48_16_c; | 1962 | 4.57k | dsp->loop_filter_mix2[0][1][1] = loop_filter_v_48_16_c; | 1963 | 4.57k | dsp->loop_filter_mix2[1][0][0] = loop_filter_h_84_16_c; | 1964 | 4.57k | dsp->loop_filter_mix2[1][0][1] = loop_filter_v_84_16_c; | 1965 | 4.57k | dsp->loop_filter_mix2[1][1][0] = loop_filter_h_88_16_c; | 1966 | 4.57k | dsp->loop_filter_mix2[1][1][1] = loop_filter_v_88_16_c; | 1967 | 4.57k | } |
vp9dsp_8bpp.c:vp9dsp_loopfilter_init Line | Count | Source | 1948 | 6.58k | { | 1949 | 6.58k | dsp->loop_filter_8[0][0] = loop_filter_h_4_8_c; | 1950 | 6.58k | dsp->loop_filter_8[0][1] = loop_filter_v_4_8_c; | 1951 | 6.58k | dsp->loop_filter_8[1][0] = loop_filter_h_8_8_c; | 1952 | 6.58k | dsp->loop_filter_8[1][1] = loop_filter_v_8_8_c; | 1953 | 6.58k | dsp->loop_filter_8[2][0] = loop_filter_h_16_8_c; | 1954 | 6.58k | dsp->loop_filter_8[2][1] = loop_filter_v_16_8_c; | 1955 | | | 1956 | 6.58k | dsp->loop_filter_16[0] = loop_filter_h_16_16_c; | 1957 | 6.58k | dsp->loop_filter_16[1] = loop_filter_v_16_16_c; | 1958 | | | 1959 | 6.58k | dsp->loop_filter_mix2[0][0][0] = loop_filter_h_44_16_c; | 1960 | 6.58k | dsp->loop_filter_mix2[0][0][1] = loop_filter_v_44_16_c; | 1961 | 6.58k | dsp->loop_filter_mix2[0][1][0] = loop_filter_h_48_16_c; | 1962 | 6.58k | dsp->loop_filter_mix2[0][1][1] = loop_filter_v_48_16_c; | 1963 | 6.58k | dsp->loop_filter_mix2[1][0][0] = loop_filter_h_84_16_c; | 1964 | 6.58k | dsp->loop_filter_mix2[1][0][1] = loop_filter_v_84_16_c; | 1965 | 6.58k | dsp->loop_filter_mix2[1][1][0] = loop_filter_h_88_16_c; | 1966 | 6.58k | dsp->loop_filter_mix2[1][1][1] = loop_filter_v_88_16_c; | 1967 | 6.58k | } |
|
1968 | | |
1969 | | #if BIT_DEPTH != 12 |
1970 | | |
1971 | | static av_always_inline void copy_c(uint8_t *restrict dst, ptrdiff_t dst_stride, |
1972 | | const uint8_t *restrict src, |
1973 | | ptrdiff_t src_stride, int w, int h) |
1974 | 47.8M | { |
1975 | 502M | do { |
1976 | 502M | memcpy(dst, src, w * sizeof(pixel)); |
1977 | | |
1978 | 502M | dst += dst_stride; |
1979 | 502M | src += src_stride; |
1980 | 502M | } while (--h); |
1981 | 47.8M | } Line | Count | Source | 1974 | 35.8M | { | 1975 | 361M | do { | 1976 | 361M | memcpy(dst, src, w * sizeof(pixel)); | 1977 | | | 1978 | 361M | dst += dst_stride; | 1979 | 361M | src += src_stride; | 1980 | 361M | } while (--h); | 1981 | 35.8M | } |
Line | Count | Source | 1974 | 12.0M | { | 1975 | 141M | do { | 1976 | 141M | memcpy(dst, src, w * sizeof(pixel)); | 1977 | | | 1978 | 141M | dst += dst_stride; | 1979 | 141M | src += src_stride; | 1980 | 141M | } while (--h); | 1981 | 12.0M | } |
|
1982 | | |
1983 | | static av_always_inline void avg_c(uint8_t *restrict _dst, ptrdiff_t dst_stride, |
1984 | | const uint8_t *restrict _src, |
1985 | | ptrdiff_t src_stride, int w, int h) |
1986 | 18.4M | { |
1987 | 18.4M | pixel *dst = (pixel *) _dst; |
1988 | 18.4M | const pixel *src = (const pixel *) _src; |
1989 | | |
1990 | 18.4M | dst_stride /= sizeof(pixel); |
1991 | 18.4M | src_stride /= sizeof(pixel); |
1992 | 146M | do { |
1993 | 146M | int x; |
1994 | | |
1995 | 704M | for (x = 0; x < w; x += 4) |
1996 | 557M | AV_WN4PA(&dst[x], rnd_avg_pixel4(AV_RN4PA(&dst[x]), AV_RN4P(&src[x]))); |
1997 | | |
1998 | 146M | dst += dst_stride; |
1999 | 146M | src += src_stride; |
2000 | 146M | } while (--h); |
2001 | 18.4M | } Line | Count | Source | 1986 | 14.1M | { | 1987 | 14.1M | pixel *dst = (pixel *) _dst; | 1988 | 14.1M | const pixel *src = (const pixel *) _src; | 1989 | | | 1990 | 14.1M | dst_stride /= sizeof(pixel); | 1991 | 14.1M | src_stride /= sizeof(pixel); | 1992 | 107M | do { | 1993 | 107M | int x; | 1994 | | | 1995 | 451M | for (x = 0; x < w; x += 4) | 1996 | 344M | AV_WN4PA(&dst[x], rnd_avg_pixel4(AV_RN4PA(&dst[x]), AV_RN4P(&src[x]))); | 1997 | | | 1998 | 107M | dst += dst_stride; | 1999 | 107M | src += src_stride; | 2000 | 107M | } while (--h); | 2001 | 14.1M | } |
Line | Count | Source | 1986 | 4.30M | { | 1987 | 4.30M | pixel *dst = (pixel *) _dst; | 1988 | 4.30M | const pixel *src = (const pixel *) _src; | 1989 | | | 1990 | 4.30M | dst_stride /= sizeof(pixel); | 1991 | 4.30M | src_stride /= sizeof(pixel); | 1992 | 39.7M | do { | 1993 | 39.7M | int x; | 1994 | | | 1995 | 252M | for (x = 0; x < w; x += 4) | 1996 | 212M | AV_WN4PA(&dst[x], rnd_avg_pixel4(AV_RN4PA(&dst[x]), AV_RN4P(&src[x]))); | 1997 | | | 1998 | 39.7M | dst += dst_stride; | 1999 | 39.7M | src += src_stride; | 2000 | 39.7M | } while (--h); | 2001 | 4.30M | } |
|
2002 | | |
2003 | | #define fpel_fn(type, sz) \ |
2004 | | static void type##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2005 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2006 | 66.3M | int h, int mx, int my) \ |
2007 | 66.3M | { \ |
2008 | 66.3M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ |
2009 | 66.3M | } Line | Count | Source | 2006 | 976k | int h, int mx, int my) \ | 2007 | 976k | { \ | 2008 | 976k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 976k | } |
Line | Count | Source | 2006 | 113k | int h, int mx, int my) \ | 2007 | 113k | { \ | 2008 | 113k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 113k | } |
Line | Count | Source | 2006 | 1.61M | int h, int mx, int my) \ | 2007 | 1.61M | { \ | 2008 | 1.61M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 1.61M | } |
Line | Count | Source | 2006 | 321k | int h, int mx, int my) \ | 2007 | 321k | { \ | 2008 | 321k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 321k | } |
Line | Count | Source | 2006 | 2.06M | int h, int mx, int my) \ | 2007 | 2.06M | { \ | 2008 | 2.06M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 2.06M | } |
Line | Count | Source | 2006 | 796k | int h, int mx, int my) \ | 2007 | 796k | { \ | 2008 | 796k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 796k | } |
Line | Count | Source | 2006 | 15.3M | int h, int mx, int my) \ | 2007 | 15.3M | { \ | 2008 | 15.3M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 15.3M | } |
Line | Count | Source | 2006 | 6.39M | int h, int mx, int my) \ | 2007 | 6.39M | { \ | 2008 | 6.39M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 6.39M | } |
Line | Count | Source | 2006 | 15.8M | int h, int mx, int my) \ | 2007 | 15.8M | { \ | 2008 | 15.8M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 15.8M | } |
Line | Count | Source | 2006 | 6.55M | int h, int mx, int my) \ | 2007 | 6.55M | { \ | 2008 | 6.55M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 6.55M | } |
Line | Count | Source | 2006 | 1.77M | int h, int mx, int my) \ | 2007 | 1.77M | { \ | 2008 | 1.77M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 1.77M | } |
Line | Count | Source | 2006 | 145k | int h, int mx, int my) \ | 2007 | 145k | { \ | 2008 | 145k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 145k | } |
Line | Count | Source | 2006 | 2.24M | int h, int mx, int my) \ | 2007 | 2.24M | { \ | 2008 | 2.24M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 2.24M | } |
Line | Count | Source | 2006 | 314k | int h, int mx, int my) \ | 2007 | 314k | { \ | 2008 | 314k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 314k | } |
Line | Count | Source | 2006 | 1.54M | int h, int mx, int my) \ | 2007 | 1.54M | { \ | 2008 | 1.54M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 1.54M | } |
Line | Count | Source | 2006 | 650k | int h, int mx, int my) \ | 2007 | 650k | { \ | 2008 | 650k | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 650k | } |
Line | Count | Source | 2006 | 2.81M | int h, int mx, int my) \ | 2007 | 2.81M | { \ | 2008 | 2.81M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 2.81M | } |
Line | Count | Source | 2006 | 1.25M | int h, int mx, int my) \ | 2007 | 1.25M | { \ | 2008 | 1.25M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 1.25M | } |
Line | Count | Source | 2006 | 3.61M | int h, int mx, int my) \ | 2007 | 3.61M | { \ | 2008 | 3.61M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 3.61M | } |
Line | Count | Source | 2006 | 1.93M | int h, int mx, int my) \ | 2007 | 1.93M | { \ | 2008 | 1.93M | type##_c(dst, dst_stride, src, src_stride, sz, h); \ | 2009 | 1.93M | } |
|
2010 | | |
2011 | | #define copy_avg_fn(sz) \ |
2012 | | fpel_fn(copy, sz) \ |
2013 | | fpel_fn(avg, sz) |
2014 | | |
2015 | | copy_avg_fn(64) |
2016 | | copy_avg_fn(32) |
2017 | | copy_avg_fn(16) |
2018 | | copy_avg_fn(8) |
2019 | | copy_avg_fn(4) |
2020 | | |
2021 | | #undef fpel_fn |
2022 | | #undef copy_avg_fn |
2023 | | |
2024 | | #endif /* BIT_DEPTH != 12 */ |
2025 | | |
2026 | | #define FILTER_8TAP(src, x, F, stride) \ |
2027 | 9.37G | av_clip_pixel((F[0] * src[x + -3 * stride] + \ |
2028 | 8.45G | F[1] * src[x + -2 * stride] + \ |
2029 | 8.45G | F[2] * src[x + -1 * stride] + \ |
2030 | 8.45G | F[3] * src[x + +0 * stride] + \ |
2031 | 8.45G | F[4] * src[x + +1 * stride] + \ |
2032 | 8.45G | F[5] * src[x + +2 * stride] + \ |
2033 | 8.45G | F[6] * src[x + +3 * stride] + \ |
2034 | 8.45G | F[7] * src[x + +4 * stride] + 64) >> 7) |
2035 | | |
2036 | | static av_always_inline void do_8tap_1d_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2037 | | const uint8_t *_src, ptrdiff_t src_stride, |
2038 | | int w, int h, ptrdiff_t ds, |
2039 | | const int16_t *filter, int avg) |
2040 | 6.79M | { |
2041 | 6.79M | pixel *dst = (pixel *) _dst; |
2042 | 6.79M | const pixel *src = (const pixel *) _src; |
2043 | | |
2044 | 6.79M | dst_stride /= sizeof(pixel); |
2045 | 6.79M | src_stride /= sizeof(pixel); |
2046 | 61.3M | do { |
2047 | 61.3M | int x; |
2048 | | |
2049 | 975M | for (x = 0; x < w; x++) |
2050 | 913M | if (avg) { |
2051 | 403M | dst[x] = (dst[x] + FILTER_8TAP(src, x, filter, ds) + 1) >> 1; |
2052 | 509M | } else { |
2053 | 509M | dst[x] = FILTER_8TAP(src, x, filter, ds); |
2054 | 509M | } |
2055 | | |
2056 | 61.3M | dst += dst_stride; |
2057 | 61.3M | src += src_stride; |
2058 | 61.3M | } while (--h); |
2059 | 6.79M | } vp9dsp_10bpp.c:do_8tap_1d_c Line | Count | Source | 2040 | 2.17M | { | 2041 | 2.17M | pixel *dst = (pixel *) _dst; | 2042 | 2.17M | const pixel *src = (const pixel *) _src; | 2043 | | | 2044 | 2.17M | dst_stride /= sizeof(pixel); | 2045 | 2.17M | src_stride /= sizeof(pixel); | 2046 | 20.1M | do { | 2047 | 20.1M | int x; | 2048 | | | 2049 | 349M | for (x = 0; x < w; x++) | 2050 | 329M | if (avg) { | 2051 | 153M | dst[x] = (dst[x] + FILTER_8TAP(src, x, filter, ds) + 1) >> 1; | 2052 | 175M | } else { | 2053 | 175M | dst[x] = FILTER_8TAP(src, x, filter, ds); | 2054 | 175M | } | 2055 | | | 2056 | 20.1M | dst += dst_stride; | 2057 | 20.1M | src += src_stride; | 2058 | 20.1M | } while (--h); | 2059 | 2.17M | } |
vp9dsp_12bpp.c:do_8tap_1d_c Line | Count | Source | 2040 | 2.19M | { | 2041 | 2.19M | pixel *dst = (pixel *) _dst; | 2042 | 2.19M | const pixel *src = (const pixel *) _src; | 2043 | | | 2044 | 2.19M | dst_stride /= sizeof(pixel); | 2045 | 2.19M | src_stride /= sizeof(pixel); | 2046 | 24.0M | do { | 2047 | 24.0M | int x; | 2048 | | | 2049 | 384M | for (x = 0; x < w; x++) | 2050 | 360M | if (avg) { | 2051 | 166M | dst[x] = (dst[x] + FILTER_8TAP(src, x, filter, ds) + 1) >> 1; | 2052 | 193M | } else { | 2053 | 193M | dst[x] = FILTER_8TAP(src, x, filter, ds); | 2054 | 193M | } | 2055 | | | 2056 | 24.0M | dst += dst_stride; | 2057 | 24.0M | src += src_stride; | 2058 | 24.0M | } while (--h); | 2059 | 2.19M | } |
vp9dsp_8bpp.c:do_8tap_1d_c Line | Count | Source | 2040 | 2.42M | { | 2041 | 2.42M | pixel *dst = (pixel *) _dst; | 2042 | 2.42M | const pixel *src = (const pixel *) _src; | 2043 | | | 2044 | 2.42M | dst_stride /= sizeof(pixel); | 2045 | 2.42M | src_stride /= sizeof(pixel); | 2046 | 17.1M | do { | 2047 | 17.1M | int x; | 2048 | | | 2049 | 241M | for (x = 0; x < w; x++) | 2050 | 223M | if (avg) { | 2051 | 83.6M | dst[x] = (dst[x] + FILTER_8TAP(src, x, filter, ds) + 1) >> 1; | 2052 | 140M | } else { | 2053 | 140M | dst[x] = FILTER_8TAP(src, x, filter, ds); | 2054 | 140M | } | 2055 | | | 2056 | 17.1M | dst += dst_stride; | 2057 | 17.1M | src += src_stride; | 2058 | 17.1M | } while (--h); | 2059 | 2.42M | } |
|
2060 | | |
2061 | | #define filter_8tap_1d_fn(opn, opa, dir, ds) \ |
2062 | | static av_noinline void opn##_8tap_1d_##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2063 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2064 | 6.79M | int w, int h, const int16_t *filter) \ |
2065 | 6.79M | { \ |
2066 | 6.79M | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ |
2067 | 6.79M | } vp9dsp_10bpp.c:put_8tap_1d_v_c Line | Count | Source | 2064 | 738k | int w, int h, const int16_t *filter) \ | 2065 | 738k | { \ | 2066 | 738k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 738k | } |
vp9dsp_10bpp.c:put_8tap_1d_h_c Line | Count | Source | 2064 | 406k | int w, int h, const int16_t *filter) \ | 2065 | 406k | { \ | 2066 | 406k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 406k | } |
vp9dsp_10bpp.c:avg_8tap_1d_v_c Line | Count | Source | 2064 | 675k | int w, int h, const int16_t *filter) \ | 2065 | 675k | { \ | 2066 | 675k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 675k | } |
vp9dsp_10bpp.c:avg_8tap_1d_h_c Line | Count | Source | 2064 | 350k | int w, int h, const int16_t *filter) \ | 2065 | 350k | { \ | 2066 | 350k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 350k | } |
vp9dsp_12bpp.c:put_8tap_1d_v_c Line | Count | Source | 2064 | 679k | int w, int h, const int16_t *filter) \ | 2065 | 679k | { \ | 2066 | 679k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 679k | } |
vp9dsp_12bpp.c:put_8tap_1d_h_c Line | Count | Source | 2064 | 510k | int w, int h, const int16_t *filter) \ | 2065 | 510k | { \ | 2066 | 510k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 510k | } |
vp9dsp_12bpp.c:avg_8tap_1d_v_c Line | Count | Source | 2064 | 597k | int w, int h, const int16_t *filter) \ | 2065 | 597k | { \ | 2066 | 597k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 597k | } |
vp9dsp_12bpp.c:avg_8tap_1d_h_c Line | Count | Source | 2064 | 409k | int w, int h, const int16_t *filter) \ | 2065 | 409k | { \ | 2066 | 409k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 409k | } |
vp9dsp_8bpp.c:put_8tap_1d_v_c Line | Count | Source | 2064 | 681k | int w, int h, const int16_t *filter) \ | 2065 | 681k | { \ | 2066 | 681k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 681k | } |
vp9dsp_8bpp.c:put_8tap_1d_h_c Line | Count | Source | 2064 | 632k | int w, int h, const int16_t *filter) \ | 2065 | 632k | { \ | 2066 | 632k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 632k | } |
vp9dsp_8bpp.c:avg_8tap_1d_v_c Line | Count | Source | 2064 | 629k | int w, int h, const int16_t *filter) \ | 2065 | 629k | { \ | 2066 | 629k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 629k | } |
vp9dsp_8bpp.c:avg_8tap_1d_h_c Line | Count | Source | 2064 | 484k | int w, int h, const int16_t *filter) \ | 2065 | 484k | { \ | 2066 | 484k | do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \ | 2067 | 484k | } |
|
2068 | | |
2069 | | filter_8tap_1d_fn(put, 0, v, src_stride / sizeof(pixel)) |
2070 | | filter_8tap_1d_fn(put, 0, h, 1) |
2071 | | filter_8tap_1d_fn(avg, 1, v, src_stride / sizeof(pixel)) |
2072 | | filter_8tap_1d_fn(avg, 1, h, 1) |
2073 | | |
2074 | | #undef filter_8tap_1d_fn |
2075 | | |
2076 | | static av_always_inline void do_8tap_2d_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2077 | | const uint8_t *_src, ptrdiff_t src_stride, |
2078 | | int w, int h, const int16_t *filterx, |
2079 | | const int16_t *filtery, int avg) |
2080 | 6.65M | { |
2081 | 6.65M | int tmp_h = h + 7; |
2082 | 6.65M | pixel tmp[64 * 71], *tmp_ptr = tmp; |
2083 | 6.65M | pixel *dst = (pixel *) _dst; |
2084 | 6.65M | const pixel *src = (const pixel *) _src; |
2085 | | |
2086 | 6.65M | dst_stride /= sizeof(pixel); |
2087 | 6.65M | src_stride /= sizeof(pixel); |
2088 | 6.65M | src -= src_stride * 3; |
2089 | 100M | do { |
2090 | 100M | int x; |
2091 | | |
2092 | 1.11G | for (x = 0; x < w; x++) |
2093 | 1.01G | tmp_ptr[x] = FILTER_8TAP(src, x, filterx, 1); |
2094 | | |
2095 | 100M | tmp_ptr += 64; |
2096 | 100M | src += src_stride; |
2097 | 100M | } while (--tmp_h); |
2098 | | |
2099 | 6.65M | tmp_ptr = tmp + 64 * 3; |
2100 | 53.4M | do { |
2101 | 53.4M | int x; |
2102 | | |
2103 | 721M | for (x = 0; x < w; x++) |
2104 | 667M | if (avg) { |
2105 | 276M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filtery, 64) + 1) >> 1; |
2106 | 391M | } else { |
2107 | 391M | dst[x] = FILTER_8TAP(tmp_ptr, x, filtery, 64); |
2108 | 391M | } |
2109 | | |
2110 | 53.4M | tmp_ptr += 64; |
2111 | 53.4M | dst += dst_stride; |
2112 | 53.4M | } while (--h); |
2113 | 6.65M | } vp9dsp_10bpp.c:do_8tap_2d_c Line | Count | Source | 2080 | 2.12M | { | 2081 | 2.12M | int tmp_h = h + 7; | 2082 | 2.12M | pixel tmp[64 * 71], *tmp_ptr = tmp; | 2083 | 2.12M | pixel *dst = (pixel *) _dst; | 2084 | 2.12M | const pixel *src = (const pixel *) _src; | 2085 | | | 2086 | 2.12M | dst_stride /= sizeof(pixel); | 2087 | 2.12M | src_stride /= sizeof(pixel); | 2088 | 2.12M | src -= src_stride * 3; | 2089 | 31.6M | do { | 2090 | 31.6M | int x; | 2091 | | | 2092 | 379M | for (x = 0; x < w; x++) | 2093 | 348M | tmp_ptr[x] = FILTER_8TAP(src, x, filterx, 1); | 2094 | | | 2095 | 31.6M | tmp_ptr += 64; | 2096 | 31.6M | src += src_stride; | 2097 | 31.6M | } while (--tmp_h); | 2098 | | | 2099 | 2.12M | tmp_ptr = tmp + 64 * 3; | 2100 | 16.7M | do { | 2101 | 16.7M | int x; | 2102 | | | 2103 | 240M | for (x = 0; x < w; x++) | 2104 | 224M | if (avg) { | 2105 | 104M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filtery, 64) + 1) >> 1; | 2106 | 119M | } else { | 2107 | 119M | dst[x] = FILTER_8TAP(tmp_ptr, x, filtery, 64); | 2108 | 119M | } | 2109 | | | 2110 | 16.7M | tmp_ptr += 64; | 2111 | 16.7M | dst += dst_stride; | 2112 | 16.7M | } while (--h); | 2113 | 2.12M | } |
vp9dsp_12bpp.c:do_8tap_2d_c Line | Count | Source | 2080 | 2.29M | { | 2081 | 2.29M | int tmp_h = h + 7; | 2082 | 2.29M | pixel tmp[64 * 71], *tmp_ptr = tmp; | 2083 | 2.29M | pixel *dst = (pixel *) _dst; | 2084 | 2.29M | const pixel *src = (const pixel *) _src; | 2085 | | | 2086 | 2.29M | dst_stride /= sizeof(pixel); | 2087 | 2.29M | src_stride /= sizeof(pixel); | 2088 | 2.29M | src -= src_stride * 3; | 2089 | 37.9M | do { | 2090 | 37.9M | int x; | 2091 | | | 2092 | 422M | for (x = 0; x < w; x++) | 2093 | 385M | tmp_ptr[x] = FILTER_8TAP(src, x, filterx, 1); | 2094 | | | 2095 | 37.9M | tmp_ptr += 64; | 2096 | 37.9M | src += src_stride; | 2097 | 37.9M | } while (--tmp_h); | 2098 | | | 2099 | 2.29M | tmp_ptr = tmp + 64 * 3; | 2100 | 21.8M | do { | 2101 | 21.8M | int x; | 2102 | | | 2103 | 285M | for (x = 0; x < w; x++) | 2104 | 263M | if (avg) { | 2105 | 118M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filtery, 64) + 1) >> 1; | 2106 | 144M | } else { | 2107 | 144M | dst[x] = FILTER_8TAP(tmp_ptr, x, filtery, 64); | 2108 | 144M | } | 2109 | | | 2110 | 21.8M | tmp_ptr += 64; | 2111 | 21.8M | dst += dst_stride; | 2112 | 21.8M | } while (--h); | 2113 | 2.29M | } |
vp9dsp_8bpp.c:do_8tap_2d_c Line | Count | Source | 2080 | 2.24M | { | 2081 | 2.24M | int tmp_h = h + 7; | 2082 | 2.24M | pixel tmp[64 * 71], *tmp_ptr = tmp; | 2083 | 2.24M | pixel *dst = (pixel *) _dst; | 2084 | 2.24M | const pixel *src = (const pixel *) _src; | 2085 | | | 2086 | 2.24M | dst_stride /= sizeof(pixel); | 2087 | 2.24M | src_stride /= sizeof(pixel); | 2088 | 2.24M | src -= src_stride * 3; | 2089 | 30.5M | do { | 2090 | 30.5M | int x; | 2091 | | | 2092 | 314M | for (x = 0; x < w; x++) | 2093 | 284M | tmp_ptr[x] = FILTER_8TAP(src, x, filterx, 1); | 2094 | | | 2095 | 30.5M | tmp_ptr += 64; | 2096 | 30.5M | src += src_stride; | 2097 | 30.5M | } while (--tmp_h); | 2098 | | | 2099 | 2.24M | tmp_ptr = tmp + 64 * 3; | 2100 | 14.8M | do { | 2101 | 14.8M | int x; | 2102 | | | 2103 | 194M | for (x = 0; x < w; x++) | 2104 | 179M | if (avg) { | 2105 | 53.2M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filtery, 64) + 1) >> 1; | 2106 | 126M | } else { | 2107 | 126M | dst[x] = FILTER_8TAP(tmp_ptr, x, filtery, 64); | 2108 | 126M | } | 2109 | | | 2110 | 14.8M | tmp_ptr += 64; | 2111 | 14.8M | dst += dst_stride; | 2112 | 14.8M | } while (--h); | 2113 | 2.24M | } |
|
2114 | | |
2115 | | #define filter_8tap_2d_fn(opn, opa) \ |
2116 | | static av_noinline void opn##_8tap_2d_hv_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2117 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2118 | | int w, int h, const int16_t *filterx, \ |
2119 | 6.65M | const int16_t *filtery) \ |
2120 | 6.65M | { \ |
2121 | 6.65M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ |
2122 | 6.65M | } vp9dsp_10bpp.c:put_8tap_2d_hv_c Line | Count | Source | 2119 | 1.08M | const int16_t *filtery) \ | 2120 | 1.08M | { \ | 2121 | 1.08M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.08M | } |
vp9dsp_10bpp.c:avg_8tap_2d_hv_c Line | Count | Source | 2119 | 1.04M | const int16_t *filtery) \ | 2120 | 1.04M | { \ | 2121 | 1.04M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.04M | } |
vp9dsp_12bpp.c:put_8tap_2d_hv_c Line | Count | Source | 2119 | 1.22M | const int16_t *filtery) \ | 2120 | 1.22M | { \ | 2121 | 1.22M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.22M | } |
vp9dsp_12bpp.c:avg_8tap_2d_hv_c Line | Count | Source | 2119 | 1.06M | const int16_t *filtery) \ | 2120 | 1.06M | { \ | 2121 | 1.06M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.06M | } |
vp9dsp_8bpp.c:put_8tap_2d_hv_c Line | Count | Source | 2119 | 1.23M | const int16_t *filtery) \ | 2120 | 1.23M | { \ | 2121 | 1.23M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.23M | } |
vp9dsp_8bpp.c:avg_8tap_2d_hv_c Line | Count | Source | 2119 | 1.00M | const int16_t *filtery) \ | 2120 | 1.00M | { \ | 2121 | 1.00M | do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \ | 2122 | 1.00M | } |
|
2123 | | |
2124 | | filter_8tap_2d_fn(put, 0) |
2125 | | filter_8tap_2d_fn(avg, 1) |
2126 | | |
2127 | | #undef filter_8tap_2d_fn |
2128 | | |
2129 | | #define filter_fn_1d(sz, dir, dir_m, type, type_idx, avg) \ |
2130 | | static void avg##_8tap_##type##_##sz##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2131 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2132 | 6.79M | int h, int mx, int my) \ |
2133 | 6.79M | { \ |
2134 | 6.79M | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ |
2135 | 6.79M | ff_vp9_subpel_filters[type_idx][dir_m]); \ |
2136 | 6.79M | } vp9dsp_10bpp.c:put_8tap_smooth_64v_c Line | Count | Source | 2132 | 1.40k | int h, int mx, int my) \ | 2133 | 1.40k | { \ | 2134 | 1.40k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.40k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.40k | } |
vp9dsp_10bpp.c:put_8tap_regular_64v_c Line | Count | Source | 2132 | 2.12k | int h, int mx, int my) \ | 2133 | 2.12k | { \ | 2134 | 2.12k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.12k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.12k | } |
vp9dsp_10bpp.c:put_8tap_sharp_64v_c Line | Count | Source | 2132 | 543 | int h, int mx, int my) \ | 2133 | 543 | { \ | 2134 | 543 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 543 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 543 | } |
vp9dsp_10bpp.c:put_8tap_smooth_32v_c Line | Count | Source | 2132 | 10.5k | int h, int mx, int my) \ | 2133 | 10.5k | { \ | 2134 | 10.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 10.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 10.5k | } |
vp9dsp_10bpp.c:put_8tap_regular_32v_c Line | Count | Source | 2132 | 34.3k | int h, int mx, int my) \ | 2133 | 34.3k | { \ | 2134 | 34.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 34.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 34.3k | } |
vp9dsp_10bpp.c:put_8tap_sharp_32v_c Line | Count | Source | 2132 | 9.24k | int h, int mx, int my) \ | 2133 | 9.24k | { \ | 2134 | 9.24k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 9.24k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 9.24k | } |
vp9dsp_10bpp.c:put_8tap_smooth_16v_c Line | Count | Source | 2132 | 11.2k | int h, int mx, int my) \ | 2133 | 11.2k | { \ | 2134 | 11.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 11.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 11.2k | } |
vp9dsp_10bpp.c:put_8tap_regular_16v_c Line | Count | Source | 2132 | 36.6k | int h, int mx, int my) \ | 2133 | 36.6k | { \ | 2134 | 36.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 36.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 36.6k | } |
vp9dsp_10bpp.c:put_8tap_sharp_16v_c Line | Count | Source | 2132 | 9.81k | int h, int mx, int my) \ | 2133 | 9.81k | { \ | 2134 | 9.81k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 9.81k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 9.81k | } |
vp9dsp_10bpp.c:put_8tap_smooth_8v_c Line | Count | Source | 2132 | 85.7k | int h, int mx, int my) \ | 2133 | 85.7k | { \ | 2134 | 85.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 85.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 85.7k | } |
vp9dsp_10bpp.c:put_8tap_regular_8v_c Line | Count | Source | 2132 | 255k | int h, int mx, int my) \ | 2133 | 255k | { \ | 2134 | 255k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 255k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 255k | } |
vp9dsp_10bpp.c:put_8tap_sharp_8v_c Line | Count | Source | 2132 | 68.8k | int h, int mx, int my) \ | 2133 | 68.8k | { \ | 2134 | 68.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 68.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 68.8k | } |
vp9dsp_10bpp.c:put_8tap_smooth_4v_c Line | Count | Source | 2132 | 61.7k | int h, int mx, int my) \ | 2133 | 61.7k | { \ | 2134 | 61.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 61.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 61.7k | } |
vp9dsp_10bpp.c:put_8tap_regular_4v_c Line | Count | Source | 2132 | 106k | int h, int mx, int my) \ | 2133 | 106k | { \ | 2134 | 106k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 106k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 106k | } |
vp9dsp_10bpp.c:put_8tap_sharp_4v_c Line | Count | Source | 2132 | 44.1k | int h, int mx, int my) \ | 2133 | 44.1k | { \ | 2134 | 44.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 44.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 44.1k | } |
vp9dsp_10bpp.c:put_8tap_smooth_64h_c Line | Count | Source | 2132 | 2.46k | int h, int mx, int my) \ | 2133 | 2.46k | { \ | 2134 | 2.46k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.46k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.46k | } |
vp9dsp_10bpp.c:put_8tap_regular_64h_c Line | Count | Source | 2132 | 2.49k | int h, int mx, int my) \ | 2133 | 2.49k | { \ | 2134 | 2.49k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.49k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.49k | } |
vp9dsp_10bpp.c:put_8tap_sharp_64h_c Line | Count | Source | 2132 | 434 | int h, int mx, int my) \ | 2133 | 434 | { \ | 2134 | 434 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 434 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 434 | } |
vp9dsp_10bpp.c:put_8tap_smooth_32h_c Line | Count | Source | 2132 | 3.85k | int h, int mx, int my) \ | 2133 | 3.85k | { \ | 2134 | 3.85k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.85k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.85k | } |
vp9dsp_10bpp.c:put_8tap_regular_32h_c Line | Count | Source | 2132 | 9.47k | int h, int mx, int my) \ | 2133 | 9.47k | { \ | 2134 | 9.47k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 9.47k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 9.47k | } |
vp9dsp_10bpp.c:put_8tap_sharp_32h_c Line | Count | Source | 2132 | 1.94k | int h, int mx, int my) \ | 2133 | 1.94k | { \ | 2134 | 1.94k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.94k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.94k | } |
vp9dsp_10bpp.c:put_8tap_smooth_16h_c Line | Count | Source | 2132 | 5.96k | int h, int mx, int my) \ | 2133 | 5.96k | { \ | 2134 | 5.96k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.96k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.96k | } |
vp9dsp_10bpp.c:put_8tap_regular_16h_c Line | Count | Source | 2132 | 19.9k | int h, int mx, int my) \ | 2133 | 19.9k | { \ | 2134 | 19.9k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 19.9k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 19.9k | } |
vp9dsp_10bpp.c:put_8tap_sharp_16h_c Line | Count | Source | 2132 | 3.83k | int h, int mx, int my) \ | 2133 | 3.83k | { \ | 2134 | 3.83k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.83k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.83k | } |
vp9dsp_10bpp.c:put_8tap_smooth_8h_c Line | Count | Source | 2132 | 48.5k | int h, int mx, int my) \ | 2133 | 48.5k | { \ | 2134 | 48.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 48.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 48.5k | } |
vp9dsp_10bpp.c:put_8tap_regular_8h_c Line | Count | Source | 2132 | 133k | int h, int mx, int my) \ | 2133 | 133k | { \ | 2134 | 133k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 133k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 133k | } |
vp9dsp_10bpp.c:put_8tap_sharp_8h_c Line | Count | Source | 2132 | 30.3k | int h, int mx, int my) \ | 2133 | 30.3k | { \ | 2134 | 30.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 30.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 30.3k | } |
vp9dsp_10bpp.c:put_8tap_smooth_4h_c Line | Count | Source | 2132 | 46.0k | int h, int mx, int my) \ | 2133 | 46.0k | { \ | 2134 | 46.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 46.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 46.0k | } |
vp9dsp_10bpp.c:put_8tap_regular_4h_c Line | Count | Source | 2132 | 70.4k | int h, int mx, int my) \ | 2133 | 70.4k | { \ | 2134 | 70.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 70.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 70.4k | } |
vp9dsp_10bpp.c:put_8tap_sharp_4h_c Line | Count | Source | 2132 | 27.1k | int h, int mx, int my) \ | 2133 | 27.1k | { \ | 2134 | 27.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 27.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 27.1k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_64v_c Line | Count | Source | 2132 | 1.12k | int h, int mx, int my) \ | 2133 | 1.12k | { \ | 2134 | 1.12k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.12k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.12k | } |
vp9dsp_10bpp.c:avg_8tap_regular_64v_c Line | Count | Source | 2132 | 1.53k | int h, int mx, int my) \ | 2133 | 1.53k | { \ | 2134 | 1.53k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.53k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.53k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_64v_c Line | Count | Source | 2132 | 279 | int h, int mx, int my) \ | 2133 | 279 | { \ | 2134 | 279 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 279 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 279 | } |
vp9dsp_10bpp.c:avg_8tap_smooth_32v_c Line | Count | Source | 2132 | 10.8k | int h, int mx, int my) \ | 2133 | 10.8k | { \ | 2134 | 10.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 10.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 10.8k | } |
vp9dsp_10bpp.c:avg_8tap_regular_32v_c Line | Count | Source | 2132 | 31.0k | int h, int mx, int my) \ | 2133 | 31.0k | { \ | 2134 | 31.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 31.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 31.0k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_32v_c Line | Count | Source | 2132 | 9.25k | int h, int mx, int my) \ | 2133 | 9.25k | { \ | 2134 | 9.25k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 9.25k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 9.25k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_16v_c Line | Count | Source | 2132 | 10.4k | int h, int mx, int my) \ | 2133 | 10.4k | { \ | 2134 | 10.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 10.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 10.4k | } |
vp9dsp_10bpp.c:avg_8tap_regular_16v_c Line | Count | Source | 2132 | 31.5k | int h, int mx, int my) \ | 2133 | 31.5k | { \ | 2134 | 31.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 31.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 31.5k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_16v_c Line | Count | Source | 2132 | 8.87k | int h, int mx, int my) \ | 2133 | 8.87k | { \ | 2134 | 8.87k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 8.87k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 8.87k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_8v_c Line | Count | Source | 2132 | 82.2k | int h, int mx, int my) \ | 2133 | 82.2k | { \ | 2134 | 82.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 82.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 82.2k | } |
vp9dsp_10bpp.c:avg_8tap_regular_8v_c Line | Count | Source | 2132 | 226k | int h, int mx, int my) \ | 2133 | 226k | { \ | 2134 | 226k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 226k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 226k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_8v_c Line | Count | Source | 2132 | 64.6k | int h, int mx, int my) \ | 2133 | 64.6k | { \ | 2134 | 64.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 64.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 64.6k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_4v_c Line | Count | Source | 2132 | 48.5k | int h, int mx, int my) \ | 2133 | 48.5k | { \ | 2134 | 48.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 48.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 48.5k | } |
vp9dsp_10bpp.c:avg_8tap_regular_4v_c Line | Count | Source | 2132 | 103k | int h, int mx, int my) \ | 2133 | 103k | { \ | 2134 | 103k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 103k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 103k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_4v_c Line | Count | Source | 2132 | 45.1k | int h, int mx, int my) \ | 2133 | 45.1k | { \ | 2134 | 45.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 45.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 45.1k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_64h_c Line | Count | Source | 2132 | 668 | int h, int mx, int my) \ | 2133 | 668 | { \ | 2134 | 668 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 668 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 668 | } |
vp9dsp_10bpp.c:avg_8tap_regular_64h_c Line | Count | Source | 2132 | 842 | int h, int mx, int my) \ | 2133 | 842 | { \ | 2134 | 842 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 842 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 842 | } |
vp9dsp_10bpp.c:avg_8tap_sharp_64h_c Line | Count | Source | 2132 | 250 | int h, int mx, int my) \ | 2133 | 250 | { \ | 2134 | 250 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 250 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 250 | } |
vp9dsp_10bpp.c:avg_8tap_smooth_32h_c Line | Count | Source | 2132 | 1.69k | int h, int mx, int my) \ | 2133 | 1.69k | { \ | 2134 | 1.69k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.69k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.69k | } |
vp9dsp_10bpp.c:avg_8tap_regular_32h_c Line | Count | Source | 2132 | 5.05k | int h, int mx, int my) \ | 2133 | 5.05k | { \ | 2134 | 5.05k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.05k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.05k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_32h_c Line | Count | Source | 2132 | 1.50k | int h, int mx, int my) \ | 2133 | 1.50k | { \ | 2134 | 1.50k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.50k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.50k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_16h_c Line | Count | Source | 2132 | 5.01k | int h, int mx, int my) \ | 2133 | 5.01k | { \ | 2134 | 5.01k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.01k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.01k | } |
vp9dsp_10bpp.c:avg_8tap_regular_16h_c Line | Count | Source | 2132 | 13.4k | int h, int mx, int my) \ | 2133 | 13.4k | { \ | 2134 | 13.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 13.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 13.4k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_16h_c Line | Count | Source | 2132 | 3.57k | int h, int mx, int my) \ | 2133 | 3.57k | { \ | 2134 | 3.57k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.57k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.57k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_8h_c Line | Count | Source | 2132 | 42.7k | int h, int mx, int my) \ | 2133 | 42.7k | { \ | 2134 | 42.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 42.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 42.7k | } |
vp9dsp_10bpp.c:avg_8tap_regular_8h_c Line | Count | Source | 2132 | 108k | int h, int mx, int my) \ | 2133 | 108k | { \ | 2134 | 108k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 108k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 108k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_8h_c Line | Count | Source | 2132 | 29.8k | int h, int mx, int my) \ | 2133 | 29.8k | { \ | 2134 | 29.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 29.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 29.8k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_4h_c Line | Count | Source | 2132 | 40.8k | int h, int mx, int my) \ | 2133 | 40.8k | { \ | 2134 | 40.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 40.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 40.8k | } |
vp9dsp_10bpp.c:avg_8tap_regular_4h_c Line | Count | Source | 2132 | 68.7k | int h, int mx, int my) \ | 2133 | 68.7k | { \ | 2134 | 68.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 68.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 68.7k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_4h_c Line | Count | Source | 2132 | 28.0k | int h, int mx, int my) \ | 2133 | 28.0k | { \ | 2134 | 28.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 28.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 28.0k | } |
vp9dsp_12bpp.c:put_8tap_smooth_64v_c Line | Count | Source | 2132 | 2.68k | int h, int mx, int my) \ | 2133 | 2.68k | { \ | 2134 | 2.68k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.68k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.68k | } |
vp9dsp_12bpp.c:put_8tap_regular_64v_c Line | Count | Source | 2132 | 4.47k | int h, int mx, int my) \ | 2133 | 4.47k | { \ | 2134 | 4.47k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.47k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.47k | } |
vp9dsp_12bpp.c:put_8tap_sharp_64v_c Line | Count | Source | 2132 | 1.61k | int h, int mx, int my) \ | 2133 | 1.61k | { \ | 2134 | 1.61k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.61k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.61k | } |
vp9dsp_12bpp.c:put_8tap_smooth_32v_c Line | Count | Source | 2132 | 7.35k | int h, int mx, int my) \ | 2133 | 7.35k | { \ | 2134 | 7.35k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 7.35k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 7.35k | } |
vp9dsp_12bpp.c:put_8tap_regular_32v_c Line | Count | Source | 2132 | 19.9k | int h, int mx, int my) \ | 2133 | 19.9k | { \ | 2134 | 19.9k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 19.9k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 19.9k | } |
vp9dsp_12bpp.c:put_8tap_sharp_32v_c Line | Count | Source | 2132 | 6.04k | int h, int mx, int my) \ | 2133 | 6.04k | { \ | 2134 | 6.04k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 6.04k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 6.04k | } |
vp9dsp_12bpp.c:put_8tap_smooth_16v_c Line | Count | Source | 2132 | 13.7k | int h, int mx, int my) \ | 2133 | 13.7k | { \ | 2134 | 13.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 13.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 13.7k | } |
vp9dsp_12bpp.c:put_8tap_regular_16v_c Line | Count | Source | 2132 | 35.3k | int h, int mx, int my) \ | 2133 | 35.3k | { \ | 2134 | 35.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 35.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 35.3k | } |
vp9dsp_12bpp.c:put_8tap_sharp_16v_c Line | Count | Source | 2132 | 10.9k | int h, int mx, int my) \ | 2133 | 10.9k | { \ | 2134 | 10.9k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 10.9k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 10.9k | } |
vp9dsp_12bpp.c:put_8tap_smooth_8v_c Line | Count | Source | 2132 | 64.0k | int h, int mx, int my) \ | 2133 | 64.0k | { \ | 2134 | 64.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 64.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 64.0k | } |
vp9dsp_12bpp.c:put_8tap_regular_8v_c Line | Count | Source | 2132 | 173k | int h, int mx, int my) \ | 2133 | 173k | { \ | 2134 | 173k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 173k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 173k | } |
vp9dsp_12bpp.c:put_8tap_sharp_8v_c Line | Count | Source | 2132 | 55.4k | int h, int mx, int my) \ | 2133 | 55.4k | { \ | 2134 | 55.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 55.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 55.4k | } |
vp9dsp_12bpp.c:put_8tap_smooth_4v_c Line | Count | Source | 2132 | 63.1k | int h, int mx, int my) \ | 2133 | 63.1k | { \ | 2134 | 63.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 63.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 63.1k | } |
vp9dsp_12bpp.c:put_8tap_regular_4v_c Line | Count | Source | 2132 | 143k | int h, int mx, int my) \ | 2133 | 143k | { \ | 2134 | 143k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 143k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 143k | } |
vp9dsp_12bpp.c:put_8tap_sharp_4v_c Line | Count | Source | 2132 | 77.7k | int h, int mx, int my) \ | 2133 | 77.7k | { \ | 2134 | 77.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 77.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 77.7k | } |
vp9dsp_12bpp.c:put_8tap_smooth_64h_c Line | Count | Source | 2132 | 1.99k | int h, int mx, int my) \ | 2133 | 1.99k | { \ | 2134 | 1.99k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.99k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.99k | } |
vp9dsp_12bpp.c:put_8tap_regular_64h_c Line | Count | Source | 2132 | 3.29k | int h, int mx, int my) \ | 2133 | 3.29k | { \ | 2134 | 3.29k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.29k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.29k | } |
vp9dsp_12bpp.c:put_8tap_sharp_64h_c Line | Count | Source | 2132 | 1.29k | int h, int mx, int my) \ | 2133 | 1.29k | { \ | 2134 | 1.29k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.29k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.29k | } |
vp9dsp_12bpp.c:put_8tap_smooth_32h_c Line | Count | Source | 2132 | 4.83k | int h, int mx, int my) \ | 2133 | 4.83k | { \ | 2134 | 4.83k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.83k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.83k | } |
vp9dsp_12bpp.c:put_8tap_regular_32h_c Line | Count | Source | 2132 | 13.6k | int h, int mx, int my) \ | 2133 | 13.6k | { \ | 2134 | 13.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 13.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 13.6k | } |
vp9dsp_12bpp.c:put_8tap_sharp_32h_c Line | Count | Source | 2132 | 2.29k | int h, int mx, int my) \ | 2133 | 2.29k | { \ | 2134 | 2.29k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.29k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.29k | } |
vp9dsp_12bpp.c:put_8tap_smooth_16h_c Line | Count | Source | 2132 | 8.65k | int h, int mx, int my) \ | 2133 | 8.65k | { \ | 2134 | 8.65k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 8.65k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 8.65k | } |
vp9dsp_12bpp.c:put_8tap_regular_16h_c Line | Count | Source | 2132 | 26.5k | int h, int mx, int my) \ | 2133 | 26.5k | { \ | 2134 | 26.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 26.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 26.5k | } |
vp9dsp_12bpp.c:put_8tap_sharp_16h_c Line | Count | Source | 2132 | 5.61k | int h, int mx, int my) \ | 2133 | 5.61k | { \ | 2134 | 5.61k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.61k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.61k | } |
vp9dsp_12bpp.c:put_8tap_smooth_8h_c Line | Count | Source | 2132 | 41.4k | int h, int mx, int my) \ | 2133 | 41.4k | { \ | 2134 | 41.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 41.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 41.4k | } |
vp9dsp_12bpp.c:put_8tap_regular_8h_c Line | Count | Source | 2132 | 118k | int h, int mx, int my) \ | 2133 | 118k | { \ | 2134 | 118k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 118k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 118k | } |
vp9dsp_12bpp.c:put_8tap_sharp_8h_c Line | Count | Source | 2132 | 32.5k | int h, int mx, int my) \ | 2133 | 32.5k | { \ | 2134 | 32.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 32.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 32.5k | } |
vp9dsp_12bpp.c:put_8tap_smooth_4h_c Line | Count | Source | 2132 | 56.6k | int h, int mx, int my) \ | 2133 | 56.6k | { \ | 2134 | 56.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 56.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 56.6k | } |
vp9dsp_12bpp.c:put_8tap_regular_4h_c Line | Count | Source | 2132 | 131k | int h, int mx, int my) \ | 2133 | 131k | { \ | 2134 | 131k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 131k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 131k | } |
vp9dsp_12bpp.c:put_8tap_sharp_4h_c Line | Count | Source | 2132 | 62.0k | int h, int mx, int my) \ | 2133 | 62.0k | { \ | 2134 | 62.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 62.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 62.0k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_64v_c Line | Count | Source | 2132 | 1.33k | int h, int mx, int my) \ | 2133 | 1.33k | { \ | 2134 | 1.33k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.33k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.33k | } |
vp9dsp_12bpp.c:avg_8tap_regular_64v_c Line | Count | Source | 2132 | 3.09k | int h, int mx, int my) \ | 2133 | 3.09k | { \ | 2134 | 3.09k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.09k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.09k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_64v_c Line | Count | Source | 2132 | 1.59k | int h, int mx, int my) \ | 2133 | 1.59k | { \ | 2134 | 1.59k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.59k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.59k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_32v_c Line | Count | Source | 2132 | 5.74k | int h, int mx, int my) \ | 2133 | 5.74k | { \ | 2134 | 5.74k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.74k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.74k | } |
vp9dsp_12bpp.c:avg_8tap_regular_32v_c Line | Count | Source | 2132 | 16.6k | int h, int mx, int my) \ | 2133 | 16.6k | { \ | 2134 | 16.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 16.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 16.6k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_32v_c Line | Count | Source | 2132 | 5.09k | int h, int mx, int my) \ | 2133 | 5.09k | { \ | 2134 | 5.09k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.09k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.09k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_16v_c Line | Count | Source | 2132 | 10.3k | int h, int mx, int my) \ | 2133 | 10.3k | { \ | 2134 | 10.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 10.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 10.3k | } |
vp9dsp_12bpp.c:avg_8tap_regular_16v_c Line | Count | Source | 2132 | 30.2k | int h, int mx, int my) \ | 2133 | 30.2k | { \ | 2134 | 30.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 30.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 30.2k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_16v_c Line | Count | Source | 2132 | 9.46k | int h, int mx, int my) \ | 2133 | 9.46k | { \ | 2134 | 9.46k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 9.46k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 9.46k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_8v_c Line | Count | Source | 2132 | 56.4k | int h, int mx, int my) \ | 2133 | 56.4k | { \ | 2134 | 56.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 56.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 56.4k | } |
vp9dsp_12bpp.c:avg_8tap_regular_8v_c Line | Count | Source | 2132 | 152k | int h, int mx, int my) \ | 2133 | 152k | { \ | 2134 | 152k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 152k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 152k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_8v_c Line | Count | Source | 2132 | 48.5k | int h, int mx, int my) \ | 2133 | 48.5k | { \ | 2134 | 48.5k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 48.5k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 48.5k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_4v_c Line | Count | Source | 2132 | 52.3k | int h, int mx, int my) \ | 2133 | 52.3k | { \ | 2134 | 52.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 52.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 52.3k | } |
vp9dsp_12bpp.c:avg_8tap_regular_4v_c Line | Count | Source | 2132 | 136k | int h, int mx, int my) \ | 2133 | 136k | { \ | 2134 | 136k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 136k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 136k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_4v_c Line | Count | Source | 2132 | 67.1k | int h, int mx, int my) \ | 2133 | 67.1k | { \ | 2134 | 67.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 67.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 67.1k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_64h_c Line | Count | Source | 2132 | 1.02k | int h, int mx, int my) \ | 2133 | 1.02k | { \ | 2134 | 1.02k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.02k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.02k | } |
vp9dsp_12bpp.c:avg_8tap_regular_64h_c Line | Count | Source | 2132 | 2.10k | int h, int mx, int my) \ | 2133 | 2.10k | { \ | 2134 | 2.10k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.10k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.10k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_64h_c Line | Count | Source | 2132 | 1.78k | int h, int mx, int my) \ | 2133 | 1.78k | { \ | 2134 | 1.78k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.78k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.78k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_32h_c Line | Count | Source | 2132 | 1.75k | int h, int mx, int my) \ | 2133 | 1.75k | { \ | 2134 | 1.75k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.75k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.75k | } |
vp9dsp_12bpp.c:avg_8tap_regular_32h_c Line | Count | Source | 2132 | 5.63k | int h, int mx, int my) \ | 2133 | 5.63k | { \ | 2134 | 5.63k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.63k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.63k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_32h_c Line | Count | Source | 2132 | 1.56k | int h, int mx, int my) \ | 2133 | 1.56k | { \ | 2134 | 1.56k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.56k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.56k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_16h_c Line | Count | Source | 2132 | 5.68k | int h, int mx, int my) \ | 2133 | 5.68k | { \ | 2134 | 5.68k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.68k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.68k | } |
vp9dsp_12bpp.c:avg_8tap_regular_16h_c Line | Count | Source | 2132 | 15.2k | int h, int mx, int my) \ | 2133 | 15.2k | { \ | 2134 | 15.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 15.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 15.2k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_16h_c Line | Count | Source | 2132 | 4.59k | int h, int mx, int my) \ | 2133 | 4.59k | { \ | 2134 | 4.59k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.59k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.59k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_8h_c Line | Count | Source | 2132 | 33.6k | int h, int mx, int my) \ | 2133 | 33.6k | { \ | 2134 | 33.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 33.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 33.6k | } |
vp9dsp_12bpp.c:avg_8tap_regular_8h_c Line | Count | Source | 2132 | 87.2k | int h, int mx, int my) \ | 2133 | 87.2k | { \ | 2134 | 87.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 87.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 87.2k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_8h_c Line | Count | Source | 2132 | 26.0k | int h, int mx, int my) \ | 2133 | 26.0k | { \ | 2134 | 26.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 26.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 26.0k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_4h_c Line | Count | Source | 2132 | 48.0k | int h, int mx, int my) \ | 2133 | 48.0k | { \ | 2134 | 48.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 48.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 48.0k | } |
vp9dsp_12bpp.c:avg_8tap_regular_4h_c Line | Count | Source | 2132 | 119k | int h, int mx, int my) \ | 2133 | 119k | { \ | 2134 | 119k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 119k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 119k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_4h_c Line | Count | Source | 2132 | 55.3k | int h, int mx, int my) \ | 2133 | 55.3k | { \ | 2134 | 55.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 55.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 55.3k | } |
vp9dsp_8bpp.c:put_8tap_smooth_64v_c Line | Count | Source | 2132 | 1.54k | int h, int mx, int my) \ | 2133 | 1.54k | { \ | 2134 | 1.54k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.54k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.54k | } |
vp9dsp_8bpp.c:put_8tap_regular_64v_c Line | Count | Source | 2132 | 4.57k | int h, int mx, int my) \ | 2133 | 4.57k | { \ | 2134 | 4.57k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.57k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.57k | } |
vp9dsp_8bpp.c:put_8tap_sharp_64v_c Line | Count | Source | 2132 | 1.35k | int h, int mx, int my) \ | 2133 | 1.35k | { \ | 2134 | 1.35k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.35k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.35k | } |
vp9dsp_8bpp.c:put_8tap_smooth_32v_c Line | Count | Source | 2132 | 4.33k | int h, int mx, int my) \ | 2133 | 4.33k | { \ | 2134 | 4.33k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.33k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.33k | } |
vp9dsp_8bpp.c:put_8tap_regular_32v_c Line | Count | Source | 2132 | 13.1k | int h, int mx, int my) \ | 2133 | 13.1k | { \ | 2134 | 13.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 13.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 13.1k | } |
vp9dsp_8bpp.c:put_8tap_sharp_32v_c Line | Count | Source | 2132 | 3.59k | int h, int mx, int my) \ | 2133 | 3.59k | { \ | 2134 | 3.59k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.59k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.59k | } |
vp9dsp_8bpp.c:put_8tap_smooth_16v_c Line | Count | Source | 2132 | 4.65k | int h, int mx, int my) \ | 2133 | 4.65k | { \ | 2134 | 4.65k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.65k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.65k | } |
vp9dsp_8bpp.c:put_8tap_regular_16v_c Line | Count | Source | 2132 | 30.4k | int h, int mx, int my) \ | 2133 | 30.4k | { \ | 2134 | 30.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 30.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 30.4k | } |
vp9dsp_8bpp.c:put_8tap_sharp_16v_c Line | Count | Source | 2132 | 5.01k | int h, int mx, int my) \ | 2133 | 5.01k | { \ | 2134 | 5.01k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.01k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.01k | } |
vp9dsp_8bpp.c:put_8tap_smooth_8v_c Line | Count | Source | 2132 | 21.4k | int h, int mx, int my) \ | 2133 | 21.4k | { \ | 2134 | 21.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 21.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 21.4k | } |
vp9dsp_8bpp.c:put_8tap_regular_8v_c Line | Count | Source | 2132 | 153k | int h, int mx, int my) \ | 2133 | 153k | { \ | 2134 | 153k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 153k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 153k | } |
vp9dsp_8bpp.c:put_8tap_sharp_8v_c Line | Count | Source | 2132 | 23.8k | int h, int mx, int my) \ | 2133 | 23.8k | { \ | 2134 | 23.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 23.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 23.8k | } |
vp9dsp_8bpp.c:put_8tap_smooth_4v_c Line | Count | Source | 2132 | 41.2k | int h, int mx, int my) \ | 2133 | 41.2k | { \ | 2134 | 41.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 41.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 41.2k | } |
vp9dsp_8bpp.c:put_8tap_regular_4v_c Line | Count | Source | 2132 | 307k | int h, int mx, int my) \ | 2133 | 307k | { \ | 2134 | 307k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 307k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 307k | } |
vp9dsp_8bpp.c:put_8tap_sharp_4v_c Line | Count | Source | 2132 | 65.2k | int h, int mx, int my) \ | 2133 | 65.2k | { \ | 2134 | 65.2k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 65.2k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 65.2k | } |
vp9dsp_8bpp.c:put_8tap_smooth_64h_c Line | Count | Source | 2132 | 2.75k | int h, int mx, int my) \ | 2133 | 2.75k | { \ | 2134 | 2.75k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.75k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.75k | } |
vp9dsp_8bpp.c:put_8tap_regular_64h_c Line | Count | Source | 2132 | 6.16k | int h, int mx, int my) \ | 2133 | 6.16k | { \ | 2134 | 6.16k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 6.16k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 6.16k | } |
vp9dsp_8bpp.c:put_8tap_sharp_64h_c Line | Count | Source | 2132 | 1.96k | int h, int mx, int my) \ | 2133 | 1.96k | { \ | 2134 | 1.96k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.96k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.96k | } |
vp9dsp_8bpp.c:put_8tap_smooth_32h_c Line | Count | Source | 2132 | 5.22k | int h, int mx, int my) \ | 2133 | 5.22k | { \ | 2134 | 5.22k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 5.22k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 5.22k | } |
vp9dsp_8bpp.c:put_8tap_regular_32h_c Line | Count | Source | 2132 | 13.6k | int h, int mx, int my) \ | 2133 | 13.6k | { \ | 2134 | 13.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 13.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 13.6k | } |
vp9dsp_8bpp.c:put_8tap_sharp_32h_c Line | Count | Source | 2132 | 4.29k | int h, int mx, int my) \ | 2133 | 4.29k | { \ | 2134 | 4.29k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.29k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.29k | } |
vp9dsp_8bpp.c:put_8tap_smooth_16h_c Line | Count | Source | 2132 | 6.29k | int h, int mx, int my) \ | 2133 | 6.29k | { \ | 2134 | 6.29k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 6.29k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 6.29k | } |
vp9dsp_8bpp.c:put_8tap_regular_16h_c Line | Count | Source | 2132 | 23.1k | int h, int mx, int my) \ | 2133 | 23.1k | { \ | 2134 | 23.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 23.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 23.1k | } |
vp9dsp_8bpp.c:put_8tap_sharp_16h_c Line | Count | Source | 2132 | 4.19k | int h, int mx, int my) \ | 2133 | 4.19k | { \ | 2134 | 4.19k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.19k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.19k | } |
vp9dsp_8bpp.c:put_8tap_smooth_8h_c Line | Count | Source | 2132 | 26.0k | int h, int mx, int my) \ | 2133 | 26.0k | { \ | 2134 | 26.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 26.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 26.0k | } |
vp9dsp_8bpp.c:put_8tap_regular_8h_c Line | Count | Source | 2132 | 113k | int h, int mx, int my) \ | 2133 | 113k | { \ | 2134 | 113k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 113k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 113k | } |
vp9dsp_8bpp.c:put_8tap_sharp_8h_c Line | Count | Source | 2132 | 23.8k | int h, int mx, int my) \ | 2133 | 23.8k | { \ | 2134 | 23.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 23.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 23.8k | } |
vp9dsp_8bpp.c:put_8tap_smooth_4h_c Line | Count | Source | 2132 | 43.4k | int h, int mx, int my) \ | 2133 | 43.4k | { \ | 2134 | 43.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 43.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 43.4k | } |
vp9dsp_8bpp.c:put_8tap_regular_4h_c Line | Count | Source | 2132 | 277k | int h, int mx, int my) \ | 2133 | 277k | { \ | 2134 | 277k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 277k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 277k | } |
vp9dsp_8bpp.c:put_8tap_sharp_4h_c Line | Count | Source | 2132 | 81.0k | int h, int mx, int my) \ | 2133 | 81.0k | { \ | 2134 | 81.0k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 81.0k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 81.0k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_64v_c Line | Count | Source | 2132 | 516 | int h, int mx, int my) \ | 2133 | 516 | { \ | 2134 | 516 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 516 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 516 | } |
vp9dsp_8bpp.c:avg_8tap_regular_64v_c Line | Count | Source | 2132 | 1.04k | int h, int mx, int my) \ | 2133 | 1.04k | { \ | 2134 | 1.04k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.04k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.04k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_64v_c Line | Count | Source | 2132 | 2.97k | int h, int mx, int my) \ | 2133 | 2.97k | { \ | 2134 | 2.97k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.97k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.97k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_32v_c Line | Count | Source | 2132 | 952 | int h, int mx, int my) \ | 2133 | 952 | { \ | 2134 | 952 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 952 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 952 | } |
vp9dsp_8bpp.c:avg_8tap_regular_32v_c Line | Count | Source | 2132 | 7.55k | int h, int mx, int my) \ | 2133 | 7.55k | { \ | 2134 | 7.55k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 7.55k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 7.55k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_32v_c Line | Count | Source | 2132 | 1.57k | int h, int mx, int my) \ | 2133 | 1.57k | { \ | 2134 | 1.57k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.57k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.57k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_16v_c Line | Count | Source | 2132 | 2.59k | int h, int mx, int my) \ | 2133 | 2.59k | { \ | 2134 | 2.59k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.59k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.59k | } |
vp9dsp_8bpp.c:avg_8tap_regular_16v_c Line | Count | Source | 2132 | 22.8k | int h, int mx, int my) \ | 2133 | 22.8k | { \ | 2134 | 22.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 22.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 22.8k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_16v_c Line | Count | Source | 2132 | 2.15k | int h, int mx, int my) \ | 2133 | 2.15k | { \ | 2134 | 2.15k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.15k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.15k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_8v_c Line | Count | Source | 2132 | 14.7k | int h, int mx, int my) \ | 2133 | 14.7k | { \ | 2134 | 14.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 14.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 14.7k | } |
vp9dsp_8bpp.c:avg_8tap_regular_8v_c Line | Count | Source | 2132 | 98.1k | int h, int mx, int my) \ | 2133 | 98.1k | { \ | 2134 | 98.1k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 98.1k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 98.1k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_8v_c Line | Count | Source | 2132 | 12.6k | int h, int mx, int my) \ | 2133 | 12.6k | { \ | 2134 | 12.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 12.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 12.6k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_4v_c Line | Count | Source | 2132 | 58.3k | int h, int mx, int my) \ | 2133 | 58.3k | { \ | 2134 | 58.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 58.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 58.3k | } |
vp9dsp_8bpp.c:avg_8tap_regular_4v_c Line | Count | Source | 2132 | 337k | int h, int mx, int my) \ | 2133 | 337k | { \ | 2134 | 337k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 337k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 337k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_4v_c Line | Count | Source | 2132 | 65.8k | int h, int mx, int my) \ | 2133 | 65.8k | { \ | 2134 | 65.8k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 65.8k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 65.8k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_64h_c Line | Count | Source | 2132 | 530 | int h, int mx, int my) \ | 2133 | 530 | { \ | 2134 | 530 | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 530 | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 530 | } |
vp9dsp_8bpp.c:avg_8tap_regular_64h_c Line | Count | Source | 2132 | 1.08k | int h, int mx, int my) \ | 2133 | 1.08k | { \ | 2134 | 1.08k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.08k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.08k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_64h_c Line | Count | Source | 2132 | 4.00k | int h, int mx, int my) \ | 2133 | 4.00k | { \ | 2134 | 4.00k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 4.00k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 4.00k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_32h_c Line | Count | Source | 2132 | 1.12k | int h, int mx, int my) \ | 2133 | 1.12k | { \ | 2134 | 1.12k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.12k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.12k | } |
vp9dsp_8bpp.c:avg_8tap_regular_32h_c Line | Count | Source | 2132 | 3.12k | int h, int mx, int my) \ | 2133 | 3.12k | { \ | 2134 | 3.12k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 3.12k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 3.12k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_32h_c Line | Count | Source | 2132 | 1.41k | int h, int mx, int my) \ | 2133 | 1.41k | { \ | 2134 | 1.41k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.41k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.41k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_16h_c Line | Count | Source | 2132 | 2.89k | int h, int mx, int my) \ | 2133 | 2.89k | { \ | 2134 | 2.89k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 2.89k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 2.89k | } |
vp9dsp_8bpp.c:avg_8tap_regular_16h_c Line | Count | Source | 2132 | 7.68k | int h, int mx, int my) \ | 2133 | 7.68k | { \ | 2134 | 7.68k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 7.68k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 7.68k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_16h_c Line | Count | Source | 2132 | 1.74k | int h, int mx, int my) \ | 2133 | 1.74k | { \ | 2134 | 1.74k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 1.74k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 1.74k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_8h_c Line | Count | Source | 2132 | 15.6k | int h, int mx, int my) \ | 2133 | 15.6k | { \ | 2134 | 15.6k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 15.6k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 15.6k | } |
vp9dsp_8bpp.c:avg_8tap_regular_8h_c Line | Count | Source | 2132 | 50.9k | int h, int mx, int my) \ | 2133 | 50.9k | { \ | 2134 | 50.9k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 50.9k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 50.9k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_8h_c Line | Count | Source | 2132 | 11.7k | int h, int mx, int my) \ | 2133 | 11.7k | { \ | 2134 | 11.7k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 11.7k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 11.7k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_4h_c Line | Count | Source | 2132 | 57.4k | int h, int mx, int my) \ | 2133 | 57.4k | { \ | 2134 | 57.4k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 57.4k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 57.4k | } |
vp9dsp_8bpp.c:avg_8tap_regular_4h_c Line | Count | Source | 2132 | 238k | int h, int mx, int my) \ | 2133 | 238k | { \ | 2134 | 238k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 238k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 238k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_4h_c Line | Count | Source | 2132 | 86.3k | int h, int mx, int my) \ | 2133 | 86.3k | { \ | 2134 | 86.3k | avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \ | 2135 | 86.3k | ff_vp9_subpel_filters[type_idx][dir_m]); \ | 2136 | 86.3k | } |
|
2137 | | |
2138 | | #define filter_fn_2d(sz, type, type_idx, avg) \ |
2139 | | static void avg##_8tap_##type##_##sz##hv_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2140 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2141 | 6.65M | int h, int mx, int my) \ |
2142 | 6.65M | { \ |
2143 | 6.65M | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ |
2144 | 6.65M | ff_vp9_subpel_filters[type_idx][mx], \ |
2145 | 6.65M | ff_vp9_subpel_filters[type_idx][my]); \ |
2146 | 6.65M | } vp9dsp_10bpp.c:put_8tap_smooth_64hv_c Line | Count | Source | 2141 | 3.92k | int h, int mx, int my) \ | 2142 | 3.92k | { \ | 2143 | 3.92k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.92k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.92k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.92k | } |
vp9dsp_10bpp.c:put_8tap_regular_64hv_c Line | Count | Source | 2141 | 3.57k | int h, int mx, int my) \ | 2142 | 3.57k | { \ | 2143 | 3.57k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.57k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.57k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.57k | } |
vp9dsp_10bpp.c:put_8tap_sharp_64hv_c Line | Count | Source | 2141 | 655 | int h, int mx, int my) \ | 2142 | 655 | { \ | 2143 | 655 | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 655 | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 655 | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 655 | } |
vp9dsp_10bpp.c:put_8tap_smooth_32hv_c Line | Count | Source | 2141 | 8.76k | int h, int mx, int my) \ | 2142 | 8.76k | { \ | 2143 | 8.76k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 8.76k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 8.76k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 8.76k | } |
vp9dsp_10bpp.c:put_8tap_regular_32hv_c Line | Count | Source | 2141 | 22.5k | int h, int mx, int my) \ | 2142 | 22.5k | { \ | 2143 | 22.5k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 22.5k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 22.5k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 22.5k | } |
vp9dsp_10bpp.c:put_8tap_sharp_32hv_c Line | Count | Source | 2141 | 4.44k | int h, int mx, int my) \ | 2142 | 4.44k | { \ | 2143 | 4.44k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.44k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.44k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.44k | } |
vp9dsp_10bpp.c:put_8tap_smooth_16hv_c Line | Count | Source | 2141 | 15.9k | int h, int mx, int my) \ | 2142 | 15.9k | { \ | 2143 | 15.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 15.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 15.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 15.9k | } |
vp9dsp_10bpp.c:put_8tap_regular_16hv_c Line | Count | Source | 2141 | 50.8k | int h, int mx, int my) \ | 2142 | 50.8k | { \ | 2143 | 50.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 50.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 50.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 50.8k | } |
vp9dsp_10bpp.c:put_8tap_sharp_16hv_c Line | Count | Source | 2141 | 11.9k | int h, int mx, int my) \ | 2142 | 11.9k | { \ | 2143 | 11.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 11.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 11.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 11.9k | } |
vp9dsp_10bpp.c:put_8tap_smooth_8hv_c Line | Count | Source | 2141 | 138k | int h, int mx, int my) \ | 2142 | 138k | { \ | 2143 | 138k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 138k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 138k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 138k | } |
vp9dsp_10bpp.c:put_8tap_regular_8hv_c Line | Count | Source | 2141 | 390k | int h, int mx, int my) \ | 2142 | 390k | { \ | 2143 | 390k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 390k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 390k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 390k | } |
vp9dsp_10bpp.c:put_8tap_sharp_8hv_c Line | Count | Source | 2141 | 99.8k | int h, int mx, int my) \ | 2142 | 99.8k | { \ | 2143 | 99.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 99.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 99.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 99.8k | } |
vp9dsp_10bpp.c:put_8tap_smooth_4hv_c Line | Count | Source | 2141 | 93.1k | int h, int mx, int my) \ | 2142 | 93.1k | { \ | 2143 | 93.1k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 93.1k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 93.1k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 93.1k | } |
vp9dsp_10bpp.c:put_8tap_regular_4hv_c Line | Count | Source | 2141 | 170k | int h, int mx, int my) \ | 2142 | 170k | { \ | 2143 | 170k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 170k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 170k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 170k | } |
vp9dsp_10bpp.c:put_8tap_sharp_4hv_c Line | Count | Source | 2141 | 66.3k | int h, int mx, int my) \ | 2142 | 66.3k | { \ | 2143 | 66.3k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 66.3k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 66.3k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 66.3k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_64hv_c Line | Count | Source | 2141 | 3.74k | int h, int mx, int my) \ | 2142 | 3.74k | { \ | 2143 | 3.74k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.74k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.74k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.74k | } |
vp9dsp_10bpp.c:avg_8tap_regular_64hv_c Line | Count | Source | 2141 | 1.53k | int h, int mx, int my) \ | 2142 | 1.53k | { \ | 2143 | 1.53k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.53k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.53k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.53k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_64hv_c Line | Count | Source | 2141 | 373 | int h, int mx, int my) \ | 2142 | 373 | { \ | 2143 | 373 | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 373 | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 373 | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 373 | } |
vp9dsp_10bpp.c:avg_8tap_smooth_32hv_c Line | Count | Source | 2141 | 4.62k | int h, int mx, int my) \ | 2142 | 4.62k | { \ | 2143 | 4.62k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.62k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.62k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.62k | } |
vp9dsp_10bpp.c:avg_8tap_regular_32hv_c Line | Count | Source | 2141 | 15.1k | int h, int mx, int my) \ | 2142 | 15.1k | { \ | 2143 | 15.1k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 15.1k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 15.1k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 15.1k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_32hv_c Line | Count | Source | 2141 | 4.38k | int h, int mx, int my) \ | 2142 | 4.38k | { \ | 2143 | 4.38k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.38k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.38k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.38k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_16hv_c Line | Count | Source | 2141 | 14.6k | int h, int mx, int my) \ | 2142 | 14.6k | { \ | 2143 | 14.6k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 14.6k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 14.6k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 14.6k | } |
vp9dsp_10bpp.c:avg_8tap_regular_16hv_c Line | Count | Source | 2141 | 42.5k | int h, int mx, int my) \ | 2142 | 42.5k | { \ | 2143 | 42.5k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 42.5k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 42.5k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 42.5k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_16hv_c Line | Count | Source | 2141 | 11.9k | int h, int mx, int my) \ | 2142 | 11.9k | { \ | 2143 | 11.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 11.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 11.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 11.9k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_8hv_c Line | Count | Source | 2141 | 138k | int h, int mx, int my) \ | 2142 | 138k | { \ | 2143 | 138k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 138k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 138k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 138k | } |
vp9dsp_10bpp.c:avg_8tap_regular_8hv_c Line | Count | Source | 2141 | 368k | int h, int mx, int my) \ | 2142 | 368k | { \ | 2143 | 368k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 368k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 368k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 368k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_8hv_c Line | Count | Source | 2141 | 101k | int h, int mx, int my) \ | 2142 | 101k | { \ | 2143 | 101k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 101k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 101k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 101k | } |
vp9dsp_10bpp.c:avg_8tap_smooth_4hv_c Line | Count | Source | 2141 | 77.9k | int h, int mx, int my) \ | 2142 | 77.9k | { \ | 2143 | 77.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 77.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 77.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 77.9k | } |
vp9dsp_10bpp.c:avg_8tap_regular_4hv_c Line | Count | Source | 2141 | 189k | int h, int mx, int my) \ | 2142 | 189k | { \ | 2143 | 189k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 189k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 189k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 189k | } |
vp9dsp_10bpp.c:avg_8tap_sharp_4hv_c Line | Count | Source | 2141 | 68.2k | int h, int mx, int my) \ | 2142 | 68.2k | { \ | 2143 | 68.2k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 68.2k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 68.2k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 68.2k | } |
vp9dsp_12bpp.c:put_8tap_smooth_64hv_c Line | Count | Source | 2141 | 4.83k | int h, int mx, int my) \ | 2142 | 4.83k | { \ | 2143 | 4.83k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.83k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.83k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.83k | } |
vp9dsp_12bpp.c:put_8tap_regular_64hv_c Line | Count | Source | 2141 | 5.18k | int h, int mx, int my) \ | 2142 | 5.18k | { \ | 2143 | 5.18k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 5.18k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 5.18k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 5.18k | } |
vp9dsp_12bpp.c:put_8tap_sharp_64hv_c Line | Count | Source | 2141 | 1.76k | int h, int mx, int my) \ | 2142 | 1.76k | { \ | 2143 | 1.76k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.76k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.76k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.76k | } |
vp9dsp_12bpp.c:put_8tap_smooth_32hv_c Line | Count | Source | 2141 | 9.44k | int h, int mx, int my) \ | 2142 | 9.44k | { \ | 2143 | 9.44k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 9.44k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 9.44k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 9.44k | } |
vp9dsp_12bpp.c:put_8tap_regular_32hv_c Line | Count | Source | 2141 | 20.0k | int h, int mx, int my) \ | 2142 | 20.0k | { \ | 2143 | 20.0k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 20.0k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 20.0k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 20.0k | } |
vp9dsp_12bpp.c:put_8tap_sharp_32hv_c Line | Count | Source | 2141 | 6.33k | int h, int mx, int my) \ | 2142 | 6.33k | { \ | 2143 | 6.33k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 6.33k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 6.33k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 6.33k | } |
vp9dsp_12bpp.c:put_8tap_smooth_16hv_c Line | Count | Source | 2141 | 16.8k | int h, int mx, int my) \ | 2142 | 16.8k | { \ | 2143 | 16.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 16.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 16.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 16.8k | } |
vp9dsp_12bpp.c:put_8tap_regular_16hv_c Line | Count | Source | 2141 | 57.1k | int h, int mx, int my) \ | 2142 | 57.1k | { \ | 2143 | 57.1k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 57.1k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 57.1k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 57.1k | } |
vp9dsp_12bpp.c:put_8tap_sharp_16hv_c Line | Count | Source | 2141 | 15.5k | int h, int mx, int my) \ | 2142 | 15.5k | { \ | 2143 | 15.5k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 15.5k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 15.5k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 15.5k | } |
vp9dsp_12bpp.c:put_8tap_smooth_8hv_c Line | Count | Source | 2141 | 108k | int h, int mx, int my) \ | 2142 | 108k | { \ | 2143 | 108k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 108k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 108k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 108k | } |
vp9dsp_12bpp.c:put_8tap_regular_8hv_c Line | Count | Source | 2141 | 292k | int h, int mx, int my) \ | 2142 | 292k | { \ | 2143 | 292k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 292k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 292k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 292k | } |
vp9dsp_12bpp.c:put_8tap_sharp_8hv_c Line | Count | Source | 2141 | 78.9k | int h, int mx, int my) \ | 2142 | 78.9k | { \ | 2143 | 78.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 78.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 78.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 78.9k | } |
vp9dsp_12bpp.c:put_8tap_smooth_4hv_c Line | Count | Source | 2141 | 136k | int h, int mx, int my) \ | 2142 | 136k | { \ | 2143 | 136k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 136k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 136k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 136k | } |
vp9dsp_12bpp.c:put_8tap_regular_4hv_c Line | Count | Source | 2141 | 342k | int h, int mx, int my) \ | 2142 | 342k | { \ | 2143 | 342k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 342k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 342k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 342k | } |
vp9dsp_12bpp.c:put_8tap_sharp_4hv_c Line | Count | Source | 2141 | 133k | int h, int mx, int my) \ | 2142 | 133k | { \ | 2143 | 133k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 133k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 133k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 133k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_64hv_c Line | Count | Source | 2141 | 2.46k | int h, int mx, int my) \ | 2142 | 2.46k | { \ | 2143 | 2.46k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 2.46k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 2.46k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 2.46k | } |
vp9dsp_12bpp.c:avg_8tap_regular_64hv_c Line | Count | Source | 2141 | 3.62k | int h, int mx, int my) \ | 2142 | 3.62k | { \ | 2143 | 3.62k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.62k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.62k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.62k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_64hv_c Line | Count | Source | 2141 | 1.17k | int h, int mx, int my) \ | 2142 | 1.17k | { \ | 2143 | 1.17k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.17k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.17k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.17k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_32hv_c Line | Count | Source | 2141 | 5.44k | int h, int mx, int my) \ | 2142 | 5.44k | { \ | 2143 | 5.44k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 5.44k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 5.44k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 5.44k | } |
vp9dsp_12bpp.c:avg_8tap_regular_32hv_c Line | Count | Source | 2141 | 11.9k | int h, int mx, int my) \ | 2142 | 11.9k | { \ | 2143 | 11.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 11.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 11.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 11.9k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_32hv_c Line | Count | Source | 2141 | 3.55k | int h, int mx, int my) \ | 2142 | 3.55k | { \ | 2143 | 3.55k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.55k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.55k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.55k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_16hv_c Line | Count | Source | 2141 | 14.0k | int h, int mx, int my) \ | 2142 | 14.0k | { \ | 2143 | 14.0k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 14.0k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 14.0k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 14.0k | } |
vp9dsp_12bpp.c:avg_8tap_regular_16hv_c Line | Count | Source | 2141 | 40.9k | int h, int mx, int my) \ | 2142 | 40.9k | { \ | 2143 | 40.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 40.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 40.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 40.9k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_16hv_c Line | Count | Source | 2141 | 11.8k | int h, int mx, int my) \ | 2142 | 11.8k | { \ | 2143 | 11.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 11.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 11.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 11.8k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_8hv_c Line | Count | Source | 2141 | 91.4k | int h, int mx, int my) \ | 2142 | 91.4k | { \ | 2143 | 91.4k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 91.4k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 91.4k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 91.4k | } |
vp9dsp_12bpp.c:avg_8tap_regular_8hv_c Line | Count | Source | 2141 | 250k | int h, int mx, int my) \ | 2142 | 250k | { \ | 2143 | 250k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 250k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 250k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 250k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_8hv_c Line | Count | Source | 2141 | 72.6k | int h, int mx, int my) \ | 2142 | 72.6k | { \ | 2143 | 72.6k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 72.6k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 72.6k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 72.6k | } |
vp9dsp_12bpp.c:avg_8tap_smooth_4hv_c Line | Count | Source | 2141 | 121k | int h, int mx, int my) \ | 2142 | 121k | { \ | 2143 | 121k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 121k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 121k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 121k | } |
vp9dsp_12bpp.c:avg_8tap_regular_4hv_c Line | Count | Source | 2141 | 320k | int h, int mx, int my) \ | 2142 | 320k | { \ | 2143 | 320k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 320k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 320k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 320k | } |
vp9dsp_12bpp.c:avg_8tap_sharp_4hv_c Line | Count | Source | 2141 | 112k | int h, int mx, int my) \ | 2142 | 112k | { \ | 2143 | 112k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 112k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 112k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 112k | } |
vp9dsp_8bpp.c:put_8tap_smooth_64hv_c Line | Count | Source | 2141 | 4.59k | int h, int mx, int my) \ | 2142 | 4.59k | { \ | 2143 | 4.59k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.59k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.59k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.59k | } |
vp9dsp_8bpp.c:put_8tap_regular_64hv_c Line | Count | Source | 2141 | 10.3k | int h, int mx, int my) \ | 2142 | 10.3k | { \ | 2143 | 10.3k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 10.3k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 10.3k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 10.3k | } |
vp9dsp_8bpp.c:put_8tap_sharp_64hv_c Line | Count | Source | 2141 | 2.77k | int h, int mx, int my) \ | 2142 | 2.77k | { \ | 2143 | 2.77k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 2.77k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 2.77k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 2.77k | } |
vp9dsp_8bpp.c:put_8tap_smooth_32hv_c Line | Count | Source | 2141 | 8.33k | int h, int mx, int my) \ | 2142 | 8.33k | { \ | 2143 | 8.33k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 8.33k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 8.33k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 8.33k | } |
vp9dsp_8bpp.c:put_8tap_regular_32hv_c Line | Count | Source | 2141 | 27.8k | int h, int mx, int my) \ | 2142 | 27.8k | { \ | 2143 | 27.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 27.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 27.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 27.8k | } |
vp9dsp_8bpp.c:put_8tap_sharp_32hv_c Line | Count | Source | 2141 | 4.97k | int h, int mx, int my) \ | 2142 | 4.97k | { \ | 2143 | 4.97k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.97k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.97k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.97k | } |
vp9dsp_8bpp.c:put_8tap_smooth_16hv_c Line | Count | Source | 2141 | 14.1k | int h, int mx, int my) \ | 2142 | 14.1k | { \ | 2143 | 14.1k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 14.1k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 14.1k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 14.1k | } |
vp9dsp_8bpp.c:put_8tap_regular_16hv_c Line | Count | Source | 2141 | 51.3k | int h, int mx, int my) \ | 2142 | 51.3k | { \ | 2143 | 51.3k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 51.3k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 51.3k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 51.3k | } |
vp9dsp_8bpp.c:put_8tap_sharp_16hv_c Line | Count | Source | 2141 | 7.48k | int h, int mx, int my) \ | 2142 | 7.48k | { \ | 2143 | 7.48k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 7.48k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 7.48k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 7.48k | } |
vp9dsp_8bpp.c:put_8tap_smooth_8hv_c Line | Count | Source | 2141 | 46.9k | int h, int mx, int my) \ | 2142 | 46.9k | { \ | 2143 | 46.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 46.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 46.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 46.9k | } |
vp9dsp_8bpp.c:put_8tap_regular_8hv_c Line | Count | Source | 2141 | 231k | int h, int mx, int my) \ | 2142 | 231k | { \ | 2143 | 231k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 231k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 231k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 231k | } |
vp9dsp_8bpp.c:put_8tap_sharp_8hv_c Line | Count | Source | 2141 | 38.7k | int h, int mx, int my) \ | 2142 | 38.7k | { \ | 2143 | 38.7k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 38.7k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 38.7k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 38.7k | } |
vp9dsp_8bpp.c:put_8tap_smooth_4hv_c Line | Count | Source | 2141 | 98.9k | int h, int mx, int my) \ | 2142 | 98.9k | { \ | 2143 | 98.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 98.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 98.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 98.9k | } |
vp9dsp_8bpp.c:put_8tap_regular_4hv_c Line | Count | Source | 2141 | 575k | int h, int mx, int my) \ | 2142 | 575k | { \ | 2143 | 575k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 575k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 575k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 575k | } |
vp9dsp_8bpp.c:put_8tap_sharp_4hv_c Line | Count | Source | 2141 | 111k | int h, int mx, int my) \ | 2142 | 111k | { \ | 2143 | 111k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 111k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 111k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 111k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_64hv_c Line | Count | Source | 2141 | 881 | int h, int mx, int my) \ | 2142 | 881 | { \ | 2143 | 881 | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 881 | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 881 | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 881 | } |
vp9dsp_8bpp.c:avg_8tap_regular_64hv_c Line | Count | Source | 2141 | 1.51k | int h, int mx, int my) \ | 2142 | 1.51k | { \ | 2143 | 1.51k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.51k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.51k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.51k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_64hv_c Line | Count | Source | 2141 | 1.59k | int h, int mx, int my) \ | 2142 | 1.59k | { \ | 2143 | 1.59k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.59k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.59k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.59k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_32hv_c Line | Count | Source | 2141 | 1.36k | int h, int mx, int my) \ | 2142 | 1.36k | { \ | 2143 | 1.36k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.36k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.36k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.36k | } |
vp9dsp_8bpp.c:avg_8tap_regular_32hv_c Line | Count | Source | 2141 | 8.68k | int h, int mx, int my) \ | 2142 | 8.68k | { \ | 2143 | 8.68k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 8.68k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 8.68k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 8.68k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_32hv_c Line | Count | Source | 2141 | 1.79k | int h, int mx, int my) \ | 2142 | 1.79k | { \ | 2143 | 1.79k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 1.79k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 1.79k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 1.79k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_16hv_c Line | Count | Source | 2141 | 3.42k | int h, int mx, int my) \ | 2142 | 3.42k | { \ | 2143 | 3.42k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 3.42k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 3.42k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 3.42k | } |
vp9dsp_8bpp.c:avg_8tap_regular_16hv_c Line | Count | Source | 2141 | 18.8k | int h, int mx, int my) \ | 2142 | 18.8k | { \ | 2143 | 18.8k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 18.8k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 18.8k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 18.8k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_16hv_c Line | Count | Source | 2141 | 4.41k | int h, int mx, int my) \ | 2142 | 4.41k | { \ | 2143 | 4.41k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 4.41k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 4.41k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 4.41k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_8hv_c Line | Count | Source | 2141 | 22.9k | int h, int mx, int my) \ | 2142 | 22.9k | { \ | 2143 | 22.9k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 22.9k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 22.9k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 22.9k | } |
vp9dsp_8bpp.c:avg_8tap_regular_8hv_c Line | Count | Source | 2141 | 135k | int h, int mx, int my) \ | 2142 | 135k | { \ | 2143 | 135k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 135k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 135k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 135k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_8hv_c Line | Count | Source | 2141 | 19.2k | int h, int mx, int my) \ | 2142 | 19.2k | { \ | 2143 | 19.2k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 19.2k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 19.2k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 19.2k | } |
vp9dsp_8bpp.c:avg_8tap_smooth_4hv_c Line | Count | Source | 2141 | 101k | int h, int mx, int my) \ | 2142 | 101k | { \ | 2143 | 101k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 101k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 101k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 101k | } |
vp9dsp_8bpp.c:avg_8tap_regular_4hv_c Line | Count | Source | 2141 | 569k | int h, int mx, int my) \ | 2142 | 569k | { \ | 2143 | 569k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 569k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 569k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 569k | } |
vp9dsp_8bpp.c:avg_8tap_sharp_4hv_c Line | Count | Source | 2141 | 113k | int h, int mx, int my) \ | 2142 | 113k | { \ | 2143 | 113k | avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \ | 2144 | 113k | ff_vp9_subpel_filters[type_idx][mx], \ | 2145 | 113k | ff_vp9_subpel_filters[type_idx][my]); \ | 2146 | 113k | } |
|
2147 | | |
2148 | | #if BIT_DEPTH != 12 |
2149 | | |
2150 | | #define FILTER_BILIN(src, x, mxy, stride) \ |
2151 | 2.94G | (src[x] + ((mxy * (src[x + stride] - src[x]) + 8) >> 4)) |
2152 | | |
2153 | | static av_always_inline void do_bilin_1d_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2154 | | const uint8_t *_src, ptrdiff_t src_stride, |
2155 | | int w, int h, ptrdiff_t ds, int mxy, int avg) |
2156 | 10.3M | { |
2157 | 10.3M | pixel *dst = (pixel *) _dst; |
2158 | 10.3M | const pixel *src = (const pixel *) _src; |
2159 | | |
2160 | 10.3M | dst_stride /= sizeof(pixel); |
2161 | 10.3M | src_stride /= sizeof(pixel); |
2162 | 52.5M | do { |
2163 | 52.5M | int x; |
2164 | | |
2165 | 438M | for (x = 0; x < w; x++) |
2166 | 385M | if (avg) { |
2167 | 128M | dst[x] = (dst[x] + FILTER_BILIN(src, x, mxy, ds) + 1) >> 1; |
2168 | 257M | } else { |
2169 | 257M | dst[x] = FILTER_BILIN(src, x, mxy, ds); |
2170 | 257M | } |
2171 | | |
2172 | 52.5M | dst += dst_stride; |
2173 | 52.5M | src += src_stride; |
2174 | 52.5M | } while (--h); |
2175 | 10.3M | } vp9dsp_10bpp.c:do_bilin_1d_c Line | Count | Source | 2156 | 9.03M | { | 2157 | 9.03M | pixel *dst = (pixel *) _dst; | 2158 | 9.03M | const pixel *src = (const pixel *) _src; | 2159 | | | 2160 | 9.03M | dst_stride /= sizeof(pixel); | 2161 | 9.03M | src_stride /= sizeof(pixel); | 2162 | 45.0M | do { | 2163 | 45.0M | int x; | 2164 | | | 2165 | 355M | for (x = 0; x < w; x++) | 2166 | 310M | if (avg) { | 2167 | 107M | dst[x] = (dst[x] + FILTER_BILIN(src, x, mxy, ds) + 1) >> 1; | 2168 | 203M | } else { | 2169 | 203M | dst[x] = FILTER_BILIN(src, x, mxy, ds); | 2170 | 203M | } | 2171 | | | 2172 | 45.0M | dst += dst_stride; | 2173 | 45.0M | src += src_stride; | 2174 | 45.0M | } while (--h); | 2175 | 9.03M | } |
vp9dsp_8bpp.c:do_bilin_1d_c Line | Count | Source | 2156 | 1.32M | { | 2157 | 1.32M | pixel *dst = (pixel *) _dst; | 2158 | 1.32M | const pixel *src = (const pixel *) _src; | 2159 | | | 2160 | 1.32M | dst_stride /= sizeof(pixel); | 2161 | 1.32M | src_stride /= sizeof(pixel); | 2162 | 7.58M | do { | 2163 | 7.58M | int x; | 2164 | | | 2165 | 82.6M | for (x = 0; x < w; x++) | 2166 | 75.0M | if (avg) { | 2167 | 20.8M | dst[x] = (dst[x] + FILTER_BILIN(src, x, mxy, ds) + 1) >> 1; | 2168 | 54.2M | } else { | 2169 | 54.2M | dst[x] = FILTER_BILIN(src, x, mxy, ds); | 2170 | 54.2M | } | 2171 | | | 2172 | 7.58M | dst += dst_stride; | 2173 | 7.58M | src += src_stride; | 2174 | 7.58M | } while (--h); | 2175 | 1.32M | } |
|
2176 | | |
2177 | | #define bilin_1d_fn(opn, opa, dir, ds) \ |
2178 | | static av_noinline void opn##_bilin_1d_##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2179 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2180 | 10.3M | int w, int h, int mxy) \ |
2181 | 10.3M | { \ |
2182 | 10.3M | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ |
2183 | 10.3M | } vp9dsp_10bpp.c:put_bilin_1d_v_c Line | Count | Source | 2180 | 2.92M | int w, int h, int mxy) \ | 2181 | 2.92M | { \ | 2182 | 2.92M | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 2.92M | } |
vp9dsp_10bpp.c:put_bilin_1d_h_c Line | Count | Source | 2180 | 3.24M | int w, int h, int mxy) \ | 2181 | 3.24M | { \ | 2182 | 3.24M | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 3.24M | } |
vp9dsp_10bpp.c:avg_bilin_1d_v_c Line | Count | Source | 2180 | 1.34M | int w, int h, int mxy) \ | 2181 | 1.34M | { \ | 2182 | 1.34M | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 1.34M | } |
vp9dsp_10bpp.c:avg_bilin_1d_h_c Line | Count | Source | 2180 | 1.52M | int w, int h, int mxy) \ | 2181 | 1.52M | { \ | 2182 | 1.52M | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 1.52M | } |
vp9dsp_8bpp.c:put_bilin_1d_v_c Line | Count | Source | 2180 | 455k | int w, int h, int mxy) \ | 2181 | 455k | { \ | 2182 | 455k | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 455k | } |
vp9dsp_8bpp.c:put_bilin_1d_h_c Line | Count | Source | 2180 | 506k | int w, int h, int mxy) \ | 2181 | 506k | { \ | 2182 | 506k | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 506k | } |
vp9dsp_8bpp.c:avg_bilin_1d_v_c Line | Count | Source | 2180 | 185k | int w, int h, int mxy) \ | 2181 | 185k | { \ | 2182 | 185k | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 185k | } |
vp9dsp_8bpp.c:avg_bilin_1d_h_c Line | Count | Source | 2180 | 175k | int w, int h, int mxy) \ | 2181 | 175k | { \ | 2182 | 175k | do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \ | 2183 | 175k | } |
|
2184 | | |
2185 | | bilin_1d_fn(put, 0, v, src_stride / sizeof(pixel)) |
2186 | | bilin_1d_fn(put, 0, h, 1) |
2187 | | bilin_1d_fn(avg, 1, v, src_stride / sizeof(pixel)) |
2188 | | bilin_1d_fn(avg, 1, h, 1) |
2189 | | |
2190 | | #undef bilin_1d_fn |
2191 | | |
2192 | | static av_always_inline void do_bilin_2d_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2193 | | const uint8_t *_src, ptrdiff_t src_stride, |
2194 | | int w, int h, int mx, int my, int avg) |
2195 | 8.39M | { |
2196 | 8.39M | pixel tmp[64 * 65], *tmp_ptr = tmp; |
2197 | 8.39M | int tmp_h = h + 1; |
2198 | 8.39M | pixel *dst = (pixel *) _dst; |
2199 | 8.39M | const pixel *src = (const pixel *) _src; |
2200 | | |
2201 | 8.39M | dst_stride /= sizeof(pixel); |
2202 | 8.39M | src_stride /= sizeof(pixel); |
2203 | 52.0M | do { |
2204 | 52.0M | int x; |
2205 | | |
2206 | 414M | for (x = 0; x < w; x++) |
2207 | 362M | tmp_ptr[x] = FILTER_BILIN(src, x, mx, 1); |
2208 | | |
2209 | 52.0M | tmp_ptr += 64; |
2210 | 52.0M | src += src_stride; |
2211 | 52.0M | } while (--tmp_h); |
2212 | | |
2213 | 8.39M | tmp_ptr = tmp; |
2214 | 43.6M | do { |
2215 | 43.6M | int x; |
2216 | | |
2217 | 361M | for (x = 0; x < w; x++) |
2218 | 317M | if (avg) { |
2219 | 113M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; |
2220 | 204M | } else { |
2221 | 204M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); |
2222 | 204M | } |
2223 | | |
2224 | 43.6M | tmp_ptr += 64; |
2225 | 43.6M | dst += dst_stride; |
2226 | 43.6M | } while (--h); |
2227 | 8.39M | } vp9dsp_10bpp.c:do_bilin_2d_c Line | Count | Source | 2195 | 7.13M | { | 2196 | 7.13M | pixel tmp[64 * 65], *tmp_ptr = tmp; | 2197 | 7.13M | int tmp_h = h + 1; | 2198 | 7.13M | pixel *dst = (pixel *) _dst; | 2199 | 7.13M | const pixel *src = (const pixel *) _src; | 2200 | | | 2201 | 7.13M | dst_stride /= sizeof(pixel); | 2202 | 7.13M | src_stride /= sizeof(pixel); | 2203 | 43.8M | do { | 2204 | 43.8M | int x; | 2205 | | | 2206 | 343M | for (x = 0; x < w; x++) | 2207 | 300M | tmp_ptr[x] = FILTER_BILIN(src, x, mx, 1); | 2208 | | | 2209 | 43.8M | tmp_ptr += 64; | 2210 | 43.8M | src += src_stride; | 2211 | 43.8M | } while (--tmp_h); | 2212 | | | 2213 | 7.13M | tmp_ptr = tmp; | 2214 | 36.7M | do { | 2215 | 36.7M | int x; | 2216 | | | 2217 | 299M | for (x = 0; x < w; x++) | 2218 | 262M | if (avg) { | 2219 | 96.8M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; | 2220 | 165M | } else { | 2221 | 165M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); | 2222 | 165M | } | 2223 | | | 2224 | 36.7M | tmp_ptr += 64; | 2225 | 36.7M | dst += dst_stride; | 2226 | 36.7M | } while (--h); | 2227 | 7.13M | } |
vp9dsp_8bpp.c:do_bilin_2d_c Line | Count | Source | 2195 | 1.25M | { | 2196 | 1.25M | pixel tmp[64 * 65], *tmp_ptr = tmp; | 2197 | 1.25M | int tmp_h = h + 1; | 2198 | 1.25M | pixel *dst = (pixel *) _dst; | 2199 | 1.25M | const pixel *src = (const pixel *) _src; | 2200 | | | 2201 | 1.25M | dst_stride /= sizeof(pixel); | 2202 | 1.25M | src_stride /= sizeof(pixel); | 2203 | 8.12M | do { | 2204 | 8.12M | int x; | 2205 | | | 2206 | 70.5M | for (x = 0; x < w; x++) | 2207 | 62.3M | tmp_ptr[x] = FILTER_BILIN(src, x, mx, 1); | 2208 | | | 2209 | 8.12M | tmp_ptr += 64; | 2210 | 8.12M | src += src_stride; | 2211 | 8.12M | } while (--tmp_h); | 2212 | | | 2213 | 1.25M | tmp_ptr = tmp; | 2214 | 6.86M | do { | 2215 | 6.86M | int x; | 2216 | | | 2217 | 62.0M | for (x = 0; x < w; x++) | 2218 | 55.2M | if (avg) { | 2219 | 16.1M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; | 2220 | 39.0M | } else { | 2221 | 39.0M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); | 2222 | 39.0M | } | 2223 | | | 2224 | 6.86M | tmp_ptr += 64; | 2225 | 6.86M | dst += dst_stride; | 2226 | 6.86M | } while (--h); | 2227 | 1.25M | } |
|
2228 | | |
2229 | | #define bilin_2d_fn(opn, opa) \ |
2230 | | static av_noinline void opn##_bilin_2d_hv_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2231 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2232 | 8.39M | int w, int h, int mx, int my) \ |
2233 | 8.39M | { \ |
2234 | 8.39M | do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \ |
2235 | 8.39M | } vp9dsp_10bpp.c:put_bilin_2d_hv_c Line | Count | Source | 2232 | 4.70M | int w, int h, int mx, int my) \ | 2233 | 4.70M | { \ | 2234 | 4.70M | do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \ | 2235 | 4.70M | } |
vp9dsp_10bpp.c:avg_bilin_2d_hv_c Line | Count | Source | 2232 | 2.42M | int w, int h, int mx, int my) \ | 2233 | 2.42M | { \ | 2234 | 2.42M | do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \ | 2235 | 2.42M | } |
vp9dsp_8bpp.c:put_bilin_2d_hv_c Line | Count | Source | 2232 | 895k | int w, int h, int mx, int my) \ | 2233 | 895k | { \ | 2234 | 895k | do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \ | 2235 | 895k | } |
vp9dsp_8bpp.c:avg_bilin_2d_hv_c Line | Count | Source | 2232 | 364k | int w, int h, int mx, int my) \ | 2233 | 364k | { \ | 2234 | 364k | do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \ | 2235 | 364k | } |
|
2236 | | |
2237 | | bilin_2d_fn(put, 0) |
2238 | | bilin_2d_fn(avg, 1) |
2239 | | |
2240 | | #undef bilin_2d_fn |
2241 | | |
2242 | | #define bilinf_fn_1d(sz, dir, dir_m, avg) \ |
2243 | | static void avg##_bilin_##sz##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2244 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2245 | 10.3M | int h, int mx, int my) \ |
2246 | 10.3M | { \ |
2247 | 10.3M | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ |
2248 | 10.3M | } vp9dsp_10bpp.c:put_bilin_64v_c Line | Count | Source | 2245 | 2.86k | int h, int mx, int my) \ | 2246 | 2.86k | { \ | 2247 | 2.86k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.86k | } |
vp9dsp_10bpp.c:put_bilin_32v_c Line | Count | Source | 2245 | 15.9k | int h, int mx, int my) \ | 2246 | 15.9k | { \ | 2247 | 15.9k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 15.9k | } |
vp9dsp_10bpp.c:put_bilin_16v_c Line | Count | Source | 2245 | 31.7k | int h, int mx, int my) \ | 2246 | 31.7k | { \ | 2247 | 31.7k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 31.7k | } |
vp9dsp_10bpp.c:put_bilin_8v_c Line | Count | Source | 2245 | 579k | int h, int mx, int my) \ | 2246 | 579k | { \ | 2247 | 579k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 579k | } |
vp9dsp_10bpp.c:put_bilin_4v_c Line | Count | Source | 2245 | 2.29M | int h, int mx, int my) \ | 2246 | 2.29M | { \ | 2247 | 2.29M | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.29M | } |
vp9dsp_10bpp.c:put_bilin_64h_c Line | Count | Source | 2245 | 3.21k | int h, int mx, int my) \ | 2246 | 3.21k | { \ | 2247 | 3.21k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 3.21k | } |
vp9dsp_10bpp.c:put_bilin_32h_c Line | Count | Source | 2245 | 15.6k | int h, int mx, int my) \ | 2246 | 15.6k | { \ | 2247 | 15.6k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 15.6k | } |
vp9dsp_10bpp.c:put_bilin_16h_c Line | Count | Source | 2245 | 33.1k | int h, int mx, int my) \ | 2246 | 33.1k | { \ | 2247 | 33.1k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 33.1k | } |
vp9dsp_10bpp.c:put_bilin_8h_c Line | Count | Source | 2245 | 599k | int h, int mx, int my) \ | 2246 | 599k | { \ | 2247 | 599k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 599k | } |
vp9dsp_10bpp.c:put_bilin_4h_c Line | Count | Source | 2245 | 2.58M | int h, int mx, int my) \ | 2246 | 2.58M | { \ | 2247 | 2.58M | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.58M | } |
vp9dsp_10bpp.c:avg_bilin_64v_c Line | Count | Source | 2245 | 1.78k | int h, int mx, int my) \ | 2246 | 1.78k | { \ | 2247 | 1.78k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 1.78k | } |
vp9dsp_10bpp.c:avg_bilin_32v_c Line | Count | Source | 2245 | 8.89k | int h, int mx, int my) \ | 2246 | 8.89k | { \ | 2247 | 8.89k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 8.89k | } |
vp9dsp_10bpp.c:avg_bilin_16v_c Line | Count | Source | 2245 | 21.6k | int h, int mx, int my) \ | 2246 | 21.6k | { \ | 2247 | 21.6k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 21.6k | } |
vp9dsp_10bpp.c:avg_bilin_8v_c Line | Count | Source | 2245 | 317k | int h, int mx, int my) \ | 2246 | 317k | { \ | 2247 | 317k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 317k | } |
vp9dsp_10bpp.c:avg_bilin_4v_c Line | Count | Source | 2245 | 991k | int h, int mx, int my) \ | 2246 | 991k | { \ | 2247 | 991k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 991k | } |
vp9dsp_10bpp.c:avg_bilin_64h_c Line | Count | Source | 2245 | 1.72k | int h, int mx, int my) \ | 2246 | 1.72k | { \ | 2247 | 1.72k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 1.72k | } |
vp9dsp_10bpp.c:avg_bilin_32h_c Line | Count | Source | 2245 | 8.77k | int h, int mx, int my) \ | 2246 | 8.77k | { \ | 2247 | 8.77k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 8.77k | } |
vp9dsp_10bpp.c:avg_bilin_16h_c Line | Count | Source | 2245 | 20.6k | int h, int mx, int my) \ | 2246 | 20.6k | { \ | 2247 | 20.6k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 20.6k | } |
vp9dsp_10bpp.c:avg_bilin_8h_c Line | Count | Source | 2245 | 364k | int h, int mx, int my) \ | 2246 | 364k | { \ | 2247 | 364k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 364k | } |
vp9dsp_10bpp.c:avg_bilin_4h_c Line | Count | Source | 2245 | 1.13M | int h, int mx, int my) \ | 2246 | 1.13M | { \ | 2247 | 1.13M | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 1.13M | } |
vp9dsp_8bpp.c:put_bilin_64v_c Line | Count | Source | 2245 | 2.55k | int h, int mx, int my) \ | 2246 | 2.55k | { \ | 2247 | 2.55k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.55k | } |
vp9dsp_8bpp.c:put_bilin_32v_c Line | Count | Source | 2245 | 5.09k | int h, int mx, int my) \ | 2246 | 5.09k | { \ | 2247 | 5.09k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 5.09k | } |
vp9dsp_8bpp.c:put_bilin_16v_c Line | Count | Source | 2245 | 9.62k | int h, int mx, int my) \ | 2246 | 9.62k | { \ | 2247 | 9.62k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 9.62k | } |
vp9dsp_8bpp.c:put_bilin_8v_c Line | Count | Source | 2245 | 93.7k | int h, int mx, int my) \ | 2246 | 93.7k | { \ | 2247 | 93.7k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 93.7k | } |
vp9dsp_8bpp.c:put_bilin_4v_c Line | Count | Source | 2245 | 344k | int h, int mx, int my) \ | 2246 | 344k | { \ | 2247 | 344k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 344k | } |
vp9dsp_8bpp.c:put_bilin_64h_c Line | Count | Source | 2245 | 5.20k | int h, int mx, int my) \ | 2246 | 5.20k | { \ | 2247 | 5.20k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 5.20k | } |
vp9dsp_8bpp.c:put_bilin_32h_c Line | Count | Source | 2245 | 9.16k | int h, int mx, int my) \ | 2246 | 9.16k | { \ | 2247 | 9.16k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 9.16k | } |
vp9dsp_8bpp.c:put_bilin_16h_c Line | Count | Source | 2245 | 10.8k | int h, int mx, int my) \ | 2246 | 10.8k | { \ | 2247 | 10.8k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 10.8k | } |
vp9dsp_8bpp.c:put_bilin_8h_c Line | Count | Source | 2245 | 109k | int h, int mx, int my) \ | 2246 | 109k | { \ | 2247 | 109k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 109k | } |
vp9dsp_8bpp.c:put_bilin_4h_c Line | Count | Source | 2245 | 371k | int h, int mx, int my) \ | 2246 | 371k | { \ | 2247 | 371k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 371k | } |
vp9dsp_8bpp.c:avg_bilin_64v_c Line | Count | Source | 2245 | 1.43k | int h, int mx, int my) \ | 2246 | 1.43k | { \ | 2247 | 1.43k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 1.43k | } |
vp9dsp_8bpp.c:avg_bilin_32v_c Line | Count | Source | 2245 | 2.81k | int h, int mx, int my) \ | 2246 | 2.81k | { \ | 2247 | 2.81k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.81k | } |
vp9dsp_8bpp.c:avg_bilin_16v_c Line | Count | Source | 2245 | 5.70k | int h, int mx, int my) \ | 2246 | 5.70k | { \ | 2247 | 5.70k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 5.70k | } |
vp9dsp_8bpp.c:avg_bilin_8v_c Line | Count | Source | 2245 | 43.0k | int h, int mx, int my) \ | 2246 | 43.0k | { \ | 2247 | 43.0k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 43.0k | } |
vp9dsp_8bpp.c:avg_bilin_4v_c Line | Count | Source | 2245 | 132k | int h, int mx, int my) \ | 2246 | 132k | { \ | 2247 | 132k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 132k | } |
vp9dsp_8bpp.c:avg_bilin_64h_c Line | Count | Source | 2245 | 1.23k | int h, int mx, int my) \ | 2246 | 1.23k | { \ | 2247 | 1.23k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 1.23k | } |
vp9dsp_8bpp.c:avg_bilin_32h_c Line | Count | Source | 2245 | 2.66k | int h, int mx, int my) \ | 2246 | 2.66k | { \ | 2247 | 2.66k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 2.66k | } |
vp9dsp_8bpp.c:avg_bilin_16h_c Line | Count | Source | 2245 | 6.08k | int h, int mx, int my) \ | 2246 | 6.08k | { \ | 2247 | 6.08k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 6.08k | } |
vp9dsp_8bpp.c:avg_bilin_8h_c Line | Count | Source | 2245 | 41.6k | int h, int mx, int my) \ | 2246 | 41.6k | { \ | 2247 | 41.6k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 41.6k | } |
vp9dsp_8bpp.c:avg_bilin_4h_c Line | Count | Source | 2245 | 123k | int h, int mx, int my) \ | 2246 | 123k | { \ | 2247 | 123k | avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \ | 2248 | 123k | } |
|
2249 | | |
2250 | | #define bilinf_fn_2d(sz, avg) \ |
2251 | | static void avg##_bilin_##sz##hv_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2252 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2253 | 8.39M | int h, int mx, int my) \ |
2254 | 8.39M | { \ |
2255 | 8.39M | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ |
2256 | 8.39M | } vp9dsp_10bpp.c:put_bilin_64hv_c Line | Count | Source | 2253 | 4.62k | int h, int mx, int my) \ | 2254 | 4.62k | { \ | 2255 | 4.62k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 4.62k | } |
vp9dsp_10bpp.c:put_bilin_32hv_c Line | Count | Source | 2253 | 29.3k | int h, int mx, int my) \ | 2254 | 29.3k | { \ | 2255 | 29.3k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 29.3k | } |
vp9dsp_10bpp.c:put_bilin_16hv_c Line | Count | Source | 2253 | 75.2k | int h, int mx, int my) \ | 2254 | 75.2k | { \ | 2255 | 75.2k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 75.2k | } |
vp9dsp_10bpp.c:put_bilin_8hv_c Line | Count | Source | 2253 | 910k | int h, int mx, int my) \ | 2254 | 910k | { \ | 2255 | 910k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 910k | } |
vp9dsp_10bpp.c:put_bilin_4hv_c Line | Count | Source | 2253 | 3.68M | int h, int mx, int my) \ | 2254 | 3.68M | { \ | 2255 | 3.68M | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 3.68M | } |
vp9dsp_10bpp.c:avg_bilin_64hv_c Line | Count | Source | 2253 | 2.71k | int h, int mx, int my) \ | 2254 | 2.71k | { \ | 2255 | 2.71k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 2.71k | } |
vp9dsp_10bpp.c:avg_bilin_32hv_c Line | Count | Source | 2253 | 19.5k | int h, int mx, int my) \ | 2254 | 19.5k | { \ | 2255 | 19.5k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 19.5k | } |
vp9dsp_10bpp.c:avg_bilin_16hv_c Line | Count | Source | 2253 | 49.2k | int h, int mx, int my) \ | 2254 | 49.2k | { \ | 2255 | 49.2k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 49.2k | } |
vp9dsp_10bpp.c:avg_bilin_8hv_c Line | Count | Source | 2253 | 571k | int h, int mx, int my) \ | 2254 | 571k | { \ | 2255 | 571k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 571k | } |
vp9dsp_10bpp.c:avg_bilin_4hv_c Line | Count | Source | 2253 | 1.78M | int h, int mx, int my) \ | 2254 | 1.78M | { \ | 2255 | 1.78M | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 1.78M | } |
vp9dsp_8bpp.c:put_bilin_64hv_c Line | Count | Source | 2253 | 3.23k | int h, int mx, int my) \ | 2254 | 3.23k | { \ | 2255 | 3.23k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 3.23k | } |
vp9dsp_8bpp.c:put_bilin_32hv_c Line | Count | Source | 2253 | 10.3k | int h, int mx, int my) \ | 2254 | 10.3k | { \ | 2255 | 10.3k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 10.3k | } |
vp9dsp_8bpp.c:put_bilin_16hv_c Line | Count | Source | 2253 | 22.2k | int h, int mx, int my) \ | 2254 | 22.2k | { \ | 2255 | 22.2k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 22.2k | } |
vp9dsp_8bpp.c:put_bilin_8hv_c Line | Count | Source | 2253 | 168k | int h, int mx, int my) \ | 2254 | 168k | { \ | 2255 | 168k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 168k | } |
vp9dsp_8bpp.c:put_bilin_4hv_c Line | Count | Source | 2253 | 690k | int h, int mx, int my) \ | 2254 | 690k | { \ | 2255 | 690k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 690k | } |
vp9dsp_8bpp.c:avg_bilin_64hv_c Line | Count | Source | 2253 | 892 | int h, int mx, int my) \ | 2254 | 892 | { \ | 2255 | 892 | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 892 | } |
vp9dsp_8bpp.c:avg_bilin_32hv_c Line | Count | Source | 2253 | 4.79k | int h, int mx, int my) \ | 2254 | 4.79k | { \ | 2255 | 4.79k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 4.79k | } |
vp9dsp_8bpp.c:avg_bilin_16hv_c Line | Count | Source | 2253 | 13.5k | int h, int mx, int my) \ | 2254 | 13.5k | { \ | 2255 | 13.5k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 13.5k | } |
vp9dsp_8bpp.c:avg_bilin_8hv_c Line | Count | Source | 2253 | 85.2k | int h, int mx, int my) \ | 2254 | 85.2k | { \ | 2255 | 85.2k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 85.2k | } |
vp9dsp_8bpp.c:avg_bilin_4hv_c Line | Count | Source | 2253 | 260k | int h, int mx, int my) \ | 2254 | 260k | { \ | 2255 | 260k | avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \ | 2256 | 260k | } |
|
2257 | | |
2258 | | #else |
2259 | | |
2260 | | #define bilinf_fn_1d(a, b, c, d) |
2261 | | #define bilinf_fn_2d(a, b) |
2262 | | |
2263 | | #endif |
2264 | | |
2265 | | #define filter_fn(sz, avg) \ |
2266 | | filter_fn_1d(sz, h, mx, regular, FILTER_8TAP_REGULAR, avg) \ |
2267 | | filter_fn_1d(sz, v, my, regular, FILTER_8TAP_REGULAR, avg) \ |
2268 | | filter_fn_2d(sz, regular, FILTER_8TAP_REGULAR, avg) \ |
2269 | | filter_fn_1d(sz, h, mx, smooth, FILTER_8TAP_SMOOTH, avg) \ |
2270 | | filter_fn_1d(sz, v, my, smooth, FILTER_8TAP_SMOOTH, avg) \ |
2271 | | filter_fn_2d(sz, smooth, FILTER_8TAP_SMOOTH, avg) \ |
2272 | | filter_fn_1d(sz, h, mx, sharp, FILTER_8TAP_SHARP, avg) \ |
2273 | | filter_fn_1d(sz, v, my, sharp, FILTER_8TAP_SHARP, avg) \ |
2274 | | filter_fn_2d(sz, sharp, FILTER_8TAP_SHARP, avg) \ |
2275 | | bilinf_fn_1d(sz, h, mx, avg) \ |
2276 | | bilinf_fn_1d(sz, v, my, avg) \ |
2277 | | bilinf_fn_2d(sz, avg) |
2278 | | |
2279 | | #define filter_fn_set(avg) \ |
2280 | | filter_fn(64, avg) \ |
2281 | | filter_fn(32, avg) \ |
2282 | | filter_fn(16, avg) \ |
2283 | | filter_fn(8, avg) \ |
2284 | | filter_fn(4, avg) |
2285 | | |
2286 | | filter_fn_set(put) |
2287 | | filter_fn_set(avg) |
2288 | | |
2289 | | #undef filter_fn |
2290 | | #undef filter_fn_set |
2291 | | #undef filter_fn_1d |
2292 | | #undef filter_fn_2d |
2293 | | #undef bilinf_fn_1d |
2294 | | #undef bilinf_fn_2d |
2295 | | |
2296 | | #if BIT_DEPTH != 8 |
2297 | | void ff_vp9dsp_mc_init_10(VP9DSPContext *dsp); |
2298 | | #endif |
2299 | | #if BIT_DEPTH != 10 |
2300 | | static |
2301 | | #endif |
2302 | | av_cold void FUNC(ff_vp9dsp_mc_init)(VP9DSPContext *dsp) |
2303 | 19.8k | { |
2304 | | #if BIT_DEPTH == 12 |
2305 | | ff_vp9dsp_mc_init_10(dsp); |
2306 | | #else /* BIT_DEPTH == 12 */ |
2307 | | |
2308 | | #define init_fpel(idx1, idx2, sz, type) \ |
2309 | 152k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = type##sz##_c; \ |
2310 | 152k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = type##sz##_c; \ |
2311 | 152k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = type##sz##_c; \ |
2312 | 152k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = type##sz##_c |
2313 | | |
2314 | | #define init_copy_avg(idx, sz) \ |
2315 | 76.2k | init_fpel(idx, 0, sz, copy); \ |
2316 | 76.2k | init_fpel(idx, 1, sz, avg) |
2317 | | |
2318 | 15.2k | init_copy_avg(0, 64); |
2319 | 15.2k | init_copy_avg(1, 32); |
2320 | 15.2k | init_copy_avg(2, 16); |
2321 | 15.2k | init_copy_avg(3, 8); |
2322 | 15.2k | init_copy_avg(4, 4); |
2323 | | |
2324 | | #undef init_copy_avg |
2325 | | #undef init_fpel |
2326 | | |
2327 | | #endif /* BIT_DEPTH == 12 */ |
2328 | | |
2329 | 19.8k | #define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type) \ |
2330 | 594k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][idxh][idxv] = type##_8tap_smooth_##sz##dir##_c; \ |
2331 | 594k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][idxh][idxv] = type##_8tap_regular_##sz##dir##_c; \ |
2332 | 594k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][idxh][idxv] = type##_8tap_sharp_##sz##dir##_c |
2333 | | |
2334 | | #if BIT_DEPTH == 12 |
2335 | 137k | #define init_subpel1 init_subpel1_bd_aware |
2336 | | #else |
2337 | | #define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type) \ |
2338 | 457k | init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type); \ |
2339 | 457k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][idxh][idxv] = type##_bilin_##sz##dir##_c |
2340 | | #endif |
2341 | | |
2342 | 19.8k | #define init_subpel2(idx, idxh, idxv, dir, type) \ |
2343 | 118k | init_subpel1(0, idx, idxh, idxv, 64, dir, type); \ |
2344 | 118k | init_subpel1(1, idx, idxh, idxv, 32, dir, type); \ |
2345 | 118k | init_subpel1(2, idx, idxh, idxv, 16, dir, type); \ |
2346 | 118k | init_subpel1(3, idx, idxh, idxv, 8, dir, type); \ |
2347 | 118k | init_subpel1(4, idx, idxh, idxv, 4, dir, type) |
2348 | | |
2349 | 19.8k | #define init_subpel3(idx, type) \ |
2350 | 39.6k | init_subpel2(idx, 1, 1, hv, type); \ |
2351 | 39.6k | init_subpel2(idx, 0, 1, v, type); \ |
2352 | 39.6k | init_subpel2(idx, 1, 0, h, type) |
2353 | | |
2354 | 19.8k | init_subpel3(0, put); |
2355 | 19.8k | init_subpel3(1, avg); |
2356 | | |
2357 | 19.8k | #undef init_subpel1 |
2358 | 19.8k | #undef init_subpel2 |
2359 | 19.8k | #undef init_subpel3 |
2360 | 19.8k | #undef init_subpel1_bd_aware |
2361 | 19.8k | } Line | Count | Source | 2303 | 8.67k | { | 2304 | | #if BIT_DEPTH == 12 | 2305 | | ff_vp9dsp_mc_init_10(dsp); | 2306 | | #else /* BIT_DEPTH == 12 */ | 2307 | | | 2308 | 8.67k | #define init_fpel(idx1, idx2, sz, type) \ | 2309 | 8.67k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = type##sz##_c; \ | 2310 | 8.67k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = type##sz##_c; \ | 2311 | 8.67k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = type##sz##_c; \ | 2312 | 8.67k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = type##sz##_c | 2313 | | | 2314 | 8.67k | #define init_copy_avg(idx, sz) \ | 2315 | 8.67k | init_fpel(idx, 0, sz, copy); \ | 2316 | 8.67k | init_fpel(idx, 1, sz, avg) | 2317 | | | 2318 | 8.67k | init_copy_avg(0, 64); | 2319 | 8.67k | init_copy_avg(1, 32); | 2320 | 8.67k | init_copy_avg(2, 16); | 2321 | 8.67k | init_copy_avg(3, 8); | 2322 | 8.67k | init_copy_avg(4, 4); | 2323 | | | 2324 | 8.67k | #undef init_copy_avg | 2325 | 8.67k | #undef init_fpel | 2326 | | | 2327 | 8.67k | #endif /* BIT_DEPTH == 12 */ | 2328 | | | 2329 | 8.67k | #define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2330 | 8.67k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][idxh][idxv] = type##_8tap_smooth_##sz##dir##_c; \ | 2331 | 8.67k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][idxh][idxv] = type##_8tap_regular_##sz##dir##_c; \ | 2332 | 8.67k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][idxh][idxv] = type##_8tap_sharp_##sz##dir##_c | 2333 | | | 2334 | | #if BIT_DEPTH == 12 | 2335 | | #define init_subpel1 init_subpel1_bd_aware | 2336 | | #else | 2337 | 8.67k | #define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2338 | 8.67k | init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type); \ | 2339 | 8.67k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][idxh][idxv] = type##_bilin_##sz##dir##_c | 2340 | 8.67k | #endif | 2341 | | | 2342 | 8.67k | #define init_subpel2(idx, idxh, idxv, dir, type) \ | 2343 | 8.67k | init_subpel1(0, idx, idxh, idxv, 64, dir, type); \ | 2344 | 8.67k | init_subpel1(1, idx, idxh, idxv, 32, dir, type); \ | 2345 | 8.67k | init_subpel1(2, idx, idxh, idxv, 16, dir, type); \ | 2346 | 8.67k | init_subpel1(3, idx, idxh, idxv, 8, dir, type); \ | 2347 | 8.67k | init_subpel1(4, idx, idxh, idxv, 4, dir, type) | 2348 | | | 2349 | 8.67k | #define init_subpel3(idx, type) \ | 2350 | 8.67k | init_subpel2(idx, 1, 1, hv, type); \ | 2351 | 8.67k | init_subpel2(idx, 0, 1, v, type); \ | 2352 | 8.67k | init_subpel2(idx, 1, 0, h, type) | 2353 | | | 2354 | 8.67k | init_subpel3(0, put); | 2355 | 8.67k | init_subpel3(1, avg); | 2356 | | | 2357 | 8.67k | #undef init_subpel1 | 2358 | 8.67k | #undef init_subpel2 | 2359 | 8.67k | #undef init_subpel3 | 2360 | 8.67k | #undef init_subpel1_bd_aware | 2361 | 8.67k | } |
vp9dsp_12bpp.c:ff_vp9dsp_mc_init_12 Line | Count | Source | 2303 | 4.57k | { | 2304 | 4.57k | #if BIT_DEPTH == 12 | 2305 | 4.57k | ff_vp9dsp_mc_init_10(dsp); | 2306 | | #else /* BIT_DEPTH == 12 */ | 2307 | | | 2308 | | #define init_fpel(idx1, idx2, sz, type) \ | 2309 | | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = type##sz##_c; \ | 2310 | | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = type##sz##_c; \ | 2311 | | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = type##sz##_c; \ | 2312 | | dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = type##sz##_c | 2313 | | | 2314 | | #define init_copy_avg(idx, sz) \ | 2315 | | init_fpel(idx, 0, sz, copy); \ | 2316 | | init_fpel(idx, 1, sz, avg) | 2317 | | | 2318 | | init_copy_avg(0, 64); | 2319 | | init_copy_avg(1, 32); | 2320 | | init_copy_avg(2, 16); | 2321 | | init_copy_avg(3, 8); | 2322 | | init_copy_avg(4, 4); | 2323 | | | 2324 | | #undef init_copy_avg | 2325 | | #undef init_fpel | 2326 | | | 2327 | | #endif /* BIT_DEPTH == 12 */ | 2328 | | | 2329 | 4.57k | #define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2330 | 4.57k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][idxh][idxv] = type##_8tap_smooth_##sz##dir##_c; \ | 2331 | 4.57k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][idxh][idxv] = type##_8tap_regular_##sz##dir##_c; \ | 2332 | 4.57k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][idxh][idxv] = type##_8tap_sharp_##sz##dir##_c | 2333 | | | 2334 | 4.57k | #if BIT_DEPTH == 12 | 2335 | 4.57k | #define init_subpel1 init_subpel1_bd_aware | 2336 | | #else | 2337 | | #define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2338 | | init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type); \ | 2339 | | dsp->mc[idx1][FILTER_BILINEAR ][idx2][idxh][idxv] = type##_bilin_##sz##dir##_c | 2340 | | #endif | 2341 | | | 2342 | 4.57k | #define init_subpel2(idx, idxh, idxv, dir, type) \ | 2343 | 4.57k | init_subpel1(0, idx, idxh, idxv, 64, dir, type); \ | 2344 | 4.57k | init_subpel1(1, idx, idxh, idxv, 32, dir, type); \ | 2345 | 4.57k | init_subpel1(2, idx, idxh, idxv, 16, dir, type); \ | 2346 | 4.57k | init_subpel1(3, idx, idxh, idxv, 8, dir, type); \ | 2347 | 4.57k | init_subpel1(4, idx, idxh, idxv, 4, dir, type) | 2348 | | | 2349 | 4.57k | #define init_subpel3(idx, type) \ | 2350 | 4.57k | init_subpel2(idx, 1, 1, hv, type); \ | 2351 | 4.57k | init_subpel2(idx, 0, 1, v, type); \ | 2352 | 4.57k | init_subpel2(idx, 1, 0, h, type) | 2353 | | | 2354 | 4.57k | init_subpel3(0, put); | 2355 | 4.57k | init_subpel3(1, avg); | 2356 | | | 2357 | 4.57k | #undef init_subpel1 | 2358 | 4.57k | #undef init_subpel2 | 2359 | 4.57k | #undef init_subpel3 | 2360 | 4.57k | #undef init_subpel1_bd_aware | 2361 | 4.57k | } |
vp9dsp_8bpp.c:ff_vp9dsp_mc_init_8 Line | Count | Source | 2303 | 6.58k | { | 2304 | | #if BIT_DEPTH == 12 | 2305 | | ff_vp9dsp_mc_init_10(dsp); | 2306 | | #else /* BIT_DEPTH == 12 */ | 2307 | | | 2308 | 6.58k | #define init_fpel(idx1, idx2, sz, type) \ | 2309 | 6.58k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = type##sz##_c; \ | 2310 | 6.58k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = type##sz##_c; \ | 2311 | 6.58k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = type##sz##_c; \ | 2312 | 6.58k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = type##sz##_c | 2313 | | | 2314 | 6.58k | #define init_copy_avg(idx, sz) \ | 2315 | 6.58k | init_fpel(idx, 0, sz, copy); \ | 2316 | 6.58k | init_fpel(idx, 1, sz, avg) | 2317 | | | 2318 | 6.58k | init_copy_avg(0, 64); | 2319 | 6.58k | init_copy_avg(1, 32); | 2320 | 6.58k | init_copy_avg(2, 16); | 2321 | 6.58k | init_copy_avg(3, 8); | 2322 | 6.58k | init_copy_avg(4, 4); | 2323 | | | 2324 | 6.58k | #undef init_copy_avg | 2325 | 6.58k | #undef init_fpel | 2326 | | | 2327 | 6.58k | #endif /* BIT_DEPTH == 12 */ | 2328 | | | 2329 | 6.58k | #define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2330 | 6.58k | dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][idxh][idxv] = type##_8tap_smooth_##sz##dir##_c; \ | 2331 | 6.58k | dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][idxh][idxv] = type##_8tap_regular_##sz##dir##_c; \ | 2332 | 6.58k | dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][idxh][idxv] = type##_8tap_sharp_##sz##dir##_c | 2333 | | | 2334 | | #if BIT_DEPTH == 12 | 2335 | | #define init_subpel1 init_subpel1_bd_aware | 2336 | | #else | 2337 | 6.58k | #define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type) \ | 2338 | 6.58k | init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type); \ | 2339 | 6.58k | dsp->mc[idx1][FILTER_BILINEAR ][idx2][idxh][idxv] = type##_bilin_##sz##dir##_c | 2340 | 6.58k | #endif | 2341 | | | 2342 | 6.58k | #define init_subpel2(idx, idxh, idxv, dir, type) \ | 2343 | 6.58k | init_subpel1(0, idx, idxh, idxv, 64, dir, type); \ | 2344 | 6.58k | init_subpel1(1, idx, idxh, idxv, 32, dir, type); \ | 2345 | 6.58k | init_subpel1(2, idx, idxh, idxv, 16, dir, type); \ | 2346 | 6.58k | init_subpel1(3, idx, idxh, idxv, 8, dir, type); \ | 2347 | 6.58k | init_subpel1(4, idx, idxh, idxv, 4, dir, type) | 2348 | | | 2349 | 6.58k | #define init_subpel3(idx, type) \ | 2350 | 6.58k | init_subpel2(idx, 1, 1, hv, type); \ | 2351 | 6.58k | init_subpel2(idx, 0, 1, v, type); \ | 2352 | 6.58k | init_subpel2(idx, 1, 0, h, type) | 2353 | | | 2354 | 6.58k | init_subpel3(0, put); | 2355 | 6.58k | init_subpel3(1, avg); | 2356 | | | 2357 | 6.58k | #undef init_subpel1 | 2358 | 6.58k | #undef init_subpel2 | 2359 | 6.58k | #undef init_subpel3 | 2360 | 6.58k | #undef init_subpel1_bd_aware | 2361 | 6.58k | } |
|
2362 | | |
2363 | | static av_always_inline void do_scaled_8tap_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2364 | | const uint8_t *_src, ptrdiff_t src_stride, |
2365 | | int w, int h, int mx, int my, |
2366 | | int dx, int dy, int avg, |
2367 | | const int16_t (*filters)[8]) |
2368 | 17.6M | { |
2369 | 17.6M | int tmp_h = (((h - 1) * dy + my) >> 4) + 8; |
2370 | 17.6M | pixel tmp[64 * 135], *tmp_ptr = tmp; |
2371 | 17.6M | pixel *dst = (pixel *) _dst; |
2372 | 17.6M | const pixel *src = (const pixel *) _src; |
2373 | | |
2374 | 17.6M | dst_stride /= sizeof(pixel); |
2375 | 17.6M | src_stride /= sizeof(pixel); |
2376 | 17.6M | src -= src_stride * 3; |
2377 | 202M | do { |
2378 | 202M | int x; |
2379 | 202M | int imx = mx, ioff = 0; |
2380 | | |
2381 | 3.18G | for (x = 0; x < w; x++) { |
2382 | 2.98G | tmp_ptr[x] = FILTER_8TAP(src, ioff, filters[imx], 1); |
2383 | 2.98G | imx += dx; |
2384 | 2.98G | ioff += imx >> 4; |
2385 | 2.98G | imx &= 0xf; |
2386 | 2.98G | } |
2387 | | |
2388 | 202M | tmp_ptr += 64; |
2389 | 202M | src += src_stride; |
2390 | 202M | } while (--tmp_h); |
2391 | | |
2392 | 17.6M | tmp_ptr = tmp + 64 * 3; |
2393 | 166M | do { |
2394 | 166M | int x; |
2395 | 166M | const int16_t *filter = filters[my]; |
2396 | | |
2397 | 3.95G | for (x = 0; x < w; x++) |
2398 | 3.79G | if (avg) { |
2399 | 1.16G | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filter, 64) + 1) >> 1; |
2400 | 2.62G | } else { |
2401 | 2.62G | dst[x] = FILTER_8TAP(tmp_ptr, x, filter, 64); |
2402 | 2.62G | } |
2403 | | |
2404 | 166M | my += dy; |
2405 | 166M | tmp_ptr += (my >> 4) * 64; |
2406 | 166M | my &= 0xf; |
2407 | 166M | dst += dst_stride; |
2408 | 166M | } while (--h); |
2409 | 17.6M | } vp9dsp_10bpp.c:do_scaled_8tap_c Line | Count | Source | 2368 | 2.95M | { | 2369 | 2.95M | int tmp_h = (((h - 1) * dy + my) >> 4) + 8; | 2370 | 2.95M | pixel tmp[64 * 135], *tmp_ptr = tmp; | 2371 | 2.95M | pixel *dst = (pixel *) _dst; | 2372 | 2.95M | const pixel *src = (const pixel *) _src; | 2373 | | | 2374 | 2.95M | dst_stride /= sizeof(pixel); | 2375 | 2.95M | src_stride /= sizeof(pixel); | 2376 | 2.95M | src -= src_stride * 3; | 2377 | 28.2M | do { | 2378 | 28.2M | int x; | 2379 | 28.2M | int imx = mx, ioff = 0; | 2380 | | | 2381 | 425M | for (x = 0; x < w; x++) { | 2382 | 397M | tmp_ptr[x] = FILTER_8TAP(src, ioff, filters[imx], 1); | 2383 | 397M | imx += dx; | 2384 | 397M | ioff += imx >> 4; | 2385 | 397M | imx &= 0xf; | 2386 | 397M | } | 2387 | | | 2388 | 28.2M | tmp_ptr += 64; | 2389 | 28.2M | src += src_stride; | 2390 | 28.2M | } while (--tmp_h); | 2391 | | | 2392 | 2.95M | tmp_ptr = tmp + 64 * 3; | 2393 | 31.6M | do { | 2394 | 31.6M | int x; | 2395 | 31.6M | const int16_t *filter = filters[my]; | 2396 | | | 2397 | 816M | for (x = 0; x < w; x++) | 2398 | 784M | if (avg) { | 2399 | 205M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filter, 64) + 1) >> 1; | 2400 | 578M | } else { | 2401 | 578M | dst[x] = FILTER_8TAP(tmp_ptr, x, filter, 64); | 2402 | 578M | } | 2403 | | | 2404 | 31.6M | my += dy; | 2405 | 31.6M | tmp_ptr += (my >> 4) * 64; | 2406 | 31.6M | my &= 0xf; | 2407 | 31.6M | dst += dst_stride; | 2408 | 31.6M | } while (--h); | 2409 | 2.95M | } |
vp9dsp_12bpp.c:do_scaled_8tap_c Line | Count | Source | 2368 | 2.93M | { | 2369 | 2.93M | int tmp_h = (((h - 1) * dy + my) >> 4) + 8; | 2370 | 2.93M | pixel tmp[64 * 135], *tmp_ptr = tmp; | 2371 | 2.93M | pixel *dst = (pixel *) _dst; | 2372 | 2.93M | const pixel *src = (const pixel *) _src; | 2373 | | | 2374 | 2.93M | dst_stride /= sizeof(pixel); | 2375 | 2.93M | src_stride /= sizeof(pixel); | 2376 | 2.93M | src -= src_stride * 3; | 2377 | 33.1M | do { | 2378 | 33.1M | int x; | 2379 | 33.1M | int imx = mx, ioff = 0; | 2380 | | | 2381 | 507M | for (x = 0; x < w; x++) { | 2382 | 474M | tmp_ptr[x] = FILTER_8TAP(src, ioff, filters[imx], 1); | 2383 | 474M | imx += dx; | 2384 | 474M | ioff += imx >> 4; | 2385 | 474M | imx &= 0xf; | 2386 | 474M | } | 2387 | | | 2388 | 33.1M | tmp_ptr += 64; | 2389 | 33.1M | src += src_stride; | 2390 | 33.1M | } while (--tmp_h); | 2391 | | | 2392 | 2.93M | tmp_ptr = tmp + 64 * 3; | 2393 | 32.9M | do { | 2394 | 32.9M | int x; | 2395 | 32.9M | const int16_t *filter = filters[my]; | 2396 | | | 2397 | 827M | for (x = 0; x < w; x++) | 2398 | 794M | if (avg) { | 2399 | 256M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filter, 64) + 1) >> 1; | 2400 | 537M | } else { | 2401 | 537M | dst[x] = FILTER_8TAP(tmp_ptr, x, filter, 64); | 2402 | 537M | } | 2403 | | | 2404 | 32.9M | my += dy; | 2405 | 32.9M | tmp_ptr += (my >> 4) * 64; | 2406 | 32.9M | my &= 0xf; | 2407 | 32.9M | dst += dst_stride; | 2408 | 32.9M | } while (--h); | 2409 | 2.93M | } |
vp9dsp_8bpp.c:do_scaled_8tap_c Line | Count | Source | 2368 | 11.7M | { | 2369 | 11.7M | int tmp_h = (((h - 1) * dy + my) >> 4) + 8; | 2370 | 11.7M | pixel tmp[64 * 135], *tmp_ptr = tmp; | 2371 | 11.7M | pixel *dst = (pixel *) _dst; | 2372 | 11.7M | const pixel *src = (const pixel *) _src; | 2373 | | | 2374 | 11.7M | dst_stride /= sizeof(pixel); | 2375 | 11.7M | src_stride /= sizeof(pixel); | 2376 | 11.7M | src -= src_stride * 3; | 2377 | 140M | do { | 2378 | 140M | int x; | 2379 | 140M | int imx = mx, ioff = 0; | 2380 | | | 2381 | 2.25G | for (x = 0; x < w; x++) { | 2382 | 2.11G | tmp_ptr[x] = FILTER_8TAP(src, ioff, filters[imx], 1); | 2383 | 2.11G | imx += dx; | 2384 | 2.11G | ioff += imx >> 4; | 2385 | 2.11G | imx &= 0xf; | 2386 | 2.11G | } | 2387 | | | 2388 | 140M | tmp_ptr += 64; | 2389 | 140M | src += src_stride; | 2390 | 140M | } while (--tmp_h); | 2391 | | | 2392 | 11.7M | tmp_ptr = tmp + 64 * 3; | 2393 | 101M | do { | 2394 | 101M | int x; | 2395 | 101M | const int16_t *filter = filters[my]; | 2396 | | | 2397 | 2.31G | for (x = 0; x < w; x++) | 2398 | 2.21G | if (avg) { | 2399 | 706M | dst[x] = (dst[x] + FILTER_8TAP(tmp_ptr, x, filter, 64) + 1) >> 1; | 2400 | 1.50G | } else { | 2401 | 1.50G | dst[x] = FILTER_8TAP(tmp_ptr, x, filter, 64); | 2402 | 1.50G | } | 2403 | | | 2404 | 101M | my += dy; | 2405 | 101M | tmp_ptr += (my >> 4) * 64; | 2406 | 101M | my &= 0xf; | 2407 | 101M | dst += dst_stride; | 2408 | 101M | } while (--h); | 2409 | 11.7M | } |
|
2410 | | |
2411 | | #define scaled_filter_8tap_fn(opn, opa) \ |
2412 | | static av_noinline void opn##_scaled_8tap_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2413 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2414 | | int w, int h, int mx, int my, int dx, int dy, \ |
2415 | 17.6M | const int16_t (*filters)[8]) \ |
2416 | 17.6M | { \ |
2417 | 17.6M | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ |
2418 | 17.6M | opa, filters); \ |
2419 | 17.6M | } vp9dsp_10bpp.c:put_scaled_8tap_c Line | Count | Source | 2415 | 2.12M | const int16_t (*filters)[8]) \ | 2416 | 2.12M | { \ | 2417 | 2.12M | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 2.12M | opa, filters); \ | 2419 | 2.12M | } |
vp9dsp_10bpp.c:avg_scaled_8tap_c Line | Count | Source | 2415 | 823k | const int16_t (*filters)[8]) \ | 2416 | 823k | { \ | 2417 | 823k | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 823k | opa, filters); \ | 2419 | 823k | } |
vp9dsp_12bpp.c:put_scaled_8tap_c Line | Count | Source | 2415 | 2.02M | const int16_t (*filters)[8]) \ | 2416 | 2.02M | { \ | 2417 | 2.02M | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 2.02M | opa, filters); \ | 2419 | 2.02M | } |
vp9dsp_12bpp.c:avg_scaled_8tap_c Line | Count | Source | 2415 | 904k | const int16_t (*filters)[8]) \ | 2416 | 904k | { \ | 2417 | 904k | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 904k | opa, filters); \ | 2419 | 904k | } |
vp9dsp_8bpp.c:put_scaled_8tap_c Line | Count | Source | 2415 | 7.77M | const int16_t (*filters)[8]) \ | 2416 | 7.77M | { \ | 2417 | 7.77M | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 7.77M | opa, filters); \ | 2419 | 7.77M | } |
vp9dsp_8bpp.c:avg_scaled_8tap_c Line | Count | Source | 2415 | 4.01M | const int16_t (*filters)[8]) \ | 2416 | 4.01M | { \ | 2417 | 4.01M | do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \ | 2418 | 4.01M | opa, filters); \ | 2419 | 4.01M | } |
|
2420 | | |
2421 | | scaled_filter_8tap_fn(put, 0) |
2422 | | scaled_filter_8tap_fn(avg, 1) |
2423 | | |
2424 | | #undef scaled_filter_8tap_fn |
2425 | | |
2426 | | #undef FILTER_8TAP |
2427 | | |
2428 | | #define scaled_filter_fn(sz, type, type_idx, avg) \ |
2429 | | static void avg##_scaled_##type##_##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2430 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2431 | 17.6M | int h, int mx, int my, int dx, int dy) \ |
2432 | 17.6M | { \ |
2433 | 17.6M | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ |
2434 | 17.6M | ff_vp9_subpel_filters[type_idx]); \ |
2435 | 17.6M | } vp9dsp_10bpp.c:put_scaled_smooth_64_c Line | Count | Source | 2431 | 31.7k | int h, int mx, int my, int dx, int dy) \ | 2432 | 31.7k | { \ | 2433 | 31.7k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 31.7k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 31.7k | } |
vp9dsp_10bpp.c:put_scaled_regular_64_c Line | Count | Source | 2431 | 54.6k | int h, int mx, int my, int dx, int dy) \ | 2432 | 54.6k | { \ | 2433 | 54.6k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 54.6k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 54.6k | } |
vp9dsp_10bpp.c:put_scaled_sharp_64_c Line | Count | Source | 2431 | 13.6k | int h, int mx, int my, int dx, int dy) \ | 2432 | 13.6k | { \ | 2433 | 13.6k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 13.6k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 13.6k | } |
vp9dsp_10bpp.c:avg_scaled_smooth_64_c Line | Count | Source | 2431 | 12.1k | int h, int mx, int my, int dx, int dy) \ | 2432 | 12.1k | { \ | 2433 | 12.1k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 12.1k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 12.1k | } |
vp9dsp_10bpp.c:avg_scaled_regular_64_c Line | Count | Source | 2431 | 11.0k | int h, int mx, int my, int dx, int dy) \ | 2432 | 11.0k | { \ | 2433 | 11.0k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 11.0k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 11.0k | } |
vp9dsp_10bpp.c:avg_scaled_sharp_64_c Line | Count | Source | 2431 | 6.39k | int h, int mx, int my, int dx, int dy) \ | 2432 | 6.39k | { \ | 2433 | 6.39k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 6.39k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 6.39k | } |
vp9dsp_10bpp.c:put_scaled_smooth_32_c Line | Count | Source | 2431 | 53.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 53.2k | { \ | 2433 | 53.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 53.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 53.2k | } |
vp9dsp_10bpp.c:put_scaled_regular_32_c Line | Count | Source | 2431 | 89.5k | int h, int mx, int my, int dx, int dy) \ | 2432 | 89.5k | { \ | 2433 | 89.5k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 89.5k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 89.5k | } |
vp9dsp_10bpp.c:put_scaled_sharp_32_c Line | Count | Source | 2431 | 24.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 24.2k | { \ | 2433 | 24.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 24.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 24.2k | } |
vp9dsp_10bpp.c:avg_scaled_smooth_32_c Line | Count | Source | 2431 | 24.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 24.4k | { \ | 2433 | 24.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 24.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 24.4k | } |
vp9dsp_10bpp.c:avg_scaled_regular_32_c Line | Count | Source | 2431 | 24.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 24.2k | { \ | 2433 | 24.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 24.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 24.2k | } |
vp9dsp_10bpp.c:avg_scaled_sharp_32_c Line | Count | Source | 2431 | 10.8k | int h, int mx, int my, int dx, int dy) \ | 2432 | 10.8k | { \ | 2433 | 10.8k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 10.8k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 10.8k | } |
vp9dsp_10bpp.c:put_scaled_smooth_16_c Line | Count | Source | 2431 | 94.5k | int h, int mx, int my, int dx, int dy) \ | 2432 | 94.5k | { \ | 2433 | 94.5k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 94.5k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 94.5k | } |
vp9dsp_10bpp.c:put_scaled_regular_16_c Line | Count | Source | 2431 | 185k | int h, int mx, int my, int dx, int dy) \ | 2432 | 185k | { \ | 2433 | 185k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 185k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 185k | } |
vp9dsp_10bpp.c:put_scaled_sharp_16_c Line | Count | Source | 2431 | 42.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 42.3k | { \ | 2433 | 42.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 42.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 42.3k | } |
vp9dsp_10bpp.c:avg_scaled_smooth_16_c Line | Count | Source | 2431 | 45.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 45.3k | { \ | 2433 | 45.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 45.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 45.3k | } |
vp9dsp_10bpp.c:avg_scaled_regular_16_c Line | Count | Source | 2431 | 51.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 51.9k | { \ | 2433 | 51.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 51.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 51.9k | } |
vp9dsp_10bpp.c:avg_scaled_sharp_16_c Line | Count | Source | 2431 | 17.1k | int h, int mx, int my, int dx, int dy) \ | 2432 | 17.1k | { \ | 2433 | 17.1k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 17.1k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 17.1k | } |
vp9dsp_10bpp.c:put_scaled_smooth_8_c Line | Count | Source | 2431 | 160k | int h, int mx, int my, int dx, int dy) \ | 2432 | 160k | { \ | 2433 | 160k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 160k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 160k | } |
vp9dsp_10bpp.c:put_scaled_regular_8_c Line | Count | Source | 2431 | 325k | int h, int mx, int my, int dx, int dy) \ | 2432 | 325k | { \ | 2433 | 325k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 325k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 325k | } |
vp9dsp_10bpp.c:put_scaled_sharp_8_c Line | Count | Source | 2431 | 71.0k | int h, int mx, int my, int dx, int dy) \ | 2432 | 71.0k | { \ | 2433 | 71.0k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 71.0k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 71.0k | } |
vp9dsp_10bpp.c:avg_scaled_smooth_8_c Line | Count | Source | 2431 | 68.8k | int h, int mx, int my, int dx, int dy) \ | 2432 | 68.8k | { \ | 2433 | 68.8k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 68.8k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 68.8k | } |
vp9dsp_10bpp.c:avg_scaled_regular_8_c Line | Count | Source | 2431 | 98.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 98.4k | { \ | 2433 | 98.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 98.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 98.4k | } |
vp9dsp_10bpp.c:avg_scaled_sharp_8_c Line | Count | Source | 2431 | 27.1k | int h, int mx, int my, int dx, int dy) \ | 2432 | 27.1k | { \ | 2433 | 27.1k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 27.1k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 27.1k | } |
vp9dsp_10bpp.c:put_scaled_smooth_4_c Line | Count | Source | 2431 | 244k | int h, int mx, int my, int dx, int dy) \ | 2432 | 244k | { \ | 2433 | 244k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 244k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 244k | } |
vp9dsp_10bpp.c:put_scaled_regular_4_c Line | Count | Source | 2431 | 537k | int h, int mx, int my, int dx, int dy) \ | 2432 | 537k | { \ | 2433 | 537k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 537k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 537k | } |
vp9dsp_10bpp.c:put_scaled_sharp_4_c Line | Count | Source | 2431 | 200k | int h, int mx, int my, int dx, int dy) \ | 2432 | 200k | { \ | 2433 | 200k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 200k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 200k | } |
vp9dsp_10bpp.c:avg_scaled_smooth_4_c Line | Count | Source | 2431 | 178k | int h, int mx, int my, int dx, int dy) \ | 2432 | 178k | { \ | 2433 | 178k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 178k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 178k | } |
vp9dsp_10bpp.c:avg_scaled_regular_4_c Line | Count | Source | 2431 | 154k | int h, int mx, int my, int dx, int dy) \ | 2432 | 154k | { \ | 2433 | 154k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 154k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 154k | } |
vp9dsp_10bpp.c:avg_scaled_sharp_4_c Line | Count | Source | 2431 | 92.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 92.9k | { \ | 2433 | 92.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 92.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 92.9k | } |
vp9dsp_12bpp.c:put_scaled_smooth_64_c Line | Count | Source | 2431 | 54.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 54.3k | { \ | 2433 | 54.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 54.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 54.3k | } |
vp9dsp_12bpp.c:put_scaled_regular_64_c Line | Count | Source | 2431 | 21.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 21.2k | { \ | 2433 | 21.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 21.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 21.2k | } |
vp9dsp_12bpp.c:put_scaled_sharp_64_c Line | Count | Source | 2431 | 8.36k | int h, int mx, int my, int dx, int dy) \ | 2432 | 8.36k | { \ | 2433 | 8.36k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 8.36k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 8.36k | } |
vp9dsp_12bpp.c:avg_scaled_smooth_64_c Line | Count | Source | 2431 | 30.6k | int h, int mx, int my, int dx, int dy) \ | 2432 | 30.6k | { \ | 2433 | 30.6k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 30.6k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 30.6k | } |
vp9dsp_12bpp.c:avg_scaled_regular_64_c Line | Count | Source | 2431 | 4.08k | int h, int mx, int my, int dx, int dy) \ | 2432 | 4.08k | { \ | 2433 | 4.08k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 4.08k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 4.08k | } |
vp9dsp_12bpp.c:avg_scaled_sharp_64_c Line | Count | Source | 2431 | 6.21k | int h, int mx, int my, int dx, int dy) \ | 2432 | 6.21k | { \ | 2433 | 6.21k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 6.21k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 6.21k | } |
vp9dsp_12bpp.c:put_scaled_smooth_32_c Line | Count | Source | 2431 | 95.7k | int h, int mx, int my, int dx, int dy) \ | 2432 | 95.7k | { \ | 2433 | 95.7k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 95.7k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 95.7k | } |
vp9dsp_12bpp.c:put_scaled_regular_32_c Line | Count | Source | 2431 | 44.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 44.3k | { \ | 2433 | 44.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 44.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 44.3k | } |
vp9dsp_12bpp.c:put_scaled_sharp_32_c Line | Count | Source | 2431 | 12.6k | int h, int mx, int my, int dx, int dy) \ | 2432 | 12.6k | { \ | 2433 | 12.6k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 12.6k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 12.6k | } |
vp9dsp_12bpp.c:avg_scaled_smooth_32_c Line | Count | Source | 2431 | 43.8k | int h, int mx, int my, int dx, int dy) \ | 2432 | 43.8k | { \ | 2433 | 43.8k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 43.8k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 43.8k | } |
vp9dsp_12bpp.c:avg_scaled_regular_32_c Line | Count | Source | 2431 | 12.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 12.9k | { \ | 2433 | 12.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 12.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 12.9k | } |
vp9dsp_12bpp.c:avg_scaled_sharp_32_c Line | Count | Source | 2431 | 11.5k | int h, int mx, int my, int dx, int dy) \ | 2432 | 11.5k | { \ | 2433 | 11.5k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 11.5k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 11.5k | } |
vp9dsp_12bpp.c:put_scaled_smooth_16_c Line | Count | Source | 2431 | 160k | int h, int mx, int my, int dx, int dy) \ | 2432 | 160k | { \ | 2433 | 160k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 160k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 160k | } |
vp9dsp_12bpp.c:put_scaled_regular_16_c Line | Count | Source | 2431 | 93.0k | int h, int mx, int my, int dx, int dy) \ | 2432 | 93.0k | { \ | 2433 | 93.0k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 93.0k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 93.0k | } |
vp9dsp_12bpp.c:put_scaled_sharp_16_c Line | Count | Source | 2431 | 25.1k | int h, int mx, int my, int dx, int dy) \ | 2432 | 25.1k | { \ | 2433 | 25.1k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 25.1k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 25.1k | } |
vp9dsp_12bpp.c:avg_scaled_smooth_16_c Line | Count | Source | 2431 | 60.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 60.4k | { \ | 2433 | 60.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 60.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 60.4k | } |
vp9dsp_12bpp.c:avg_scaled_regular_16_c Line | Count | Source | 2431 | 30.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 30.2k | { \ | 2433 | 30.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 30.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 30.2k | } |
vp9dsp_12bpp.c:avg_scaled_sharp_16_c Line | Count | Source | 2431 | 23.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 23.2k | { \ | 2433 | 23.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 23.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 23.2k | } |
vp9dsp_12bpp.c:put_scaled_smooth_8_c Line | Count | Source | 2431 | 312k | int h, int mx, int my, int dx, int dy) \ | 2432 | 312k | { \ | 2433 | 312k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 312k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 312k | } |
vp9dsp_12bpp.c:put_scaled_regular_8_c Line | Count | Source | 2431 | 166k | int h, int mx, int my, int dx, int dy) \ | 2432 | 166k | { \ | 2433 | 166k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 166k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 166k | } |
vp9dsp_12bpp.c:put_scaled_sharp_8_c Line | Count | Source | 2431 | 47.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 47.3k | { \ | 2433 | 47.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 47.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 47.3k | } |
vp9dsp_12bpp.c:avg_scaled_smooth_8_c Line | Count | Source | 2431 | 154k | int h, int mx, int my, int dx, int dy) \ | 2432 | 154k | { \ | 2433 | 154k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 154k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 154k | } |
vp9dsp_12bpp.c:avg_scaled_regular_8_c Line | Count | Source | 2431 | 56.0k | int h, int mx, int my, int dx, int dy) \ | 2432 | 56.0k | { \ | 2433 | 56.0k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 56.0k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 56.0k | } |
vp9dsp_12bpp.c:avg_scaled_sharp_8_c Line | Count | Source | 2431 | 38.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 38.9k | { \ | 2433 | 38.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 38.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 38.9k | } |
vp9dsp_12bpp.c:put_scaled_smooth_4_c Line | Count | Source | 2431 | 407k | int h, int mx, int my, int dx, int dy) \ | 2432 | 407k | { \ | 2433 | 407k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 407k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 407k | } |
vp9dsp_12bpp.c:put_scaled_regular_4_c Line | Count | Source | 2431 | 302k | int h, int mx, int my, int dx, int dy) \ | 2432 | 302k | { \ | 2433 | 302k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 302k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 302k | } |
vp9dsp_12bpp.c:put_scaled_sharp_4_c Line | Count | Source | 2431 | 277k | int h, int mx, int my, int dx, int dy) \ | 2432 | 277k | { \ | 2433 | 277k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 277k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 277k | } |
vp9dsp_12bpp.c:avg_scaled_smooth_4_c Line | Count | Source | 2431 | 206k | int h, int mx, int my, int dx, int dy) \ | 2432 | 206k | { \ | 2433 | 206k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 206k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 206k | } |
vp9dsp_12bpp.c:avg_scaled_regular_4_c Line | Count | Source | 2431 | 120k | int h, int mx, int my, int dx, int dy) \ | 2432 | 120k | { \ | 2433 | 120k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 120k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 120k | } |
vp9dsp_12bpp.c:avg_scaled_sharp_4_c Line | Count | Source | 2431 | 104k | int h, int mx, int my, int dx, int dy) \ | 2432 | 104k | { \ | 2433 | 104k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 104k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 104k | } |
vp9dsp_8bpp.c:put_scaled_smooth_64_c Line | Count | Source | 2431 | 60.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 60.9k | { \ | 2433 | 60.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 60.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 60.9k | } |
vp9dsp_8bpp.c:put_scaled_regular_64_c Line | Count | Source | 2431 | 164k | int h, int mx, int my, int dx, int dy) \ | 2432 | 164k | { \ | 2433 | 164k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 164k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 164k | } |
vp9dsp_8bpp.c:put_scaled_sharp_64_c Line | Count | Source | 2431 | 36.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 36.9k | { \ | 2433 | 36.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 36.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 36.9k | } |
vp9dsp_8bpp.c:avg_scaled_smooth_64_c Line | Count | Source | 2431 | 21.8k | int h, int mx, int my, int dx, int dy) \ | 2432 | 21.8k | { \ | 2433 | 21.8k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 21.8k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 21.8k | } |
vp9dsp_8bpp.c:avg_scaled_regular_64_c Line | Count | Source | 2431 | 80.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 80.4k | { \ | 2433 | 80.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 80.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 80.4k | } |
vp9dsp_8bpp.c:avg_scaled_sharp_64_c Line | Count | Source | 2431 | 18.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 18.2k | { \ | 2433 | 18.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 18.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 18.2k | } |
vp9dsp_8bpp.c:put_scaled_smooth_32_c Line | Count | Source | 2431 | 103k | int h, int mx, int my, int dx, int dy) \ | 2432 | 103k | { \ | 2433 | 103k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 103k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 103k | } |
vp9dsp_8bpp.c:put_scaled_regular_32_c Line | Count | Source | 2431 | 335k | int h, int mx, int my, int dx, int dy) \ | 2432 | 335k | { \ | 2433 | 335k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 335k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 335k | } |
vp9dsp_8bpp.c:put_scaled_sharp_32_c Line | Count | Source | 2431 | 61.2k | int h, int mx, int my, int dx, int dy) \ | 2432 | 61.2k | { \ | 2433 | 61.2k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 61.2k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 61.2k | } |
vp9dsp_8bpp.c:avg_scaled_smooth_32_c Line | Count | Source | 2431 | 55.3k | int h, int mx, int my, int dx, int dy) \ | 2432 | 55.3k | { \ | 2433 | 55.3k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 55.3k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 55.3k | } |
vp9dsp_8bpp.c:avg_scaled_regular_32_c Line | Count | Source | 2431 | 195k | int h, int mx, int my, int dx, int dy) \ | 2432 | 195k | { \ | 2433 | 195k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 195k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 195k | } |
vp9dsp_8bpp.c:avg_scaled_sharp_32_c Line | Count | Source | 2431 | 32.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 32.4k | { \ | 2433 | 32.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 32.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 32.4k | } |
vp9dsp_8bpp.c:put_scaled_smooth_16_c Line | Count | Source | 2431 | 207k | int h, int mx, int my, int dx, int dy) \ | 2432 | 207k | { \ | 2433 | 207k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 207k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 207k | } |
vp9dsp_8bpp.c:put_scaled_regular_16_c Line | Count | Source | 2431 | 779k | int h, int mx, int my, int dx, int dy) \ | 2432 | 779k | { \ | 2433 | 779k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 779k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 779k | } |
vp9dsp_8bpp.c:put_scaled_sharp_16_c Line | Count | Source | 2431 | 140k | int h, int mx, int my, int dx, int dy) \ | 2432 | 140k | { \ | 2433 | 140k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 140k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 140k | } |
vp9dsp_8bpp.c:avg_scaled_smooth_16_c Line | Count | Source | 2431 | 105k | int h, int mx, int my, int dx, int dy) \ | 2432 | 105k | { \ | 2433 | 105k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 105k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 105k | } |
vp9dsp_8bpp.c:avg_scaled_regular_16_c Line | Count | Source | 2431 | 389k | int h, int mx, int my, int dx, int dy) \ | 2432 | 389k | { \ | 2433 | 389k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 389k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 389k | } |
vp9dsp_8bpp.c:avg_scaled_sharp_16_c Line | Count | Source | 2431 | 73.9k | int h, int mx, int my, int dx, int dy) \ | 2432 | 73.9k | { \ | 2433 | 73.9k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 73.9k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 73.9k | } |
vp9dsp_8bpp.c:put_scaled_smooth_8_c Line | Count | Source | 2431 | 309k | int h, int mx, int my, int dx, int dy) \ | 2432 | 309k | { \ | 2433 | 309k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 309k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 309k | } |
vp9dsp_8bpp.c:put_scaled_regular_8_c Line | Count | Source | 2431 | 1.20M | int h, int mx, int my, int dx, int dy) \ | 2432 | 1.20M | { \ | 2433 | 1.20M | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 1.20M | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 1.20M | } |
vp9dsp_8bpp.c:put_scaled_sharp_8_c Line | Count | Source | 2431 | 211k | int h, int mx, int my, int dx, int dy) \ | 2432 | 211k | { \ | 2433 | 211k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 211k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 211k | } |
vp9dsp_8bpp.c:avg_scaled_smooth_8_c Line | Count | Source | 2431 | 124k | int h, int mx, int my, int dx, int dy) \ | 2432 | 124k | { \ | 2433 | 124k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 124k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 124k | } |
vp9dsp_8bpp.c:avg_scaled_regular_8_c Line | Count | Source | 2431 | 600k | int h, int mx, int my, int dx, int dy) \ | 2432 | 600k | { \ | 2433 | 600k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 600k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 600k | } |
vp9dsp_8bpp.c:avg_scaled_sharp_8_c Line | Count | Source | 2431 | 92.4k | int h, int mx, int my, int dx, int dy) \ | 2432 | 92.4k | { \ | 2433 | 92.4k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 92.4k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 92.4k | } |
vp9dsp_8bpp.c:put_scaled_smooth_4_c Line | Count | Source | 2431 | 707k | int h, int mx, int my, int dx, int dy) \ | 2432 | 707k | { \ | 2433 | 707k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 707k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 707k | } |
vp9dsp_8bpp.c:put_scaled_regular_4_c Line | Count | Source | 2431 | 2.84M | int h, int mx, int my, int dx, int dy) \ | 2432 | 2.84M | { \ | 2433 | 2.84M | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 2.84M | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 2.84M | } |
vp9dsp_8bpp.c:put_scaled_sharp_4_c Line | Count | Source | 2431 | 608k | int h, int mx, int my, int dx, int dy) \ | 2432 | 608k | { \ | 2433 | 608k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 608k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 608k | } |
vp9dsp_8bpp.c:avg_scaled_smooth_4_c Line | Count | Source | 2431 | 316k | int h, int mx, int my, int dx, int dy) \ | 2432 | 316k | { \ | 2433 | 316k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 316k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 316k | } |
vp9dsp_8bpp.c:avg_scaled_regular_4_c Line | Count | Source | 2431 | 1.64M | int h, int mx, int my, int dx, int dy) \ | 2432 | 1.64M | { \ | 2433 | 1.64M | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 1.64M | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 1.64M | } |
vp9dsp_8bpp.c:avg_scaled_sharp_4_c Line | Count | Source | 2431 | 262k | int h, int mx, int my, int dx, int dy) \ | 2432 | 262k | { \ | 2433 | 262k | avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \ | 2434 | 262k | ff_vp9_subpel_filters[type_idx]); \ | 2435 | 262k | } |
|
2436 | | |
2437 | | #if BIT_DEPTH != 12 |
2438 | | |
2439 | | static av_always_inline void do_scaled_bilin_c(uint8_t *_dst, ptrdiff_t dst_stride, |
2440 | | const uint8_t *_src, ptrdiff_t src_stride, |
2441 | | int w, int h, int mx, int my, |
2442 | | int dx, int dy, int avg) |
2443 | 19.4M | { |
2444 | 19.4M | pixel tmp[64 * 129], *tmp_ptr = tmp; |
2445 | 19.4M | int tmp_h = (((h - 1) * dy + my) >> 4) + 2; |
2446 | 19.4M | pixel *dst = (pixel *) _dst; |
2447 | 19.4M | const pixel *src = (const pixel *) _src; |
2448 | | |
2449 | 19.4M | dst_stride /= sizeof(pixel); |
2450 | 19.4M | src_stride /= sizeof(pixel); |
2451 | 51.7M | do { |
2452 | 51.7M | int x; |
2453 | 51.7M | int imx = mx, ioff = 0; |
2454 | | |
2455 | 523M | for (x = 0; x < w; x++) { |
2456 | 471M | tmp_ptr[x] = FILTER_BILIN(src, ioff, imx, 1); |
2457 | 471M | imx += dx; |
2458 | 471M | ioff += imx >> 4; |
2459 | 471M | imx &= 0xf; |
2460 | 471M | } |
2461 | | |
2462 | 51.7M | tmp_ptr += 64; |
2463 | 51.7M | src += src_stride; |
2464 | 51.7M | } while (--tmp_h); |
2465 | | |
2466 | 19.4M | tmp_ptr = tmp; |
2467 | 118M | do { |
2468 | 118M | int x; |
2469 | | |
2470 | 1.52G | for (x = 0; x < w; x++) |
2471 | 1.40G | if (avg) { |
2472 | 808M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; |
2473 | 808M | } else { |
2474 | 598M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); |
2475 | 598M | } |
2476 | | |
2477 | 118M | my += dy; |
2478 | 118M | tmp_ptr += (my >> 4) * 64; |
2479 | 118M | my &= 0xf; |
2480 | 118M | dst += dst_stride; |
2481 | 118M | } while (--h); |
2482 | 19.4M | } vp9dsp_10bpp.c:do_scaled_bilin_c Line | Count | Source | 2443 | 16.0M | { | 2444 | 16.0M | pixel tmp[64 * 129], *tmp_ptr = tmp; | 2445 | 16.0M | int tmp_h = (((h - 1) * dy + my) >> 4) + 2; | 2446 | 16.0M | pixel *dst = (pixel *) _dst; | 2447 | 16.0M | const pixel *src = (const pixel *) _src; | 2448 | | | 2449 | 16.0M | dst_stride /= sizeof(pixel); | 2450 | 16.0M | src_stride /= sizeof(pixel); | 2451 | 39.8M | do { | 2452 | 39.8M | int x; | 2453 | 39.8M | int imx = mx, ioff = 0; | 2454 | | | 2455 | 349M | for (x = 0; x < w; x++) { | 2456 | 309M | tmp_ptr[x] = FILTER_BILIN(src, ioff, imx, 1); | 2457 | 309M | imx += dx; | 2458 | 309M | ioff += imx >> 4; | 2459 | 309M | imx &= 0xf; | 2460 | 309M | } | 2461 | | | 2462 | 39.8M | tmp_ptr += 64; | 2463 | 39.8M | src += src_stride; | 2464 | 39.8M | } while (--tmp_h); | 2465 | | | 2466 | 16.0M | tmp_ptr = tmp; | 2467 | 96.5M | do { | 2468 | 96.5M | int x; | 2469 | | | 2470 | 1.16G | for (x = 0; x < w; x++) | 2471 | 1.06G | if (avg) { | 2472 | 683M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; | 2473 | 683M | } else { | 2474 | 382M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); | 2475 | 382M | } | 2476 | | | 2477 | 96.5M | my += dy; | 2478 | 96.5M | tmp_ptr += (my >> 4) * 64; | 2479 | 96.5M | my &= 0xf; | 2480 | 96.5M | dst += dst_stride; | 2481 | 96.5M | } while (--h); | 2482 | 16.0M | } |
vp9dsp_8bpp.c:do_scaled_bilin_c Line | Count | Source | 2443 | 3.43M | { | 2444 | 3.43M | pixel tmp[64 * 129], *tmp_ptr = tmp; | 2445 | 3.43M | int tmp_h = (((h - 1) * dy + my) >> 4) + 2; | 2446 | 3.43M | pixel *dst = (pixel *) _dst; | 2447 | 3.43M | const pixel *src = (const pixel *) _src; | 2448 | | | 2449 | 3.43M | dst_stride /= sizeof(pixel); | 2450 | 3.43M | src_stride /= sizeof(pixel); | 2451 | 11.9M | do { | 2452 | 11.9M | int x; | 2453 | 11.9M | int imx = mx, ioff = 0; | 2454 | | | 2455 | 173M | for (x = 0; x < w; x++) { | 2456 | 161M | tmp_ptr[x] = FILTER_BILIN(src, ioff, imx, 1); | 2457 | 161M | imx += dx; | 2458 | 161M | ioff += imx >> 4; | 2459 | 161M | imx &= 0xf; | 2460 | 161M | } | 2461 | | | 2462 | 11.9M | tmp_ptr += 64; | 2463 | 11.9M | src += src_stride; | 2464 | 11.9M | } while (--tmp_h); | 2465 | | | 2466 | 3.43M | tmp_ptr = tmp; | 2467 | 21.5M | do { | 2468 | 21.5M | int x; | 2469 | | | 2470 | 362M | for (x = 0; x < w; x++) | 2471 | 340M | if (avg) { | 2472 | 125M | dst[x] = (dst[x] + FILTER_BILIN(tmp_ptr, x, my, 64) + 1) >> 1; | 2473 | 215M | } else { | 2474 | 215M | dst[x] = FILTER_BILIN(tmp_ptr, x, my, 64); | 2475 | 215M | } | 2476 | | | 2477 | 21.5M | my += dy; | 2478 | 21.5M | tmp_ptr += (my >> 4) * 64; | 2479 | 21.5M | my &= 0xf; | 2480 | 21.5M | dst += dst_stride; | 2481 | 21.5M | } while (--h); | 2482 | 3.43M | } |
|
2483 | | |
2484 | | #define scaled_bilin_fn(opn, opa) \ |
2485 | | static av_noinline void opn##_scaled_bilin_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2486 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2487 | 19.4M | int w, int h, int mx, int my, int dx, int dy) \ |
2488 | 19.4M | { \ |
2489 | 19.4M | do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \ |
2490 | 19.4M | } vp9dsp_10bpp.c:put_scaled_bilin_c Line | Count | Source | 2487 | 3.25M | int w, int h, int mx, int my, int dx, int dy) \ | 2488 | 3.25M | { \ | 2489 | 3.25M | do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \ | 2490 | 3.25M | } |
vp9dsp_10bpp.c:avg_scaled_bilin_c Line | Count | Source | 2487 | 12.7M | int w, int h, int mx, int my, int dx, int dy) \ | 2488 | 12.7M | { \ | 2489 | 12.7M | do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \ | 2490 | 12.7M | } |
vp9dsp_8bpp.c:put_scaled_bilin_c Line | Count | Source | 2487 | 1.98M | int w, int h, int mx, int my, int dx, int dy) \ | 2488 | 1.98M | { \ | 2489 | 1.98M | do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \ | 2490 | 1.98M | } |
vp9dsp_8bpp.c:avg_scaled_bilin_c Line | Count | Source | 2487 | 1.44M | int w, int h, int mx, int my, int dx, int dy) \ | 2488 | 1.44M | { \ | 2489 | 1.44M | do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \ | 2490 | 1.44M | } |
|
2491 | | |
2492 | | scaled_bilin_fn(put, 0) |
2493 | | scaled_bilin_fn(avg, 1) |
2494 | | |
2495 | | #undef scaled_bilin_fn |
2496 | | |
2497 | | #undef FILTER_BILIN |
2498 | | |
2499 | | #define scaled_bilinf_fn(sz, avg) \ |
2500 | | static void avg##_scaled_bilin_##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \ |
2501 | | const uint8_t *src, ptrdiff_t src_stride, \ |
2502 | 19.4M | int h, int mx, int my, int dx, int dy) \ |
2503 | 19.4M | { \ |
2504 | 19.4M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ |
2505 | 19.4M | } vp9dsp_10bpp.c:put_scaled_bilin_64_c Line | Count | Source | 2502 | 51.2k | int h, int mx, int my, int dx, int dy) \ | 2503 | 51.2k | { \ | 2504 | 51.2k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 51.2k | } |
vp9dsp_10bpp.c:avg_scaled_bilin_64_c Line | Count | Source | 2502 | 49.0k | int h, int mx, int my, int dx, int dy) \ | 2503 | 49.0k | { \ | 2504 | 49.0k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 49.0k | } |
vp9dsp_10bpp.c:put_scaled_bilin_32_c Line | Count | Source | 2502 | 123k | int h, int mx, int my, int dx, int dy) \ | 2503 | 123k | { \ | 2504 | 123k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 123k | } |
vp9dsp_10bpp.c:avg_scaled_bilin_32_c Line | Count | Source | 2502 | 138k | int h, int mx, int my, int dx, int dy) \ | 2503 | 138k | { \ | 2504 | 138k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 138k | } |
vp9dsp_10bpp.c:put_scaled_bilin_16_c Line | Count | Source | 2502 | 195k | int h, int mx, int my, int dx, int dy) \ | 2503 | 195k | { \ | 2504 | 195k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 195k | } |
vp9dsp_10bpp.c:avg_scaled_bilin_16_c Line | Count | Source | 2502 | 303k | int h, int mx, int my, int dx, int dy) \ | 2503 | 303k | { \ | 2504 | 303k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 303k | } |
vp9dsp_10bpp.c:put_scaled_bilin_8_c Line | Count | Source | 2502 | 472k | int h, int mx, int my, int dx, int dy) \ | 2503 | 472k | { \ | 2504 | 472k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 472k | } |
vp9dsp_10bpp.c:avg_scaled_bilin_8_c Line | Count | Source | 2502 | 3.46M | int h, int mx, int my, int dx, int dy) \ | 2503 | 3.46M | { \ | 2504 | 3.46M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 3.46M | } |
vp9dsp_10bpp.c:put_scaled_bilin_4_c Line | Count | Source | 2502 | 2.40M | int h, int mx, int my, int dx, int dy) \ | 2503 | 2.40M | { \ | 2504 | 2.40M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 2.40M | } |
vp9dsp_10bpp.c:avg_scaled_bilin_4_c Line | Count | Source | 2502 | 8.84M | int h, int mx, int my, int dx, int dy) \ | 2503 | 8.84M | { \ | 2504 | 8.84M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 8.84M | } |
vp9dsp_8bpp.c:put_scaled_bilin_64_c Line | Count | Source | 2502 | 40.7k | int h, int mx, int my, int dx, int dy) \ | 2503 | 40.7k | { \ | 2504 | 40.7k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 40.7k | } |
vp9dsp_8bpp.c:avg_scaled_bilin_64_c Line | Count | Source | 2502 | 16.7k | int h, int mx, int my, int dx, int dy) \ | 2503 | 16.7k | { \ | 2504 | 16.7k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 16.7k | } |
vp9dsp_8bpp.c:put_scaled_bilin_32_c Line | Count | Source | 2502 | 97.9k | int h, int mx, int my, int dx, int dy) \ | 2503 | 97.9k | { \ | 2504 | 97.9k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 97.9k | } |
vp9dsp_8bpp.c:avg_scaled_bilin_32_c Line | Count | Source | 2502 | 59.7k | int h, int mx, int my, int dx, int dy) \ | 2503 | 59.7k | { \ | 2504 | 59.7k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 59.7k | } |
vp9dsp_8bpp.c:put_scaled_bilin_16_c Line | Count | Source | 2502 | 181k | int h, int mx, int my, int dx, int dy) \ | 2503 | 181k | { \ | 2504 | 181k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 181k | } |
vp9dsp_8bpp.c:avg_scaled_bilin_16_c Line | Count | Source | 2502 | 121k | int h, int mx, int my, int dx, int dy) \ | 2503 | 121k | { \ | 2504 | 121k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 121k | } |
vp9dsp_8bpp.c:put_scaled_bilin_8_c Line | Count | Source | 2502 | 246k | int h, int mx, int my, int dx, int dy) \ | 2503 | 246k | { \ | 2504 | 246k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 246k | } |
vp9dsp_8bpp.c:avg_scaled_bilin_8_c Line | Count | Source | 2502 | 195k | int h, int mx, int my, int dx, int dy) \ | 2503 | 195k | { \ | 2504 | 195k | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 195k | } |
vp9dsp_8bpp.c:put_scaled_bilin_4_c Line | Count | Source | 2502 | 1.42M | int h, int mx, int my, int dx, int dy) \ | 2503 | 1.42M | { \ | 2504 | 1.42M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 1.42M | } |
vp9dsp_8bpp.c:avg_scaled_bilin_4_c Line | Count | Source | 2502 | 1.05M | int h, int mx, int my, int dx, int dy) \ | 2503 | 1.05M | { \ | 2504 | 1.05M | avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \ | 2505 | 1.05M | } |
|
2506 | | |
2507 | | #else |
2508 | | |
2509 | | #define scaled_bilinf_fn(a, b) |
2510 | | |
2511 | | #endif |
2512 | | |
2513 | | #define scaled_filter_fns(sz, avg) \ |
2514 | | scaled_filter_fn(sz, regular, FILTER_8TAP_REGULAR, avg) \ |
2515 | | scaled_filter_fn(sz, smooth, FILTER_8TAP_SMOOTH, avg) \ |
2516 | | scaled_filter_fn(sz, sharp, FILTER_8TAP_SHARP, avg) \ |
2517 | | scaled_bilinf_fn(sz, avg) |
2518 | | |
2519 | | #define scaled_filter_fn_set(avg) \ |
2520 | | scaled_filter_fns(64, avg) \ |
2521 | | scaled_filter_fns(32, avg) \ |
2522 | | scaled_filter_fns(16, avg) \ |
2523 | | scaled_filter_fns(8, avg) \ |
2524 | | scaled_filter_fns(4, avg) |
2525 | | |
2526 | | scaled_filter_fn_set(put) |
2527 | | scaled_filter_fn_set(avg) |
2528 | | |
2529 | | #undef scaled_filter_fns |
2530 | | #undef scaled_filter_fn_set |
2531 | | #undef scaled_filter_fn |
2532 | | #undef scaled_bilinf_fn |
2533 | | |
2534 | | #if BIT_DEPTH != 8 |
2535 | | void ff_vp9dsp_scaled_mc_init_10(VP9DSPContext *dsp); |
2536 | | #endif |
2537 | | #if BIT_DEPTH != 10 |
2538 | | static |
2539 | | #endif |
2540 | | av_cold void FUNC(ff_vp9dsp_scaled_mc_init)(VP9DSPContext *dsp) |
2541 | 19.8k | { |
2542 | 19.8k | #define init_scaled_bd_aware(idx1, idx2, sz, type) \ |
2543 | 198k | dsp->smc[idx1][FILTER_8TAP_SMOOTH ][idx2] = type##_scaled_smooth_##sz##_c; \ |
2544 | 198k | dsp->smc[idx1][FILTER_8TAP_REGULAR][idx2] = type##_scaled_regular_##sz##_c; \ |
2545 | 198k | dsp->smc[idx1][FILTER_8TAP_SHARP ][idx2] = type##_scaled_sharp_##sz##_c |
2546 | | |
2547 | | #if BIT_DEPTH == 12 |
2548 | | ff_vp9dsp_scaled_mc_init_10(dsp); |
2549 | 45.7k | #define init_scaled(a,b,c,d) init_scaled_bd_aware(a,b,c,d) |
2550 | | #else |
2551 | | #define init_scaled(idx1, idx2, sz, type) \ |
2552 | 152k | init_scaled_bd_aware(idx1, idx2, sz, type); \ |
2553 | 152k | dsp->smc[idx1][FILTER_BILINEAR ][idx2] = type##_scaled_bilin_##sz##_c |
2554 | | #endif |
2555 | | |
2556 | 19.8k | #define init_scaled_put_avg(idx, sz) \ |
2557 | 99.1k | init_scaled(idx, 0, sz, put); \ |
2558 | 99.1k | init_scaled(idx, 1, sz, avg) |
2559 | | |
2560 | 19.8k | init_scaled_put_avg(0, 64); |
2561 | 19.8k | init_scaled_put_avg(1, 32); |
2562 | 19.8k | init_scaled_put_avg(2, 16); |
2563 | 19.8k | init_scaled_put_avg(3, 8); |
2564 | 19.8k | init_scaled_put_avg(4, 4); |
2565 | | |
2566 | 19.8k | #undef init_scaled_put_avg |
2567 | 19.8k | #undef init_scaled |
2568 | 19.8k | #undef init_scaled_bd_aware |
2569 | 19.8k | } ff_vp9dsp_scaled_mc_init_10 Line | Count | Source | 2541 | 8.67k | { | 2542 | 8.67k | #define init_scaled_bd_aware(idx1, idx2, sz, type) \ | 2543 | 8.67k | dsp->smc[idx1][FILTER_8TAP_SMOOTH ][idx2] = type##_scaled_smooth_##sz##_c; \ | 2544 | 8.67k | dsp->smc[idx1][FILTER_8TAP_REGULAR][idx2] = type##_scaled_regular_##sz##_c; \ | 2545 | 8.67k | dsp->smc[idx1][FILTER_8TAP_SHARP ][idx2] = type##_scaled_sharp_##sz##_c | 2546 | | | 2547 | | #if BIT_DEPTH == 12 | 2548 | | ff_vp9dsp_scaled_mc_init_10(dsp); | 2549 | | #define init_scaled(a,b,c,d) init_scaled_bd_aware(a,b,c,d) | 2550 | | #else | 2551 | 8.67k | #define init_scaled(idx1, idx2, sz, type) \ | 2552 | 8.67k | init_scaled_bd_aware(idx1, idx2, sz, type); \ | 2553 | 8.67k | dsp->smc[idx1][FILTER_BILINEAR ][idx2] = type##_scaled_bilin_##sz##_c | 2554 | 8.67k | #endif | 2555 | | | 2556 | 8.67k | #define init_scaled_put_avg(idx, sz) \ | 2557 | 8.67k | init_scaled(idx, 0, sz, put); \ | 2558 | 8.67k | init_scaled(idx, 1, sz, avg) | 2559 | | | 2560 | 8.67k | init_scaled_put_avg(0, 64); | 2561 | 8.67k | init_scaled_put_avg(1, 32); | 2562 | 8.67k | init_scaled_put_avg(2, 16); | 2563 | 8.67k | init_scaled_put_avg(3, 8); | 2564 | 8.67k | init_scaled_put_avg(4, 4); | 2565 | | | 2566 | 8.67k | #undef init_scaled_put_avg | 2567 | 8.67k | #undef init_scaled | 2568 | 8.67k | #undef init_scaled_bd_aware | 2569 | 8.67k | } |
vp9dsp_12bpp.c:ff_vp9dsp_scaled_mc_init_12 Line | Count | Source | 2541 | 4.57k | { | 2542 | 4.57k | #define init_scaled_bd_aware(idx1, idx2, sz, type) \ | 2543 | 4.57k | dsp->smc[idx1][FILTER_8TAP_SMOOTH ][idx2] = type##_scaled_smooth_##sz##_c; \ | 2544 | 4.57k | dsp->smc[idx1][FILTER_8TAP_REGULAR][idx2] = type##_scaled_regular_##sz##_c; \ | 2545 | 4.57k | dsp->smc[idx1][FILTER_8TAP_SHARP ][idx2] = type##_scaled_sharp_##sz##_c | 2546 | | | 2547 | 4.57k | #if BIT_DEPTH == 12 | 2548 | 4.57k | ff_vp9dsp_scaled_mc_init_10(dsp); | 2549 | 4.57k | #define init_scaled(a,b,c,d) init_scaled_bd_aware(a,b,c,d) | 2550 | | #else | 2551 | | #define init_scaled(idx1, idx2, sz, type) \ | 2552 | | init_scaled_bd_aware(idx1, idx2, sz, type); \ | 2553 | | dsp->smc[idx1][FILTER_BILINEAR ][idx2] = type##_scaled_bilin_##sz##_c | 2554 | | #endif | 2555 | | | 2556 | 4.57k | #define init_scaled_put_avg(idx, sz) \ | 2557 | 4.57k | init_scaled(idx, 0, sz, put); \ | 2558 | 4.57k | init_scaled(idx, 1, sz, avg) | 2559 | | | 2560 | 4.57k | init_scaled_put_avg(0, 64); | 2561 | 4.57k | init_scaled_put_avg(1, 32); | 2562 | 4.57k | init_scaled_put_avg(2, 16); | 2563 | 4.57k | init_scaled_put_avg(3, 8); | 2564 | 4.57k | init_scaled_put_avg(4, 4); | 2565 | | | 2566 | 4.57k | #undef init_scaled_put_avg | 2567 | 4.57k | #undef init_scaled | 2568 | 4.57k | #undef init_scaled_bd_aware | 2569 | 4.57k | } |
vp9dsp_8bpp.c:ff_vp9dsp_scaled_mc_init_8 Line | Count | Source | 2541 | 6.58k | { | 2542 | 6.58k | #define init_scaled_bd_aware(idx1, idx2, sz, type) \ | 2543 | 6.58k | dsp->smc[idx1][FILTER_8TAP_SMOOTH ][idx2] = type##_scaled_smooth_##sz##_c; \ | 2544 | 6.58k | dsp->smc[idx1][FILTER_8TAP_REGULAR][idx2] = type##_scaled_regular_##sz##_c; \ | 2545 | 6.58k | dsp->smc[idx1][FILTER_8TAP_SHARP ][idx2] = type##_scaled_sharp_##sz##_c | 2546 | | | 2547 | | #if BIT_DEPTH == 12 | 2548 | | ff_vp9dsp_scaled_mc_init_10(dsp); | 2549 | | #define init_scaled(a,b,c,d) init_scaled_bd_aware(a,b,c,d) | 2550 | | #else | 2551 | 6.58k | #define init_scaled(idx1, idx2, sz, type) \ | 2552 | 6.58k | init_scaled_bd_aware(idx1, idx2, sz, type); \ | 2553 | 6.58k | dsp->smc[idx1][FILTER_BILINEAR ][idx2] = type##_scaled_bilin_##sz##_c | 2554 | 6.58k | #endif | 2555 | | | 2556 | 6.58k | #define init_scaled_put_avg(idx, sz) \ | 2557 | 6.58k | init_scaled(idx, 0, sz, put); \ | 2558 | 6.58k | init_scaled(idx, 1, sz, avg) | 2559 | | | 2560 | 6.58k | init_scaled_put_avg(0, 64); | 2561 | 6.58k | init_scaled_put_avg(1, 32); | 2562 | 6.58k | init_scaled_put_avg(2, 16); | 2563 | 6.58k | init_scaled_put_avg(3, 8); | 2564 | 6.58k | init_scaled_put_avg(4, 4); | 2565 | | | 2566 | 6.58k | #undef init_scaled_put_avg | 2567 | 6.58k | #undef init_scaled | 2568 | 6.58k | #undef init_scaled_bd_aware | 2569 | 6.58k | } |
|
2570 | | |
2571 | | av_cold void FUNC(ff_vp9dsp_init)(VP9DSPContext *dsp) |
2572 | 15.2k | { |
2573 | 15.2k | FUNC(ff_vp9dsp_intrapred_init)(dsp); |
2574 | 15.2k | vp9dsp_itxfm_init(dsp); |
2575 | 15.2k | vp9dsp_loopfilter_init(dsp); |
2576 | 15.2k | FUNC(ff_vp9dsp_mc_init)(dsp); |
2577 | 15.2k | FUNC(ff_vp9dsp_scaled_mc_init)(dsp); |
2578 | 15.2k | } Line | Count | Source | 2572 | 4.10k | { | 2573 | 4.10k | FUNC(ff_vp9dsp_intrapred_init)(dsp); | 2574 | 4.10k | vp9dsp_itxfm_init(dsp); | 2575 | 4.10k | vp9dsp_loopfilter_init(dsp); | 2576 | 4.10k | FUNC(ff_vp9dsp_mc_init)(dsp); | 2577 | 4.10k | FUNC(ff_vp9dsp_scaled_mc_init)(dsp); | 2578 | 4.10k | } |
Line | Count | Source | 2572 | 4.57k | { | 2573 | 4.57k | FUNC(ff_vp9dsp_intrapred_init)(dsp); | 2574 | 4.57k | vp9dsp_itxfm_init(dsp); | 2575 | 4.57k | vp9dsp_loopfilter_init(dsp); | 2576 | 4.57k | FUNC(ff_vp9dsp_mc_init)(dsp); | 2577 | 4.57k | FUNC(ff_vp9dsp_scaled_mc_init)(dsp); | 2578 | 4.57k | } |
Line | Count | Source | 2572 | 6.58k | { | 2573 | 6.58k | FUNC(ff_vp9dsp_intrapred_init)(dsp); | 2574 | 6.58k | vp9dsp_itxfm_init(dsp); | 2575 | 6.58k | vp9dsp_loopfilter_init(dsp); | 2576 | 6.58k | FUNC(ff_vp9dsp_mc_init)(dsp); | 2577 | 6.58k | FUNC(ff_vp9dsp_scaled_mc_init)(dsp); | 2578 | 6.58k | } |
|