• Home
  • Raw
  • Download

Lines Matching +full:d3 +full:- +full:scale

35 // r0-r3   external parameters
42 // r10-r11 pointer to list of eob thresholds, eob threshold value,
46 // d0-d3 multiplication coefficients
47 // d4-d7 scratch registers
48 // d8-d15 unused in some transforms, used for scratch registers in others
49 // d16-v31 inputs/outputs of transforms
52 // - Trying to keep multiplication coefficients in registers across multiple
55 // - Use a simplified version of the transforms themselves for cases where
88 .int 101*8*(1<<16), 4095*8*(1<<16), 2967*8*(1<<16), -2824*8*(1<<16)
89 .int 1660*8*(1<<16), 3745*8*(1<<16), 3822*8*(1<<16), -1474*8*(1<<16)
92 .int 4036*8*(1<<16), -700*8*(1<<16), 2359*8*(1<<16), 3349*8*(1<<16)
93 .int 3461*8*(1<<16), -2191*8*(1<<16), 897*8*(1<<16), 3996*8*(1<<16)
94 .int -3166, -2598, -799, -4017
96 .int 501*8*(1<<16), 4065*8*(1<<16), 3229*8*(1<<16), -2520*8*(1<<16)
97 .int 2019*8*(1<<16), 3564*8*(1<<16), 3948*8*(1<<16), -1092*8*(1<<16)
100 .int 4085*8*(1<<16), -301*8*(1<<16), 2675*8*(1<<16), 3102*8*(1<<16)
101 .int 3659*8*(1<<16), -1842*8*(1<<16), 1285*8*(1<<16), 3889*8*(1<<16)
102 .int -3920, -1189, -3406, -2276
232 load_add_store4 d2, d3, q9, , , , , , , \dst, \src
238 load_add_store4 d2, d3, q15, q5, q13, q12, q11, d20, d21, \dst, \src
251 load_add_store4 d2, d3, q9, , , , , , , \dst, \src, \shiftbits
266 load_add_store4 d2, d3, q9, q0, q8, , , , , \dst, \src, \shiftbits
305 vld1.16 {d3}, [r0, :64], r1
317 vst1.16 {d3}, [r0, :64], r1
530 movt r12, #(5793-4096)*8
544 push {r4-r5,lr}
545 vpush {q4-q5}
569 vld1.16 {d3}, [r0, :64], r1
598 vld1.16 {d3}, [r0, :64], r1
616 vpop {q4-q5}
617 pop {r4-r5,pc}
622 push {r4-r5,lr}
623 vpush {q4-q5}
641 vld1.16 {d3}, [r0, :64], r1
682 vmul_vmls q2, \r1, \r7, d2[0], d2[1] // -> t4a
683 vmul_vmla q3, \r1, \r7, d2[1], d2[0] // -> t7a
684 vmul_vmls q6, \r5, \r3, d3[0], d3[1] // -> t5a
685 vmul_vmla q7, \r5, \r3, d3[1], d3[0] // -> t6a
703 vmul_vmls q7, \r3, \r1, d0[0], d0[0] // -> t5
704 vmul_vmla q6, \r3, \r1, d0[0], d0[0] // -> t6
731 vmul_vmls d4, \r1, \r7, d2[0], d2[1] // -> t4a
732 vmul_vmla d5, \r1, \r7, d2[1], d2[0] // -> t7a
733 vmul_vmls d6, \r5, \r3, d3[0], d3[1] // -> t5a
734 vmul_vmla d7, \r5, \r3, d3[1], d3[0] // -> t6a
752 vmul_vmls d6, \r3, \r1, d0[0], d0[0] // -> t5
753 vmul_vmla d7, \r3, \r1, d0[0], d0[0] // -> t6
789 vmul_vmla q2, q9, q14, d3[0], d3[1]
792 vmul_vmls q3, q9, q14, d3[1], d3[0]
852 vmul_vmla q10, q2, q4, d0[0], d0[0] // -> out3 (q11 or q12)
853 vmul_vmls q6, q2, q4, d0[0], d0[0] // -> out4 (q12 or q11)
854 vmul_vmls q12, q3, q5, d0[0], d0[0] // -> out5 (q13 or q10)
856 vmul_vmla q10, q3, q5, d0[0], d0[0] // -> out2 (q10 or q13)
912 vpush {q8-q11}
931 vpop {q8-q11}
947 vpop {q4-q7}
948 pop {r4-r5,r7,r10,pc}
956 push {r4-r5,r7,r10,lr}
957 vpush {q4-q7}
1018 vpop {q4-q7}
1019 pop {r4-r5,r7,r10,pc}
1078 vpop {q4-q7}
1079 pop {r4-r5,r7,r10,pc}
1087 push {r4-r5,r7,r10,lr}
1088 vpush {q4-q7}
1137 vmul_vmls d4, d17, d31, d0[0], d0[1] // -> t8a
1138 vmul_vmla d5, d17, d31, d0[1], d0[0] // -> t15a
1139 vmul_vmls d6, d25, d23, d1[0], d1[1] // -> t9a
1142 vmul_vmla d4, d25, d23, d1[1], d1[0] // -> t14a
1143 vmul_vmls d5, d21, d27, d2[0], d2[1] // -> t10a
1146 vmul_vmla d6, d21, d27, d2[1], d2[0] // -> t13a
1147 vmul_vmls d4, d29, d19, d3[0], d3[1] // -> t11a
1150 vmul_vmla d5, d29, d19, d3[1], d3[0] // -> t12a
1172 vmul_vmls d6, d5, d4, d1[0], d1[1] // -> t9a
1173 vmul_vmla d7, d5, d4, d1[1], d1[0] // -> t14a
1177 vmul_vmls d6, d29, d23, d1[0], d1[1] // -> t13a
1178 vmul_vmla d7, d29, d23, d1[1], d1[0] // -> t10a
1199 vmul_vmls d6, d5, d4, d0[0], d0[0] // -> t11
1200 vmul_vmla d7, d5, d4, d0[0], d0[0] // -> t12
1201 vmul_vmls d4, d25, d21, d0[0], d0[0] // -> t10a
1205 vmul_vmla d5, d25, d21, d0[0], d0[0] // -> t13a
1236 vmul_vmla d4, d31, d16, d0[0], d0[1] // -> t0
1237 vmul_vmls d6, d31, d16, d0[1], d0[0] // -> t1
1238 vmul_vmla d8, d29, d18, d1[0], d1[1] // -> t2
1241 vmul_vmls d4, d29, d18, d1[1], d1[0] // -> t3
1242 vmul_vmla d6, d27, d20, d2[0], d2[1] // -> t4
1245 vmul_vmls d8, d27, d20, d2[1], d2[0] // -> t5
1246 vmul_vmla d4, d25, d22, d3[0], d3[1] // -> t6
1249 vmul_vmls d6, d25, d22, d3[1], d3[0] // -> t7
1252 vmul_vmla d8, d23, d24, d0[0], d0[1] // -> t8
1255 vmul_vmls d4, d23, d24, d0[1], d0[0] // -> t9
1256 vmul_vmla d6, d21, d26, d1[0], d1[1] // -> t10
1259 vmul_vmls d8, d21, d26, d1[1], d1[0] // -> t11
1260 vmul_vmla d4, d19, d28, d2[0], d2[1] // -> t12
1263 vmul_vmls d6, d19, d28, d2[1], d2[0] // -> t13
1264 vmul_vmla d8, d17, d30, d3[0], d3[1] // -> t14
1267 vmul_vmls d4, d17, d30, d3[1], d3[0] // -> t15
1300 vmul_vmla d4, d5, d7, d2[1], d2[0] // -> t8
1301 vmul_vmls d6, d5, d7, d2[0], d2[1] // -> t9
1302 vmul_vmla d8, d18, d29, d3[1], d3[0] // -> t10
1305 vmul_vmls d4, d18, d29, d3[0], d3[1] // -> t11
1306 vmul_vmls d6, d27, d20, d2[1], d2[0] // -> t12
1309 vmul_vmla d8, d27, d20, d2[0], d2[1] // -> t13
1310 vmul_vmls d4, d25, d22, d3[1], d3[0] // -> t14
1313 vmul_vmla d6, d25, d22, d3[0], d3[1] // -> t15
1319 vqsub.s32 d3, d31, d26 // t5
1334 .irp r, d2, d16, d3, d31, d21, d23, d26, d24, d19, d17, d28, d30, d27, d18, d20, d29
1337 .irp r, d2, d16, d3, d31, d21, d23, d26, d24, d19, d17, d28, d30, d27, d18, d20, d29
1341 vmul_vmla d4, d2, d3, d1[1], d1[0] // -> t4a
1342 vmul_vmls d6, d2, d3, d1[0], d1[1] // -> t5a
1343 vmul_vmls d8, d24, d23, d1[1], d1[0] // -> t6a
1346 vmul_vmla d4, d24, d23, d1[0], d1[1] // -> t7a
1347 vmul_vmla d6, d17, d30, d1[1], d1[0] // -> t12
1350 vmul_vmls d8, d17, d30, d1[0], d1[1] // -> t13
1351 vmul_vmls d4, d29, d18, d1[1], d1[0] // -> t14
1353 vmul_vmla d6, d29, d18, d1[0], d1[1] // -> t15
1370 vqsub.s32 d3, d29, d18 // t15a
1387 .irp r, d2, d21, d3, d26, d27, d20, d22, d23
1390 .irp r, d2, d21, d3, d26, d27, d20, d22, d23
1399 vmul_vmls d24, d2, d21, d0[0], d0[0] // -> out8 (d24 or d23)
1400 vmul_vmla d4, d2, d21, d0[0], d0[0] // -> out7 (d23 or d24)
1401 vmul_vmla d6, d26, d3, d0[0], d0[0] // -> out5 (d21 or d26)
1406 vmul_vmls d8, d26, d3, d0[0], d0[0] // -> out10 (d26 or d21)
1407 vmul_vmla d2, d22, d23, d0[0], d0[0] // -> out4 (d20 or d27)
1410 vmul_vmls d8, d22, d23, d0[0], d0[0] // -> out11 (d27 or d20)
1411 vmul_vmla d22, d27, d20, d0[0], d0[0] // -> out6 (d22 or d25)
1412 vmul_vmls d6, d27, d20, d0[0], d0[0] // -> out9 (d25 or d22)
1442 movt r12, #2*(5793-4096)*8
1468 .macro def_horz_16 scale=0, shift=2, suffix argument
1472 .if \scale
1480 .if \scale
1492 .if \scale
1508 def_horz_16 scale=1, shift=1, suffix=_scale
1509 def_horz_16 scale=0, shift=2
1527 mov r8, #(16 - \i)
1557 vpop {q4-q7}
1558 pop {r4-r11,pc}
1574 push {r4-r11,lr}
1575 vpush {q4-q7}
1632 vpush {q8-q11}
1640 vpush {q8-q9}
1641 vpush {q8-q9}
1667 vpop {q10-q11}
1672 vpop {q10-q11}
1679 vpop {q4-q7}
1680 pop {r4-r11,pc}
1753 vpush {q8-q9}
1764 vpop {q10-q11}
1770 vpop {q4-q7}
1771 pop {r4-r11,pc}
1791 push {r4-r11,lr}
1792 vpush {q4-q7}
1847 mov r8, #(8 - \i)
1883 vpop {q4-q7}
1884 pop {r4-r11,pc}
1895 mov r8, #(16 - \i)
1949 vpop {q4-q7}
1950 pop {r4-r11,pc}
1970 push {r4-r11,lr}
1971 vpush {q4-q7}
2022 vmul_vmls d4, d16, d31, d0[0], d0[1] // -> t16a
2023 vmul_vmla d6, d16, d31, d0[1], d0[0] // -> t31a
2024 vmul_vmls d8, d24, d23, d1[0], d1[1] // -> t17a
2027 vmul_vmla d4, d24, d23, d1[1], d1[0] // -> t30a
2028 vmul_vmls d6, d20, d27, d2[0], d2[1] // -> t18a
2031 vmul_vmla d8, d20, d27, d2[1], d2[0] // -> t29a
2032 vmul_vmls d4, d28, d19, d3[0], d3[1] // -> t19a
2035 vmul_vmla d6, d28, d19, d3[1], d3[0] // -> t28a
2038 vmul_vmls d8, d18, d29, d0[0], d0[1] // -> t20a
2041 vmul_vmla d4, d18, d29, d0[1], d0[0] // -> t27a
2042 vmul_vmls d6, d26, d21, d1[0], d1[1] // -> t21a
2045 vmul_vmla d8, d26, d21, d1[1], d1[0] // -> t26a
2046 vmul_vmls d4, d22, d25, d2[0], d2[1] // -> t22a
2049 vmul_vmla d6, d22, d25, d2[1], d2[0] // -> t25a
2050 vmul_vmls d8, d30, d17, d3[0], d3[1] // -> t23a
2053 vmul_vmla d4, d30, d17, d3[1], d3[0] // -> t24a
2086 vmul_vmls d4, d7, d5, d2[0], d2[1] // -> t17a
2087 vmul_vmla d6, d7, d5, d2[1], d2[0] // -> t30a
2088 vmul_vmla d8, d19, d24, d2[1], d2[0] // -> t18a
2091 vneg.s32 d8, d8 // -> t18a
2092 vmul_vmls d5, d19, d24, d2[0], d2[1] // -> t29a
2093 vmul_vmls d4, d22, d18, d3[0], d3[1] // -> t21a
2096 vmul_vmla d6, d22, d18, d3[1], d3[0] // -> t26a
2097 vmul_vmla d8, d17, d20, d3[1], d3[0] // -> t22a
2100 vneg.s32 d8, d8 // -> t22a
2101 vmul_vmls d5, d17, d20, d3[0], d3[1] // -> t25a
2107 vqsub.s32 d3, d21, d19 // t18
2122 .irp r, d2, d27, d3, d21, d24, d16, d19, d30, d28, d17, d23, d26, d22, d20, d29, d31
2125 .irp r, d2, d27, d3, d21, d24, d16, d19, d30, d28, d17, d23, d26, d22, d20, d29, d31
2129 vmul_vmls d4, d2, d3, d1[0], d1[1] // -> t18a
2130 vmul_vmla d6, d2, d3, d1[1], d1[0] // -> t29a
2131 vmul_vmls d8, d29, d24, d1[0], d1[1] // -> t19
2134 vmul_vmla d5, d29, d24, d1[1], d1[0] // -> t28
2135 vmul_vmla d4, d26, d19, d1[1], d1[0] // -> t20
2138 vneg.s32 d4, d4 // -> t20
2139 vmul_vmls d6, d26, d19, d1[0], d1[1] // -> t27
2140 vmul_vmla d8, d20, d28, d1[1], d1[0] // -> t21a
2143 vneg.s32 d8, d8 // -> t21a
2144 vmul_vmls d5, d20, d28, d1[0], d1[1] // -> t26a
2150 vqsub.s32 d3, d31, d23 // t24
2166 .irp r, d2, d16, d3, d31, d23, d17, d30, d21, d27, d18, d19, d26, d29, d25, d28, d24
2169 .irp r, d2, d16, d3, d31, d23, d17, d30, d21, d27, d18, d19, d26, d29, d25, d28, d24
2173 vmul_vmls d4, d24, d26, d0[0], d0[0] // -> t20
2174 vmul_vmla d6, d24, d26, d0[0], d0[0] // -> t27
2178 vmul_vmla d4, d25, d27, d0[0], d0[0] // -> t26a
2179 vmul_vmls d6, d25, d27, d0[0], d0[0] // -> t21a
2183 vmul_vmls d24, d21, d23, d0[0], d0[0] // -> t22
2184 vmul_vmla d4, d21, d23, d0[0], d0[0] // -> t25
2189 vmul_vmls d4, d3, d2, d0[0], d0[0] // -> t23a
2190 vmul_vmla d6, d3, d2, d0[0], d0[0] // -> t24a
2197 .macro def_horz_32 scale=0, shift=2, suffix argument
2202 .if \scale
2213 .if \scale
2256 .if \scale
2279 vqsub.s32 d12, d3, \r3
2280 vqadd.s32 d3, d3, \r3
2292 vqrshrn.s32 d3, q3, #\shift
2310 def_horz_32 scale=0, shift=2
2311 def_horz_32 scale=1, shift=1, suffix=_scale
2314 push {r10-r11,lr}
2350 vld1.16 {d3}, [r10, :64], r1
2365 vst1.16 {d3}, [r6, :64], r1
2378 pop {r10-r11,pc}
2398 push {r4-r7,lr}
2399 vpush {q6-q7}
2440 vpop {q6-q7}
2441 pop {r4-r7,pc}
2452 push {r4-r9,lr}
2453 vpush {q6-q7}
2456 movt r9, #2*(5793-4096)*8
2513 vpop {q6-q7}
2514 pop {r4-r9,pc}
2523 push {r4-r5,lr}
2524 vpush {q6-q7}
2585 vpop {q6-q7}
2586 pop {r4-r5,pc}
2596 push {r4-r11,lr}
2597 vpush {q4-q7}
2605 mov r8, #(32 - \i)
2637 vpop {q4-q7}
2638 pop {r4-r11,pc}
2644 push {r4-r11,lr}
2645 vpush {q4-q7}
2655 mov r8, #(32 - \i)
2686 vpop {q4-q7}
2687 pop {r4-r11,pc}
2693 push {r4-r11,lr}
2694 vpush {q4-q7}
2704 mov r8, #(16 - \i)
2735 vpop {q4-q7}
2736 pop {r4-r11,pc}
2742 push {r4-r11,lr}
2743 vpush {q4-q7}
2801 vpop {q4-q7}
2802 pop {r4-r11,pc}
2808 push {r4-r11,lr}
2809 vpush {q4-q7}
2819 mov r8, #(8 - \i)
2861 vpop {q4-q7}
2862 pop {r4-r11,pc}
2866 // in1/31/17/15 -> t32a/33/34a/35/60/61a/62/63a
2867 // in7/25/23/ 9 -> t56a/57/58a/59/36/37a/38/39a
2868 // in5/27/21/11 -> t40a/41/42a/43/52/53a/54/55a
2869 // in3/29/19/13 -> t48a/49/50a/51/44/45a/46/47a
2879 vqrdmulh.s32 d20, d19, d3[0] // t60a
2880 vqrdmulh.s32 d19, d19, d3[1] // t35a
2900 vmul_vmla d4, d29, d26, d0[0], d0[1] // -> t34a
2901 vmul_vmls d6, d29, d26, d0[1], d0[0] // -> t61a
2903 vmul_vmls d7, d30, d25, d0[1], d0[0] // -> t33a
2905 vmul_vmla d4, d30, d25, d0[0], d0[1] // -> t62a
2926 vmul_vmla d4, d21, d18, d1[0], d1[1] // -> t61a
2927 vmul_vmls d6, d21, d18, d1[1], d1[0] // -> t34a
2928 vmul_vmla d7, d20, d19, d1[0], d1[1] // -> t60
2931 vmul_vmls d4, d20, d19, d1[1], d1[0] // -> t35
2974 vmul_vmla d4, d27, d25, d1[1], d1[0] // -> t56a
2975 vmul_vmls d6, d27, d25, d1[0], d1[1] // -> t39a
2976 vmul_vmla d7, d31, d28, d1[1], d1[0] // -> t40a
2980 vmul_vmls d4, d31, d28, d1[0], d1[1] // -> t55a
3000 vmul_vmls d4, d21, d18, d0[0], d0[0] // -> t40a
3001 vmul_vmla d6, d21, d18, d0[0], d0[0] // -> t55a
3002 vmul_vmls d7, d20, d19, d0[0], d0[0] // -> t47
3005 vmul_vmla d4, d20, d19, d0[0], d0[0] // -> t48
3074 .macro def_dct64_func suffix, clear=0, scale=0
3078 push {r10-r11,lr}
3082 movdup_if d0, r12, 2896*8*(1<<16), \scale
3088 scale_if \scale, d0[0], q8, q9, q10, q11
3105 movdup_if d0, r12, 2896*8*(1<<16), \scale
3112 scale_if \scale, d0[0], q8, q9, q10, q11
3119 mov r9, #-8
3125 vld1.32 {d3}, [r6, :64]!
3129 vqadd.s32 d7, d3, \r1
3130 vqsub.s32 \r1, d3, \r1
3147 vqadd.s32 d3, d5, \r3
3151 vmin.s32 d3, d3, d1
3155 vmax.s32 d3, d3, d0
3159 vst1.32 {d3}, [r6, :64]!
3173 movdup_if d0, lr, 2896*8*(1<<16), \scale
3187 scale_if \scale, d0[0], q8, q9
3189 movdup_if d0, lr, 2896*8*(1<<16), \scale
3203 scale_if \scale, d0[0], q8, q9
3205 movdup_if d0, lr, 2896*8*(1<<16), \scale
3221 scale_if \scale, d0[0], q8, q9
3223 movdup_if d0, lr, 2896*8*(1<<16), \scale
3237 scale_if \scale, d0[0], q8, q9
3245 pop {r10-r11,pc}
3250 def_dct64_func _clear_scale, clear=1, scale=1
3256 add r8, sp, #2*4*(64 - 4)
3259 push {r10-r11,lr}
3262 mov r11, #-2*4*4
3286 vqadd.s32 d3, \src6, \src7
3309 pop {r10-r11,pc}
3316 add r8, sp, #2*4*(64 - 4)
3320 push {r10-r11,lr}
3323 mov r11, #-2*4*4
3339 vld1.16 {d3}, [r9, :64]
3365 pop {r10-r11,pc}
3371 push {r4-r11,lr}
3372 vpush {q4-q7}
3382 mov r8, #(32 - \i)
3390 mov r9, #-2 // shift
3418 vpop {q4-q7}
3419 pop {r4-r11,pc}
3425 push {r4-r11,lr}
3426 vpush {q4-q7}
3436 mov r8, #(32 - \i)
3444 mov r9, #-1 // shift
3471 vpop {q4-q7}
3472 pop {r4-r11,pc}
3478 push {r4-r11,lr}
3479 vpush {q4-q7}
3490 mov r8, #(32 - \i)
3523 vpop {q4-q7}
3524 pop {r4-r11,pc}
3530 push {r4-r11,lr}
3531 vpush {q4-q7}
3541 mov r8, #(16 - \i)
3549 mov r9, #-2 // shift
3577 vpop {q4-q7}
3578 pop {r4-r11,pc}
3584 push {r4-r11,lr}
3585 vpush {q4-q7}
3597 mov r8, #(32 - \i)
3630 vpop {q4-q7}
3631 pop {r4-r11,pc}