Lines Matching +full:- +full:12
2 * Copyright © 2018-2019, VideoLAN and dav1d authors
3 * Copyright © 2018-2019, Two Orioles, LLC
41 * t2 = ((in1 * 1567 - in3 * (3784 - 4096) + 2048) >> 12) - in3;
43 * t2 = (in1 * 1567 - in3 * 3784 + 2048) >> 12;
45 * The reason for this is that for 12 bits/component bitstreams (corrupt/
48 * two multipliers (each 12 bits) is >= 4096, the result of the add/sub
57 * are not AV1-compliant. So, as long as we don't trigger UB (which some people
75 t2 = (in1 * 1567 + 2048) >> 12; in inv_dct4_1d_internal_c()
76 t3 = (in1 * 3784 + 2048) >> 12; in inv_dct4_1d_internal_c()
81 t1 = ((in0 - in2) * 181 + 128) >> 8; in inv_dct4_1d_internal_c()
82 t2 = ((in1 * 1567 - in3 * (3784 - 4096) + 2048) >> 12) - in3; in inv_dct4_1d_internal_c()
83 t3 = ((in1 * (3784 - 4096) + in3 * 1567 + 2048) >> 12) + in1; in inv_dct4_1d_internal_c()
88 c[2 * stride] = CLIP(t1 - t2); in inv_dct4_1d_internal_c()
89 c[3 * stride] = CLIP(t0 - t3); in inv_dct4_1d_internal_c()
109 t4a = (in1 * 799 + 2048) >> 12; in inv_dct8_1d_internal_c()
110 t5a = (in3 * -2276 + 2048) >> 12; in inv_dct8_1d_internal_c()
111 t6a = (in3 * 3406 + 2048) >> 12; in inv_dct8_1d_internal_c()
112 t7a = (in1 * 4017 + 2048) >> 12; in inv_dct8_1d_internal_c()
116 t4a = ((in1 * 799 - in7 * (4017 - 4096) + 2048) >> 12) - in7; in inv_dct8_1d_internal_c()
117 t5a = (in5 * 1703 - in3 * 1138 + 1024) >> 11; in inv_dct8_1d_internal_c()
119 t7a = ((in1 * (4017 - 4096) + in7 * 799 + 2048) >> 12) + in1; in inv_dct8_1d_internal_c()
123 t5a = CLIP(t4a - t5a); in inv_dct8_1d_internal_c()
125 t6a = CLIP(t7a - t6a); in inv_dct8_1d_internal_c()
127 const int t5 = ((t6a - t5a) * 181 + 128) >> 8; in inv_dct8_1d_internal_c()
139 c[4 * stride] = CLIP(t3 - t4); in inv_dct8_1d_internal_c()
140 c[5 * stride] = CLIP(t2 - t5); in inv_dct8_1d_internal_c()
141 c[6 * stride] = CLIP(t1 - t6); in inv_dct8_1d_internal_c()
142 c[7 * stride] = CLIP(t0 - t7); in inv_dct8_1d_internal_c()
163 t8a = (in1 * 401 + 2048) >> 12; in inv_dct16_1d_internal_c()
164 t9a = (in7 * -2598 + 2048) >> 12; in inv_dct16_1d_internal_c()
165 t10a = (in5 * 1931 + 2048) >> 12; in inv_dct16_1d_internal_c()
166 t11a = (in3 * -1189 + 2048) >> 12; in inv_dct16_1d_internal_c()
167 t12a = (in3 * 3920 + 2048) >> 12; in inv_dct16_1d_internal_c()
168 t13a = (in5 * 3612 + 2048) >> 12; in inv_dct16_1d_internal_c()
169 t14a = (in7 * 3166 + 2048) >> 12; in inv_dct16_1d_internal_c()
170 t15a = (in1 * 4076 + 2048) >> 12; in inv_dct16_1d_internal_c()
175 t8a = ((in1 * 401 - in15 * (4076 - 4096) + 2048) >> 12) - in15; in inv_dct16_1d_internal_c()
176 t9a = (in9 * 1583 - in7 * 1299 + 1024) >> 11; in inv_dct16_1d_internal_c()
177 t10a = ((in5 * 1931 - in11 * (3612 - 4096) + 2048) >> 12) - in11; in inv_dct16_1d_internal_c()
178 t11a = ((in13 * (3920 - 4096) - in3 * 1189 + 2048) >> 12) + in13; in inv_dct16_1d_internal_c()
179 t12a = ((in13 * 1189 + in3 * (3920 - 4096) + 2048) >> 12) + in3; in inv_dct16_1d_internal_c()
180 t13a = ((in5 * (3612 - 4096) + in11 * 1931 + 2048) >> 12) + in5; in inv_dct16_1d_internal_c()
182 t15a = ((in1 * (4076 - 4096) + in15 * 401 + 2048) >> 12) + in1; in inv_dct16_1d_internal_c()
186 int t9 = CLIP(t8a - t9a); in inv_dct16_1d_internal_c()
187 int t10 = CLIP(t11a - t10a); in inv_dct16_1d_internal_c()
190 int t13 = CLIP(t12a - t13a); in inv_dct16_1d_internal_c()
191 int t14 = CLIP(t15a - t14a); in inv_dct16_1d_internal_c()
194 t9a = (( t14 * 1567 - t9 * (3784 - 4096) + 2048) >> 12) - t9; in inv_dct16_1d_internal_c()
195 t14a = (( t14 * (3784 - 4096) + t9 * 1567 + 2048) >> 12) + t14; in inv_dct16_1d_internal_c()
196 t10a = ((-(t13 * (3784 - 4096) + t10 * 1567) + 2048) >> 12) - t13; in inv_dct16_1d_internal_c()
197 t13a = (( t13 * 1567 - t10 * (3784 - 4096) + 2048) >> 12) - t10; in inv_dct16_1d_internal_c()
201 t10 = CLIP(t9a - t10a); in inv_dct16_1d_internal_c()
202 t11a = CLIP(t8 - t11); in inv_dct16_1d_internal_c()
203 t12a = CLIP(t15 - t12); in inv_dct16_1d_internal_c()
204 t13 = CLIP(t14a - t13a); in inv_dct16_1d_internal_c()
208 t10a = ((t13 - t10) * 181 + 128) >> 8; in inv_dct16_1d_internal_c()
210 t11 = ((t12a - t11a) * 181 + 128) >> 8; in inv_dct16_1d_internal_c()
219 const int t6 = c[12 * stride]; in inv_dct16_1d_internal_c()
230 c[ 8 * stride] = CLIP(t7 - t8a); in inv_dct16_1d_internal_c()
231 c[ 9 * stride] = CLIP(t6 - t9); in inv_dct16_1d_internal_c()
232 c[10 * stride] = CLIP(t5 - t10a); in inv_dct16_1d_internal_c()
233 c[11 * stride] = CLIP(t4 - t11); in inv_dct16_1d_internal_c()
234 c[12 * stride] = CLIP(t3 - t12); in inv_dct16_1d_internal_c()
235 c[13 * stride] = CLIP(t2 - t13a); in inv_dct16_1d_internal_c()
236 c[14 * stride] = CLIP(t1 - t14); in inv_dct16_1d_internal_c()
237 c[15 * stride] = CLIP(t0 - t15a); in inv_dct16_1d_internal_c()
261 t16a = (in1 * 201 + 2048) >> 12; in inv_dct32_1d_internal_c()
262 t17a = (in15 * -2751 + 2048) >> 12; in inv_dct32_1d_internal_c()
263 t18a = (in9 * 1751 + 2048) >> 12; in inv_dct32_1d_internal_c()
264 t19a = (in7 * -1380 + 2048) >> 12; in inv_dct32_1d_internal_c()
265 t20a = (in5 * 995 + 2048) >> 12; in inv_dct32_1d_internal_c()
266 t21a = (in11 * -2106 + 2048) >> 12; in inv_dct32_1d_internal_c()
267 t22a = (in13 * 2440 + 2048) >> 12; in inv_dct32_1d_internal_c()
268 t23a = (in3 * -601 + 2048) >> 12; in inv_dct32_1d_internal_c()
269 t24a = (in3 * 4052 + 2048) >> 12; in inv_dct32_1d_internal_c()
270 t25a = (in13 * 3290 + 2048) >> 12; in inv_dct32_1d_internal_c()
271 t26a = (in11 * 3513 + 2048) >> 12; in inv_dct32_1d_internal_c()
272 t27a = (in5 * 3973 + 2048) >> 12; in inv_dct32_1d_internal_c()
273 t28a = (in7 * 3857 + 2048) >> 12; in inv_dct32_1d_internal_c()
274 t29a = (in9 * 3703 + 2048) >> 12; in inv_dct32_1d_internal_c()
275 t30a = (in15 * 3035 + 2048) >> 12; in inv_dct32_1d_internal_c()
276 t31a = (in1 * 4091 + 2048) >> 12; in inv_dct32_1d_internal_c()
283 t16a = ((in1 * 201 - in31 * (4091 - 4096) + 2048) >> 12) - in31; in inv_dct32_1d_internal_c()
284 t17a = ((in17 * (3035 - 4096) - in15 * 2751 + 2048) >> 12) + in17; in inv_dct32_1d_internal_c()
285 t18a = ((in9 * 1751 - in23 * (3703 - 4096) + 2048) >> 12) - in23; in inv_dct32_1d_internal_c()
286 t19a = ((in25 * (3857 - 4096) - in7 * 1380 + 2048) >> 12) + in25; in inv_dct32_1d_internal_c()
287 t20a = ((in5 * 995 - in27 * (3973 - 4096) + 2048) >> 12) - in27; in inv_dct32_1d_internal_c()
288 t21a = ((in21 * (3513 - 4096) - in11 * 2106 + 2048) >> 12) + in21; in inv_dct32_1d_internal_c()
289 t22a = (in13 * 1220 - in19 * 1645 + 1024) >> 11; in inv_dct32_1d_internal_c()
290 t23a = ((in29 * (4052 - 4096) - in3 * 601 + 2048) >> 12) + in29; in inv_dct32_1d_internal_c()
291 t24a = ((in29 * 601 + in3 * (4052 - 4096) + 2048) >> 12) + in3; in inv_dct32_1d_internal_c()
293 t26a = ((in21 * 2106 + in11 * (3513 - 4096) + 2048) >> 12) + in11; in inv_dct32_1d_internal_c()
294 t27a = ((in5 * (3973 - 4096) + in27 * 995 + 2048) >> 12) + in5; in inv_dct32_1d_internal_c()
295 t28a = ((in25 * 1380 + in7 * (3857 - 4096) + 2048) >> 12) + in7; in inv_dct32_1d_internal_c()
296 t29a = ((in9 * (3703 - 4096) + in23 * 1751 + 2048) >> 12) + in9; in inv_dct32_1d_internal_c()
297 t30a = ((in17 * 2751 + in15 * (3035 - 4096) + 2048) >> 12) + in15; in inv_dct32_1d_internal_c()
298 t31a = ((in1 * (4091 - 4096) + in31 * 201 + 2048) >> 12) + in1; in inv_dct32_1d_internal_c()
302 int t17 = CLIP(t16a - t17a); in inv_dct32_1d_internal_c()
303 int t18 = CLIP(t19a - t18a); in inv_dct32_1d_internal_c()
306 int t21 = CLIP(t20a - t21a); in inv_dct32_1d_internal_c()
307 int t22 = CLIP(t23a - t22a); in inv_dct32_1d_internal_c()
310 int t25 = CLIP(t24a - t25a); in inv_dct32_1d_internal_c()
311 int t26 = CLIP(t27a - t26a); in inv_dct32_1d_internal_c()
314 int t29 = CLIP(t28a - t29a); in inv_dct32_1d_internal_c()
315 int t30 = CLIP(t31a - t30a); in inv_dct32_1d_internal_c()
318 t17a = (( t30 * 799 - t17 * (4017 - 4096) + 2048) >> 12) - t17; in inv_dct32_1d_internal_c()
319 t30a = (( t30 * (4017 - 4096) + t17 * 799 + 2048) >> 12) + t30; in inv_dct32_1d_internal_c()
320 t18a = ((-(t29 * (4017 - 4096) + t18 * 799) + 2048) >> 12) - t29; in inv_dct32_1d_internal_c()
321 t29a = (( t29 * 799 - t18 * (4017 - 4096) + 2048) >> 12) - t18; in inv_dct32_1d_internal_c()
322 t21a = ( t26 * 1703 - t21 * 1138 + 1024) >> 11; in inv_dct32_1d_internal_c()
324 t22a = (-(t25 * 1138 + t22 * 1703 ) + 1024) >> 11; in inv_dct32_1d_internal_c()
325 t25a = ( t25 * 1703 - t22 * 1138 + 1024) >> 11; in inv_dct32_1d_internal_c()
329 t18 = CLIP(t17a - t18a); in inv_dct32_1d_internal_c()
330 t19a = CLIP(t16 - t19); in inv_dct32_1d_internal_c()
331 t20a = CLIP(t23 - t20); in inv_dct32_1d_internal_c()
332 t21 = CLIP(t22a - t21a); in inv_dct32_1d_internal_c()
337 t26 = CLIP(t25a - t26a); in inv_dct32_1d_internal_c()
338 t27a = CLIP(t24 - t27); in inv_dct32_1d_internal_c()
339 t28a = CLIP(t31 - t28); in inv_dct32_1d_internal_c()
340 t29 = CLIP(t30a - t29a); in inv_dct32_1d_internal_c()
344 t18a = (( t29 * 1567 - t18 * (3784 - 4096) + 2048) >> 12) - t18; in inv_dct32_1d_internal_c()
345 t29a = (( t29 * (3784 - 4096) + t18 * 1567 + 2048) >> 12) + t29; in inv_dct32_1d_internal_c()
346 t19 = (( t28a * 1567 - t19a * (3784 - 4096) + 2048) >> 12) - t19a; in inv_dct32_1d_internal_c()
347 t28 = (( t28a * (3784 - 4096) + t19a * 1567 + 2048) >> 12) + t28a; in inv_dct32_1d_internal_c()
348 t20 = ((-(t27a * (3784 - 4096) + t20a * 1567) + 2048) >> 12) - t27a; in inv_dct32_1d_internal_c()
349 t27 = (( t27a * 1567 - t20a * (3784 - 4096) + 2048) >> 12) - t20a; in inv_dct32_1d_internal_c()
350 t21a = ((-(t26 * (3784 - 4096) + t21 * 1567) + 2048) >> 12) - t26; in inv_dct32_1d_internal_c()
351 t26a = (( t26 * 1567 - t21 * (3784 - 4096) + 2048) >> 12) - t21; in inv_dct32_1d_internal_c()
357 t20a = CLIP(t19 - t20); in inv_dct32_1d_internal_c()
358 t21 = CLIP(t18a - t21a); in inv_dct32_1d_internal_c()
359 t22a = CLIP(t17 - t22); in inv_dct32_1d_internal_c()
360 t23 = CLIP(t16a - t23a); in inv_dct32_1d_internal_c()
361 t24 = CLIP(t31a - t24a); in inv_dct32_1d_internal_c()
362 t25a = CLIP(t30 - t25); in inv_dct32_1d_internal_c()
363 t26 = CLIP(t29a - t26a); in inv_dct32_1d_internal_c()
364 t27a = CLIP(t28 - t27); in inv_dct32_1d_internal_c()
370 t20 = ((t27a - t20a) * 181 + 128) >> 8; in inv_dct32_1d_internal_c()
372 t21a = ((t26 - t21 ) * 181 + 128) >> 8; in inv_dct32_1d_internal_c()
374 t22 = ((t25a - t22a) * 181 + 128) >> 8; in inv_dct32_1d_internal_c()
376 t23a = ((t24 - t23 ) * 181 + 128) >> 8; in inv_dct32_1d_internal_c()
385 const int t6 = c[12 * stride]; in inv_dct32_1d_internal_c()
408 c[12 * stride] = CLIP(t12 + t19a); in inv_dct32_1d_internal_c()
412 c[16 * stride] = CLIP(t15 - t16); in inv_dct32_1d_internal_c()
413 c[17 * stride] = CLIP(t14 - t17a); in inv_dct32_1d_internal_c()
414 c[18 * stride] = CLIP(t13 - t18); in inv_dct32_1d_internal_c()
415 c[19 * stride] = CLIP(t12 - t19a); in inv_dct32_1d_internal_c()
416 c[20 * stride] = CLIP(t11 - t20); in inv_dct32_1d_internal_c()
417 c[21 * stride] = CLIP(t10 - t21a); in inv_dct32_1d_internal_c()
418 c[22 * stride] = CLIP(t9 - t22); in inv_dct32_1d_internal_c()
419 c[23 * stride] = CLIP(t8 - t23a); in inv_dct32_1d_internal_c()
420 c[24 * stride] = CLIP(t7 - t24a); in inv_dct32_1d_internal_c()
421 c[25 * stride] = CLIP(t6 - t25); in inv_dct32_1d_internal_c()
422 c[26 * stride] = CLIP(t5 - t26a); in inv_dct32_1d_internal_c()
423 c[27 * stride] = CLIP(t4 - t27); in inv_dct32_1d_internal_c()
424 c[28 * stride] = CLIP(t3 - t28a); in inv_dct32_1d_internal_c()
425 c[29 * stride] = CLIP(t2 - t29); in inv_dct32_1d_internal_c()
426 c[30 * stride] = CLIP(t1 - t30a); in inv_dct32_1d_internal_c()
427 c[31 * stride] = CLIP(t0 - t31); in inv_dct32_1d_internal_c()
451 int t32a = (in1 * 101 + 2048) >> 12; in inv_dct64_1d_c()
452 int t33a = (in31 * -2824 + 2048) >> 12; in inv_dct64_1d_c()
453 int t34a = (in17 * 1660 + 2048) >> 12; in inv_dct64_1d_c()
454 int t35a = (in15 * -1474 + 2048) >> 12; in inv_dct64_1d_c()
455 int t36a = (in9 * 897 + 2048) >> 12; in inv_dct64_1d_c()
456 int t37a = (in23 * -2191 + 2048) >> 12; in inv_dct64_1d_c()
457 int t38a = (in25 * 2359 + 2048) >> 12; in inv_dct64_1d_c()
458 int t39a = (in7 * -700 + 2048) >> 12; in inv_dct64_1d_c()
459 int t40a = (in5 * 501 + 2048) >> 12; in inv_dct64_1d_c()
460 int t41a = (in27 * -2520 + 2048) >> 12; in inv_dct64_1d_c()
461 int t42a = (in21 * 2019 + 2048) >> 12; in inv_dct64_1d_c()
462 int t43a = (in11 * -1092 + 2048) >> 12; in inv_dct64_1d_c()
463 int t44a = (in13 * 1285 + 2048) >> 12; in inv_dct64_1d_c()
464 int t45a = (in19 * -1842 + 2048) >> 12; in inv_dct64_1d_c()
465 int t46a = (in29 * 2675 + 2048) >> 12; in inv_dct64_1d_c()
466 int t47a = (in3 * -301 + 2048) >> 12; in inv_dct64_1d_c()
467 int t48a = (in3 * 4085 + 2048) >> 12; in inv_dct64_1d_c()
468 int t49a = (in29 * 3102 + 2048) >> 12; in inv_dct64_1d_c()
469 int t50a = (in19 * 3659 + 2048) >> 12; in inv_dct64_1d_c()
470 int t51a = (in13 * 3889 + 2048) >> 12; in inv_dct64_1d_c()
471 int t52a = (in11 * 3948 + 2048) >> 12; in inv_dct64_1d_c()
472 int t53a = (in21 * 3564 + 2048) >> 12; in inv_dct64_1d_c()
473 int t54a = (in27 * 3229 + 2048) >> 12; in inv_dct64_1d_c()
474 int t55a = (in5 * 4065 + 2048) >> 12; in inv_dct64_1d_c()
475 int t56a = (in7 * 4036 + 2048) >> 12; in inv_dct64_1d_c()
476 int t57a = (in25 * 3349 + 2048) >> 12; in inv_dct64_1d_c()
477 int t58a = (in23 * 3461 + 2048) >> 12; in inv_dct64_1d_c()
478 int t59a = (in9 * 3996 + 2048) >> 12; in inv_dct64_1d_c()
479 int t60a = (in15 * 3822 + 2048) >> 12; in inv_dct64_1d_c()
480 int t61a = (in17 * 3745 + 2048) >> 12; in inv_dct64_1d_c()
481 int t62a = (in31 * 2967 + 2048) >> 12; in inv_dct64_1d_c()
482 int t63a = (in1 * 4095 + 2048) >> 12; in inv_dct64_1d_c()
485 int t33 = CLIP(t32a - t33a); in inv_dct64_1d_c()
486 int t34 = CLIP(t35a - t34a); in inv_dct64_1d_c()
489 int t37 = CLIP(t36a - t37a); in inv_dct64_1d_c()
490 int t38 = CLIP(t39a - t38a); in inv_dct64_1d_c()
493 int t41 = CLIP(t40a - t41a); in inv_dct64_1d_c()
494 int t42 = CLIP(t43a - t42a); in inv_dct64_1d_c()
497 int t45 = CLIP(t44a - t45a); in inv_dct64_1d_c()
498 int t46 = CLIP(t47a - t46a); in inv_dct64_1d_c()
501 int t49 = CLIP(t48a - t49a); in inv_dct64_1d_c()
502 int t50 = CLIP(t51a - t50a); in inv_dct64_1d_c()
505 int t53 = CLIP(t52a - t53a); in inv_dct64_1d_c()
506 int t54 = CLIP(t55a - t54a); in inv_dct64_1d_c()
509 int t57 = CLIP(t56a - t57a); in inv_dct64_1d_c()
510 int t58 = CLIP(t59a - t58a); in inv_dct64_1d_c()
513 int t61 = CLIP(t60a - t61a); in inv_dct64_1d_c()
514 int t62 = CLIP(t63a - t62a); in inv_dct64_1d_c()
517 t33a = ((t33 * (4096 - 4076) + t62 * 401 + 2048) >> 12) - t33; in inv_dct64_1d_c()
518 t34a = ((t34 * -401 + t61 * (4096 - 4076) + 2048) >> 12) - t61; in inv_dct64_1d_c()
519 t37a = (t37 * -1299 + t58 * 1583 + 1024) >> 11; in inv_dct64_1d_c()
520 t38a = (t38 * -1583 + t57 * -1299 + 1024) >> 11; in inv_dct64_1d_c()
521 t41a = ((t41 * (4096 - 3612) + t54 * 1931 + 2048) >> 12) - t41; in inv_dct64_1d_c()
522 t42a = ((t42 * -1931 + t53 * (4096 - 3612) + 2048) >> 12) - t53; in inv_dct64_1d_c()
523 t45a = ((t45 * -1189 + t50 * (3920 - 4096) + 2048) >> 12) + t50; in inv_dct64_1d_c()
524 t46a = ((t46 * (4096 - 3920) + t49 * -1189 + 2048) >> 12) - t46; in inv_dct64_1d_c()
525 t49a = ((t46 * -1189 + t49 * (3920 - 4096) + 2048) >> 12) + t49; in inv_dct64_1d_c()
526 t50a = ((t45 * (3920 - 4096) + t50 * 1189 + 2048) >> 12) + t45; in inv_dct64_1d_c()
527 t53a = ((t42 * (4096 - 3612) + t53 * 1931 + 2048) >> 12) - t42; in inv_dct64_1d_c()
528 t54a = ((t41 * 1931 + t54 * (3612 - 4096) + 2048) >> 12) + t54; in inv_dct64_1d_c()
529 t57a = (t38 * -1299 + t57 * 1583 + 1024) >> 11; in inv_dct64_1d_c()
531 t61a = ((t34 * (4096 - 4076) + t61 * 401 + 2048) >> 12) - t34; in inv_dct64_1d_c()
532 t62a = ((t33 * 401 + t62 * (4076 - 4096) + 2048) >> 12) + t62; in inv_dct64_1d_c()
536 t34 = CLIP(t33a - t34a); in inv_dct64_1d_c()
537 t35a = CLIP(t32 - t35); in inv_dct64_1d_c()
538 t36a = CLIP(t39 - t36); in inv_dct64_1d_c()
539 t37 = CLIP(t38a - t37a); in inv_dct64_1d_c()
544 t42 = CLIP(t41a - t42a); in inv_dct64_1d_c()
545 t43a = CLIP(t40 - t43); in inv_dct64_1d_c()
546 t44a = CLIP(t47 - t44); in inv_dct64_1d_c()
547 t45 = CLIP(t46a - t45a); in inv_dct64_1d_c()
552 t50 = CLIP(t49a - t50a); in inv_dct64_1d_c()
553 t51a = CLIP(t48 - t51); in inv_dct64_1d_c()
554 t52a = CLIP(t55 - t52); in inv_dct64_1d_c()
555 t53 = CLIP(t54a - t53a); in inv_dct64_1d_c()
560 t58 = CLIP(t57a - t58a); in inv_dct64_1d_c()
561 t59a = CLIP(t56 - t59); in inv_dct64_1d_c()
562 t60a = CLIP(t63 - t60); in inv_dct64_1d_c()
563 t61 = CLIP(t62a - t61a); in inv_dct64_1d_c()
567 t34a = ((t34 * (4096 - 4017) + t61 * 799 + 2048) >> 12) - t34; in inv_dct64_1d_c()
568 t35 = ((t35a * (4096 - 4017) + t60a * 799 + 2048) >> 12) - t35a; in inv_dct64_1d_c()
569 t36 = ((t36a * -799 + t59a * (4096 - 4017) + 2048) >> 12) - t59a; in inv_dct64_1d_c()
570 t37a = ((t37 * -799 + t58 * (4096 - 4017) + 2048) >> 12) - t58; in inv_dct64_1d_c()
571 t42a = (t42 * -1138 + t53 * 1703 + 1024) >> 11; in inv_dct64_1d_c()
572 t43 = (t43a * -1138 + t52a * 1703 + 1024) >> 11; in inv_dct64_1d_c()
573 t44 = (t44a * -1703 + t51a * -1138 + 1024) >> 11; in inv_dct64_1d_c()
574 t45a = (t45 * -1703 + t50 * -1138 + 1024) >> 11; in inv_dct64_1d_c()
575 t50a = (t45 * -1138 + t50 * 1703 + 1024) >> 11; in inv_dct64_1d_c()
576 t51 = (t44a * -1138 + t51a * 1703 + 1024) >> 11; in inv_dct64_1d_c()
579 t58a = ((t37 * (4096 - 4017) + t58 * 799 + 2048) >> 12) - t37; in inv_dct64_1d_c()
580 t59 = ((t36a * (4096 - 4017) + t59a * 799 + 2048) >> 12) - t36a; in inv_dct64_1d_c()
581 t60 = ((t35a * 799 + t60a * (4017 - 4096) + 2048) >> 12) + t60a; in inv_dct64_1d_c()
582 t61a = ((t34 * 799 + t61 * (4017 - 4096) + 2048) >> 12) + t61; in inv_dct64_1d_c()
588 t36a = CLIP(t35 - t36); in inv_dct64_1d_c()
589 t37 = CLIP(t34a - t37a); in inv_dct64_1d_c()
590 t38a = CLIP(t33 - t38); in inv_dct64_1d_c()
591 t39 = CLIP(t32a - t39a); in inv_dct64_1d_c()
592 t40 = CLIP(t47a - t40a); in inv_dct64_1d_c()
593 t41a = CLIP(t46 - t41); in inv_dct64_1d_c()
594 t42 = CLIP(t45a - t42a); in inv_dct64_1d_c()
595 t43a = CLIP(t44 - t43); in inv_dct64_1d_c()
604 t52a = CLIP(t51 - t52); in inv_dct64_1d_c()
605 t53 = CLIP(t50a - t53a); in inv_dct64_1d_c()
606 t54a = CLIP(t49 - t54); in inv_dct64_1d_c()
607 t55 = CLIP(t48a - t55a); in inv_dct64_1d_c()
608 t56 = CLIP(t63a - t56a); in inv_dct64_1d_c()
609 t57a = CLIP(t62 - t57); in inv_dct64_1d_c()
610 t58 = CLIP(t61a - t58a); in inv_dct64_1d_c()
611 t59a = CLIP(t60 - t59); in inv_dct64_1d_c()
617 t36 = ((t36a * (4096 - 3784) + t59a * 1567 + 2048) >> 12) - t36a; in inv_dct64_1d_c()
618 t37a = ((t37 * (4096 - 3784) + t58 * 1567 + 2048) >> 12) - t37; in inv_dct64_1d_c()
619 t38 = ((t38a * (4096 - 3784) + t57a * 1567 + 2048) >> 12) - t38a; in inv_dct64_1d_c()
620 t39a = ((t39 * (4096 - 3784) + t56 * 1567 + 2048) >> 12) - t39; in inv_dct64_1d_c()
621 t40a = ((t40 * -1567 + t55 * (4096 - 3784) + 2048) >> 12) - t55; in inv_dct64_1d_c()
622 t41 = ((t41a * -1567 + t54a * (4096 - 3784) + 2048) >> 12) - t54a; in inv_dct64_1d_c()
623 t42a = ((t42 * -1567 + t53 * (4096 - 3784) + 2048) >> 12) - t53; in inv_dct64_1d_c()
624 t43 = ((t43a * -1567 + t52a * (4096 - 3784) + 2048) >> 12) - t52a; in inv_dct64_1d_c()
625 t52 = ((t43a * (4096 - 3784) + t52a * 1567 + 2048) >> 12) - t43a; in inv_dct64_1d_c()
626 t53a = ((t42 * (4096 - 3784) + t53 * 1567 + 2048) >> 12) - t42; in inv_dct64_1d_c()
627 t54 = ((t41a * (4096 - 3784) + t54a * 1567 + 2048) >> 12) - t41a; in inv_dct64_1d_c()
628 t55a = ((t40 * (4096 - 3784) + t55 * 1567 + 2048) >> 12) - t40; in inv_dct64_1d_c()
629 t56a = ((t39 * 1567 + t56 * (3784 - 4096) + 2048) >> 12) + t56; in inv_dct64_1d_c()
630 t57 = ((t38a * 1567 + t57a * (3784 - 4096) + 2048) >> 12) + t57a; in inv_dct64_1d_c()
631 t58a = ((t37 * 1567 + t58 * (3784 - 4096) + 2048) >> 12) + t58; in inv_dct64_1d_c()
632 t59 = ((t36a * 1567 + t59a * (3784 - 4096) + 2048) >> 12) + t59a; in inv_dct64_1d_c()
642 t40 = CLIP(t39a - t40a); in inv_dct64_1d_c()
643 t41a = CLIP(t38 - t41); in inv_dct64_1d_c()
644 t42 = CLIP(t37a - t42a); in inv_dct64_1d_c()
645 t43a = CLIP(t36 - t43); in inv_dct64_1d_c()
646 t44 = CLIP(t35a - t44a); in inv_dct64_1d_c()
647 t45a = CLIP(t34 - t45); in inv_dct64_1d_c()
648 t46 = CLIP(t33a - t46a); in inv_dct64_1d_c()
649 t47a = CLIP(t32 - t47); in inv_dct64_1d_c()
650 t48a = CLIP(t63 - t48); in inv_dct64_1d_c()
651 t49 = CLIP(t62a - t49a); in inv_dct64_1d_c()
652 t50a = CLIP(t61 - t50); in inv_dct64_1d_c()
653 t51 = CLIP(t60a - t51a); in inv_dct64_1d_c()
654 t52a = CLIP(t59 - t52); in inv_dct64_1d_c()
655 t53 = CLIP(t58a - t53a); in inv_dct64_1d_c()
656 t54a = CLIP(t57 - t54); in inv_dct64_1d_c()
657 t55 = CLIP(t56a - t55a); in inv_dct64_1d_c()
667 t40a = ((t55 - t40 ) * 181 + 128) >> 8; in inv_dct64_1d_c()
668 t41 = ((t54a - t41a) * 181 + 128) >> 8; in inv_dct64_1d_c()
669 t42a = ((t53 - t42 ) * 181 + 128) >> 8; in inv_dct64_1d_c()
670 t43 = ((t52a - t43a) * 181 + 128) >> 8; in inv_dct64_1d_c()
671 t44a = ((t51 - t44 ) * 181 + 128) >> 8; in inv_dct64_1d_c()
672 t45 = ((t50a - t45a) * 181 + 128) >> 8; in inv_dct64_1d_c()
673 t46a = ((t49 - t46 ) * 181 + 128) >> 8; in inv_dct64_1d_c()
674 t47 = ((t48a - t47a) * 181 + 128) >> 8; in inv_dct64_1d_c()
690 const int t6 = c[12 * stride]; in inv_dct64_1d_c()
729 c[12 * stride] = CLIP(t12 + t51a); in inv_dct64_1d_c()
749 c[32 * stride] = CLIP(t31 - t32a); in inv_dct64_1d_c()
750 c[33 * stride] = CLIP(t30 - t33); in inv_dct64_1d_c()
751 c[34 * stride] = CLIP(t29 - t34a); in inv_dct64_1d_c()
752 c[35 * stride] = CLIP(t28 - t35); in inv_dct64_1d_c()
753 c[36 * stride] = CLIP(t27 - t36a); in inv_dct64_1d_c()
754 c[37 * stride] = CLIP(t26 - t37); in inv_dct64_1d_c()
755 c[38 * stride] = CLIP(t25 - t38a); in inv_dct64_1d_c()
756 c[39 * stride] = CLIP(t24 - t39); in inv_dct64_1d_c()
757 c[40 * stride] = CLIP(t23 - t40a); in inv_dct64_1d_c()
758 c[41 * stride] = CLIP(t22 - t41); in inv_dct64_1d_c()
759 c[42 * stride] = CLIP(t21 - t42a); in inv_dct64_1d_c()
760 c[43 * stride] = CLIP(t20 - t43); in inv_dct64_1d_c()
761 c[44 * stride] = CLIP(t19 - t44a); in inv_dct64_1d_c()
762 c[45 * stride] = CLIP(t18 - t45); in inv_dct64_1d_c()
763 c[46 * stride] = CLIP(t17 - t46a); in inv_dct64_1d_c()
764 c[47 * stride] = CLIP(t16 - t47); in inv_dct64_1d_c()
765 c[48 * stride] = CLIP(t15 - t48); in inv_dct64_1d_c()
766 c[49 * stride] = CLIP(t14 - t49a); in inv_dct64_1d_c()
767 c[50 * stride] = CLIP(t13 - t50); in inv_dct64_1d_c()
768 c[51 * stride] = CLIP(t12 - t51a); in inv_dct64_1d_c()
769 c[52 * stride] = CLIP(t11 - t52); in inv_dct64_1d_c()
770 c[53 * stride] = CLIP(t10 - t53a); in inv_dct64_1d_c()
771 c[54 * stride] = CLIP(t9 - t54); in inv_dct64_1d_c()
772 c[55 * stride] = CLIP(t8 - t55a); in inv_dct64_1d_c()
773 c[56 * stride] = CLIP(t7 - t56); in inv_dct64_1d_c()
774 c[57 * stride] = CLIP(t6 - t57a); in inv_dct64_1d_c()
775 c[58 * stride] = CLIP(t5 - t58); in inv_dct64_1d_c()
776 c[59 * stride] = CLIP(t4 - t59a); in inv_dct64_1d_c()
777 c[60 * stride] = CLIP(t3 - t60); in inv_dct64_1d_c()
778 c[61 * stride] = CLIP(t2 - t61a); in inv_dct64_1d_c()
779 c[62 * stride] = CLIP(t1 - t62); in inv_dct64_1d_c()
780 c[63 * stride] = CLIP(t0 - t63a); in inv_dct64_1d_c()
792 out[0 * out_s] = (( 1321 * in0 + (3803 - 4096) * in2 + in inv_adst4_1d_internal_c()
793 (2482 - 4096) * in3 + (3344 - 4096) * in1 + 2048) >> 12) + in inv_adst4_1d_internal_c()
795 out[1 * out_s] = (((2482 - 4096) * in0 - 1321 * in2 - in inv_adst4_1d_internal_c()
796 (3803 - 4096) * in3 + (3344 - 4096) * in1 + 2048) >> 12) + in inv_adst4_1d_internal_c()
797 in0 - in3 + in1; in inv_adst4_1d_internal_c()
798 out[2 * out_s] = (209 * (in0 - in2 + in3) + 128) >> 8; in inv_adst4_1d_internal_c()
799 out[3 * out_s] = (((3803 - 4096) * in0 + (2482 - 4096) * in2 - in inv_adst4_1d_internal_c()
800 1321 * in3 - (3344 - 4096) * in1 + 2048) >> 12) + in inv_adst4_1d_internal_c()
801 in0 + in2 - in1; in inv_adst4_1d_internal_c()
815 const int t0a = (((4076 - 4096) * in7 + 401 * in0 + 2048) >> 12) + in7; in inv_adst8_1d_internal_c()
816 const int t1a = (( 401 * in7 - (4076 - 4096) * in0 + 2048) >> 12) - in0; in inv_adst8_1d_internal_c()
817 const int t2a = (((3612 - 4096) * in5 + 1931 * in2 + 2048) >> 12) + in5; in inv_adst8_1d_internal_c()
818 const int t3a = (( 1931 * in5 - (3612 - 4096) * in2 + 2048) >> 12) - in2; in inv_adst8_1d_internal_c()
820 int t5a = ( 1583 * in3 - 1299 * in4 + 1024) >> 11; in inv_adst8_1d_internal_c()
821 int t6a = (( 1189 * in1 + (3920 - 4096) * in6 + 2048) >> 12) + in6; in inv_adst8_1d_internal_c()
822 int t7a = (((3920 - 4096) * in1 - 1189 * in6 + 2048) >> 12) + in1; in inv_adst8_1d_internal_c()
828 const int t4 = CLIP(t0a - t4a); in inv_adst8_1d_internal_c()
829 const int t5 = CLIP(t1a - t5a); in inv_adst8_1d_internal_c()
830 int t6 = CLIP(t2a - t6a); in inv_adst8_1d_internal_c()
831 int t7 = CLIP(t3a - t7a); in inv_adst8_1d_internal_c()
833 t4a = (((3784 - 4096) * t4 + 1567 * t5 + 2048) >> 12) + t4; in inv_adst8_1d_internal_c()
834 t5a = (( 1567 * t4 - (3784 - 4096) * t5 + 2048) >> 12) - t5; in inv_adst8_1d_internal_c()
835 t6a = (((3784 - 4096) * t7 - 1567 * t6 + 2048) >> 12) + t7; in inv_adst8_1d_internal_c()
836 t7a = (( 1567 * t7 + (3784 - 4096) * t6 + 2048) >> 12) + t6; in inv_adst8_1d_internal_c()
839 out[7 * out_s] = -CLIP(t1 + t3 ); in inv_adst8_1d_internal_c()
840 t2 = CLIP(t0 - t2 ); in inv_adst8_1d_internal_c()
841 t3 = CLIP(t1 - t3 ); in inv_adst8_1d_internal_c()
842 out[1 * out_s] = -CLIP(t4a + t6a); in inv_adst8_1d_internal_c()
844 t6 = CLIP(t4a - t6a); in inv_adst8_1d_internal_c()
845 t7 = CLIP(t5a - t7a); in inv_adst8_1d_internal_c()
847 out[3 * out_s] = -(((t2 + t3) * 181 + 128) >> 8); in inv_adst8_1d_internal_c()
848 out[4 * out_s] = ((t2 - t3) * 181 + 128) >> 8; in inv_adst8_1d_internal_c()
850 out[5 * out_s] = -(((t6 - t7) * 181 + 128) >> 8); in inv_adst8_1d_internal_c()
865 const int in12 = in[12 * in_s], in13 = in[13 * in_s]; in inv_adst16_1d_internal_c()
868 int t0 = ((in15 * (4091 - 4096) + in0 * 201 + 2048) >> 12) + in15; in inv_adst16_1d_internal_c()
869 int t1 = ((in15 * 201 - in0 * (4091 - 4096) + 2048) >> 12) - in0; in inv_adst16_1d_internal_c()
870 int t2 = ((in13 * (3973 - 4096) + in2 * 995 + 2048) >> 12) + in13; in inv_adst16_1d_internal_c()
871 int t3 = ((in13 * 995 - in2 * (3973 - 4096) + 2048) >> 12) - in2; in inv_adst16_1d_internal_c()
872 int t4 = ((in11 * (3703 - 4096) + in4 * 1751 + 2048) >> 12) + in11; in inv_adst16_1d_internal_c()
873 int t5 = ((in11 * 1751 - in4 * (3703 - 4096) + 2048) >> 12) - in4; in inv_adst16_1d_internal_c()
875 int t7 = (in9 * 1220 - in6 * 1645 + 1024) >> 11; in inv_adst16_1d_internal_c()
876 int t8 = ((in7 * 2751 + in8 * (3035 - 4096) + 2048) >> 12) + in8; in inv_adst16_1d_internal_c()
877 int t9 = ((in7 * (3035 - 4096) - in8 * 2751 + 2048) >> 12) + in7; in inv_adst16_1d_internal_c()
878 int t10 = ((in5 * 2106 + in10 * (3513 - 4096) + 2048) >> 12) + in10; in inv_adst16_1d_internal_c()
879 int t11 = ((in5 * (3513 - 4096) - in10 * 2106 + 2048) >> 12) + in5; in inv_adst16_1d_internal_c()
880 int t12 = ((in3 * 1380 + in12 * (3857 - 4096) + 2048) >> 12) + in12; in inv_adst16_1d_internal_c()
881 int t13 = ((in3 * (3857 - 4096) - in12 * 1380 + 2048) >> 12) + in3; in inv_adst16_1d_internal_c()
882 int t14 = ((in1 * 601 + in14 * (4052 - 4096) + 2048) >> 12) + in14; in inv_adst16_1d_internal_c()
883 int t15 = ((in1 * (4052 - 4096) - in14 * 601 + 2048) >> 12) + in1; in inv_adst16_1d_internal_c()
893 int t8a = CLIP(t0 - t8 ); in inv_adst16_1d_internal_c()
894 int t9a = CLIP(t1 - t9 ); in inv_adst16_1d_internal_c()
895 int t10a = CLIP(t2 - t10); in inv_adst16_1d_internal_c()
896 int t11a = CLIP(t3 - t11); in inv_adst16_1d_internal_c()
897 int t12a = CLIP(t4 - t12); in inv_adst16_1d_internal_c()
898 int t13a = CLIP(t5 - t13); in inv_adst16_1d_internal_c()
899 int t14a = CLIP(t6 - t14); in inv_adst16_1d_internal_c()
900 int t15a = CLIP(t7 - t15); in inv_adst16_1d_internal_c()
902 t8 = ((t8a * (4017 - 4096) + t9a * 799 + 2048) >> 12) + t8a; in inv_adst16_1d_internal_c()
903 t9 = ((t8a * 799 - t9a * (4017 - 4096) + 2048) >> 12) - t9a; in inv_adst16_1d_internal_c()
904 t10 = ((t10a * 2276 + t11a * (3406 - 4096) + 2048) >> 12) + t11a; in inv_adst16_1d_internal_c()
905 t11 = ((t10a * (3406 - 4096) - t11a * 2276 + 2048) >> 12) + t10a; in inv_adst16_1d_internal_c()
906 t12 = ((t13a * (4017 - 4096) - t12a * 799 + 2048) >> 12) + t13a; in inv_adst16_1d_internal_c()
907 t13 = ((t13a * 799 + t12a * (4017 - 4096) + 2048) >> 12) + t12a; in inv_adst16_1d_internal_c()
908 t14 = ((t15a * 2276 - t14a * (3406 - 4096) + 2048) >> 12) - t14a; in inv_adst16_1d_internal_c()
909 t15 = ((t15a * (3406 - 4096) + t14a * 2276 + 2048) >> 12) + t15a; in inv_adst16_1d_internal_c()
915 t4 = CLIP(t0a - t4a); in inv_adst16_1d_internal_c()
916 t5 = CLIP(t1a - t5a); in inv_adst16_1d_internal_c()
917 t6 = CLIP(t2a - t6a); in inv_adst16_1d_internal_c()
918 t7 = CLIP(t3a - t7a); in inv_adst16_1d_internal_c()
923 t12a = CLIP(t8 - t12); in inv_adst16_1d_internal_c()
924 t13a = CLIP(t9 - t13); in inv_adst16_1d_internal_c()
925 t14a = CLIP(t10 - t14); in inv_adst16_1d_internal_c()
926 t15a = CLIP(t11 - t15); in inv_adst16_1d_internal_c()
928 t4a = ((t4 * (3784 - 4096) + t5 * 1567 + 2048) >> 12) + t4; in inv_adst16_1d_internal_c()
929 t5a = ((t4 * 1567 - t5 * (3784 - 4096) + 2048) >> 12) - t5; in inv_adst16_1d_internal_c()
930 t6a = ((t7 * (3784 - 4096) - t6 * 1567 + 2048) >> 12) + t7; in inv_adst16_1d_internal_c()
931 t7a = ((t7 * 1567 + t6 * (3784 - 4096) + 2048) >> 12) + t6; in inv_adst16_1d_internal_c()
932 t12 = ((t12a * (3784 - 4096) + t13a * 1567 + 2048) >> 12) + t12a; in inv_adst16_1d_internal_c()
933 t13 = ((t12a * 1567 - t13a * (3784 - 4096) + 2048) >> 12) - t13a; in inv_adst16_1d_internal_c()
934 t14 = ((t15a * (3784 - 4096) - t14a * 1567 + 2048) >> 12) + t15a; in inv_adst16_1d_internal_c()
935 t15 = ((t15a * 1567 + t14a * (3784 - 4096) + 2048) >> 12) + t14a; in inv_adst16_1d_internal_c()
938 out[15 * out_s] = -CLIP(t1 + t3 ); in inv_adst16_1d_internal_c()
939 t2a = CLIP(t0 - t2 ); in inv_adst16_1d_internal_c()
940 t3a = CLIP(t1 - t3 ); in inv_adst16_1d_internal_c()
941 out[ 3 * out_s] = -CLIP(t4a + t6a ); in inv_adst16_1d_internal_c()
942 out[12 * out_s] = CLIP(t5a + t7a ); in inv_adst16_1d_internal_c()
943 t6 = CLIP(t4a - t6a ); in inv_adst16_1d_internal_c()
944 t7 = CLIP(t5a - t7a ); in inv_adst16_1d_internal_c()
945 out[ 1 * out_s] = -CLIP(t8a + t10a); in inv_adst16_1d_internal_c()
947 t10 = CLIP(t8a - t10a); in inv_adst16_1d_internal_c()
948 t11 = CLIP(t9a - t11a); in inv_adst16_1d_internal_c()
950 out[13 * out_s] = -CLIP(t13 + t15 ); in inv_adst16_1d_internal_c()
951 t14a = CLIP(t12 - t14 ); in inv_adst16_1d_internal_c()
952 t15a = CLIP(t13 - t15 ); in inv_adst16_1d_internal_c()
954 out[ 7 * out_s] = -(((t2a + t3a) * 181 + 128) >> 8); in inv_adst16_1d_internal_c()
955 out[ 8 * out_s] = ((t2a - t3a) * 181 + 128) >> 8; in inv_adst16_1d_internal_c()
957 out[11 * out_s] = -(((t6 - t7) * 181 + 128) >> 8); in inv_adst16_1d_internal_c()
959 out[ 9 * out_s] = -(((t10 - t11) * 181 + 128) >> 8); in inv_adst16_1d_internal_c()
960 out[ 5 * out_s] = -(((t14a + t15a) * 181 + 128) >> 8); in inv_adst16_1d_internal_c()
961 out[10 * out_s] = ((t14a - t15a) * 181 + 128) >> 8; in inv_adst16_1d_internal_c()
974 &c[(sz - 1) * stride], -stride); \
989 c[stride * i] = in + ((in * 1697 + 2048) >> 12); in inv_identity4_1d_c()
1072 const int t2 = in2 - in3; in dav1d_inv_wht4_1d_c()
1073 const int t4 = (t0 - t2) >> 1; in dav1d_inv_wht4_1d_c()
1074 const int t3 = t4 - in3; in dav1d_inv_wht4_1d_c()
1075 const int t1 = t4 - in1; in dav1d_inv_wht4_1d_c()
1077 c[0 * stride] = t0 - t3; in dav1d_inv_wht4_1d_c()