Lines Matching +full:- +full:lp

2  * Use of this source code is governed by a BSD-style license that can be
15 lr42->b0 = q.b0; in lr42_set()
16 lr42->b1 = q.b1; in lr42_set()
17 lr42->b2 = q.b2; in lr42_set()
18 lr42->a1 = q.a1; in lr42_set()
19 lr42->a2 = q.a2; in lr42_set()
25 * data0 --+-- lp --> data0
27 * \-- hp --> data1
31 static void lr42_split(struct lr42 *lp, struct lr42 *hp, int count, in lr42_split() argument
35 float32x4_t x1 = { lp->x1L, hp->x1L, lp->x1R, hp->x1R }; in lr42_split()
36 float32x4_t x2 = { lp->x2L, hp->x2L, lp->x2R, hp->x2R }; in lr42_split()
37 float32x4_t y1 = { lp->y1L, hp->y1L, lp->y1R, hp->y1R }; in lr42_split()
38 float32x4_t y2 = { lp->y2L, hp->y2L, lp->y2R, hp->y2R }; in lr42_split()
39 float32x4_t z1 = { lp->z1L, hp->z1L, lp->z1R, hp->z1R }; in lr42_split()
40 float32x4_t z2 = { lp->z2L, hp->z2L, lp->z2R, hp->z2R }; in lr42_split()
41 float32x4_t b0 = { lp->b0, hp->b0, lp->b0, hp->b0 }; in lr42_split()
42 float32x4_t b1 = { lp->b1, hp->b1, lp->b1, hp->b1 }; in lr42_split()
43 float32x4_t b2 = { lp->b2, hp->b2, lp->b2, hp->b2 }; in lr42_split()
44 float32x4_t a1 = { lp->a1, hp->a1, lp->a1, hp->a1 }; in lr42_split()
45 float32x4_t a2 = { lp->a2, hp->a2, lp->a2, hp->a2 }; in lr42_split()
47 // clang-format off in lr42_split()
100 // clang-format on in lr42_split()
102 lp->x1L = x1[0]; in lr42_split()
103 lp->x1R = x1[2]; in lr42_split()
104 lp->x2L = x2[0]; in lr42_split()
105 lp->x2R = x2[2]; in lr42_split()
106 lp->y1L = y1[0]; in lr42_split()
107 lp->y1R = y1[2]; in lr42_split()
108 lp->y2L = y2[0]; in lr42_split()
109 lp->y2R = y2[2]; in lr42_split()
110 lp->z1L = z1[0]; in lr42_split()
111 lp->z1R = z1[2]; in lr42_split()
112 lp->z2L = z2[0]; in lr42_split()
113 lp->z2R = z2[2]; in lr42_split()
115 hp->x1L = x1[1]; in lr42_split()
116 hp->x1R = x1[3]; in lr42_split()
117 hp->x2L = x2[1]; in lr42_split()
118 hp->x2R = x2[3]; in lr42_split()
119 hp->y1L = y1[1]; in lr42_split()
120 hp->y1R = y1[3]; in lr42_split()
121 hp->y2L = y2[1]; in lr42_split()
122 hp->y2R = y2[3]; in lr42_split()
123 hp->z1L = z1[1]; in lr42_split()
124 hp->z1R = z1[3]; in lr42_split()
125 hp->z2L = z2[1]; in lr42_split()
126 hp->z2R = z2[3]; in lr42_split()
130 static void lr42_split(struct lr42 *lp, struct lr42 *hp, int count, in lr42_split() argument
134 __m128 x1 = { lp->x1L, hp->x1L, lp->x1R, hp->x1R }; in lr42_split()
135 __m128 x2 = { lp->x2L, hp->x2L, lp->x2R, hp->x2R }; in lr42_split()
136 __m128 y1 = { lp->y1L, hp->y1L, lp->y1R, hp->y1R }; in lr42_split()
137 __m128 y2 = { lp->y2L, hp->y2L, lp->y2R, hp->y2R }; in lr42_split()
138 __m128 z1 = { lp->z1L, hp->z1L, lp->z1R, hp->z1R }; in lr42_split()
139 __m128 z2 = { lp->z2L, hp->z2L, lp->z2R, hp->z2R }; in lr42_split()
140 __m128 b0 = { lp->b0, hp->b0, lp->b0, hp->b0 }; in lr42_split()
141 __m128 b1 = { lp->b1, hp->b1, lp->b1, hp->b1 }; in lr42_split()
142 __m128 b2 = { lp->b2, hp->b2, lp->b2, hp->b2 }; in lr42_split()
143 __m128 a1 = { lp->a1, hp->a1, lp->a1, hp->a1 }; in lr42_split()
144 __m128 a2 = { lp->a2, hp->a2, lp->a2, hp->a2 }; in lr42_split()
146 // clang-format off in lr42_split()
216 // clang-format on in lr42_split()
218 lp->x1L = x1[0]; in lr42_split()
219 lp->x1R = x1[2]; in lr42_split()
220 lp->x2L = x2[0]; in lr42_split()
221 lp->x2R = x2[2]; in lr42_split()
222 lp->y1L = y1[0]; in lr42_split()
223 lp->y1R = y1[2]; in lr42_split()
224 lp->y2L = y2[0]; in lr42_split()
225 lp->y2R = y2[2]; in lr42_split()
226 lp->z1L = z1[0]; in lr42_split()
227 lp->z1R = z1[2]; in lr42_split()
228 lp->z2L = z2[0]; in lr42_split()
229 lp->z2R = z2[2]; in lr42_split()
231 hp->x1L = x1[1]; in lr42_split()
232 hp->x1R = x1[3]; in lr42_split()
233 hp->x2L = x2[1]; in lr42_split()
234 hp->x2R = x2[3]; in lr42_split()
235 hp->y1L = y1[1]; in lr42_split()
236 hp->y1R = y1[3]; in lr42_split()
237 hp->y2L = y2[1]; in lr42_split()
238 hp->y2R = y2[3]; in lr42_split()
239 hp->z1L = z1[1]; in lr42_split()
240 hp->z1R = z1[3]; in lr42_split()
241 hp->z2L = z2[1]; in lr42_split()
242 hp->z2R = z2[3]; in lr42_split()
245 static void lr42_split(struct lr42 *lp, struct lr42 *hp, int count, in lr42_split() argument
249 float lx1L = lp->x1L, lx1R = lp->x1R; in lr42_split()
250 float lx2L = lp->x2L, lx2R = lp->x2R; in lr42_split()
251 float ly1L = lp->y1L, ly1R = lp->y1R; in lr42_split()
252 float ly2L = lp->y2L, ly2R = lp->y2R; in lr42_split()
253 float lz1L = lp->z1L, lz1R = lp->z1R; in lr42_split()
254 float lz2L = lp->z2L, lz2R = lp->z2R; in lr42_split()
255 float lb0 = lp->b0; in lr42_split()
256 float lb1 = lp->b1; in lr42_split()
257 float lb2 = lp->b2; in lr42_split()
258 float la1 = lp->a1; in lr42_split()
259 float la2 = lp->a2; in lr42_split()
261 float hx1L = hp->x1L, hx1R = hp->x1R; in lr42_split()
262 float hx2L = hp->x2L, hx2R = hp->x2R; in lr42_split()
263 float hy1L = hp->y1L, hy1R = hp->y1R; in lr42_split()
264 float hy2L = hp->y2L, hy2R = hp->y2R; in lr42_split()
265 float hz1L = hp->z1L, hz1R = hp->z1R; in lr42_split()
266 float hz2L = hp->z2L, hz2R = hp->z2R; in lr42_split()
267 float hb0 = hp->b0; in lr42_split()
268 float hb1 = hp->b1; in lr42_split()
269 float hb2 = hp->b2; in lr42_split()
270 float ha1 = hp->a1; in lr42_split()
271 float ha2 = hp->a2; in lr42_split()
278 yL = lb0 * xL + lb1 * lx1L + lb2 * lx2L - la1 * ly1L - in lr42_split()
280 yR = lb0 * xR + lb1 * lx1R + lb2 * lx2R - la1 * ly1R - in lr42_split()
282 zL = lb0 * yL + lb1 * ly1L + lb2 * ly2L - la1 * lz1L - in lr42_split()
284 zR = lb0 * yR + lb1 * ly1R + lb2 * ly2R - la1 * lz1R - in lr42_split()
301 yL = hb0 * xL + hb1 * hx1L + hb2 * hx2L - ha1 * hy1L - in lr42_split()
303 yR = hb0 * xR + hb1 * hx1R + hb2 * hx2R - ha1 * hy1R - in lr42_split()
305 zL = hb0 * yL + hb1 * hy1L + hb2 * hy2L - ha1 * hz1L - in lr42_split()
307 zR = hb0 * yR + hb1 * hy1R + hb2 * hy2R - ha1 * hz1R - in lr42_split()
325 lp->x1L = lx1L; in lr42_split()
326 lp->x1R = lx1R; in lr42_split()
327 lp->x2L = lx2L; in lr42_split()
328 lp->x2R = lx2R; in lr42_split()
329 lp->y1L = ly1L; in lr42_split()
330 lp->y1R = ly1R; in lr42_split()
331 lp->y2L = ly2L; in lr42_split()
332 lp->y2R = ly2R; in lr42_split()
333 lp->z1L = lz1L; in lr42_split()
334 lp->z1R = lz1R; in lr42_split()
335 lp->z2L = lz2L; in lr42_split()
336 lp->z2R = lz2R; in lr42_split()
338 hp->x1L = hx1L; in lr42_split()
339 hp->x1R = hx1R; in lr42_split()
340 hp->x2L = hx2L; in lr42_split()
341 hp->x2R = hx2R; in lr42_split()
342 hp->y1L = hy1L; in lr42_split()
343 hp->y1R = hy1R; in lr42_split()
344 hp->y2L = hy2L; in lr42_split()
345 hp->y2R = hy2R; in lr42_split()
346 hp->z1L = hz1L; in lr42_split()
347 hp->z1R = hz1R; in lr42_split()
348 hp->z2L = hz2L; in lr42_split()
349 hp->z2R = hz2R; in lr42_split()
356 * data --+-- lp --+--> data
358 * \-- hp --/
362 static void lr42_merge(struct lr42 *lp, struct lr42 *hp, int count, in lr42_merge() argument
365 float32x4_t x1 = { lp->x1L, hp->x1L, lp->x1R, hp->x1R }; in lr42_merge()
366 float32x4_t x2 = { lp->x2L, hp->x2L, lp->x2R, hp->x2R }; in lr42_merge()
367 float32x4_t y1 = { lp->y1L, hp->y1L, lp->y1R, hp->y1R }; in lr42_merge()
368 float32x4_t y2 = { lp->y2L, hp->y2L, lp->y2R, hp->y2R }; in lr42_merge()
369 float32x4_t z1 = { lp->z1L, hp->z1L, lp->z1R, hp->z1R }; in lr42_merge()
370 float32x4_t z2 = { lp->z2L, hp->z2L, lp->z2R, hp->z2R }; in lr42_merge()
371 float32x4_t b0 = { lp->b0, hp->b0, lp->b0, hp->b0 }; in lr42_merge()
372 float32x4_t b1 = { lp->b1, hp->b1, lp->b1, hp->b1 }; in lr42_merge()
373 float32x4_t b2 = { lp->b2, hp->b2, lp->b2, hp->b2 }; in lr42_merge()
374 float32x4_t a1 = { lp->a1, hp->a1, lp->a1, hp->a1 }; in lr42_merge()
375 float32x4_t a2 = { lp->a2, hp->a2, lp->a2, hp->a2 }; in lr42_merge()
377 // clang-format off in lr42_merge()
425 // clang-format on in lr42_merge()
427 lp->x1L = x1[0]; in lr42_merge()
428 lp->x1R = x1[2]; in lr42_merge()
429 lp->x2L = x2[0]; in lr42_merge()
430 lp->x2R = x2[2]; in lr42_merge()
431 lp->y1L = y1[0]; in lr42_merge()
432 lp->y1R = y1[2]; in lr42_merge()
433 lp->y2L = y2[0]; in lr42_merge()
434 lp->y2R = y2[2]; in lr42_merge()
435 lp->z1L = z1[0]; in lr42_merge()
436 lp->z1R = z1[2]; in lr42_merge()
437 lp->z2L = z2[0]; in lr42_merge()
438 lp->z2R = z2[2]; in lr42_merge()
440 hp->x1L = x1[1]; in lr42_merge()
441 hp->x1R = x1[3]; in lr42_merge()
442 hp->x2L = x2[1]; in lr42_merge()
443 hp->x2R = x2[3]; in lr42_merge()
444 hp->y1L = y1[1]; in lr42_merge()
445 hp->y1R = y1[3]; in lr42_merge()
446 hp->y2L = y2[1]; in lr42_merge()
447 hp->y2R = y2[3]; in lr42_merge()
448 hp->z1L = z1[1]; in lr42_merge()
449 hp->z1R = z1[3]; in lr42_merge()
450 hp->z2L = z2[1]; in lr42_merge()
451 hp->z2R = z2[3]; in lr42_merge()
455 static void lr42_merge(struct lr42 *lp, struct lr42 *hp, int count, in lr42_merge() argument
458 __m128 x1 = { lp->x1L, hp->x1L, lp->x1R, hp->x1R }; in lr42_merge()
459 __m128 x2 = { lp->x2L, hp->x2L, lp->x2R, hp->x2R }; in lr42_merge()
460 __m128 y1 = { lp->y1L, hp->y1L, lp->y1R, hp->y1R }; in lr42_merge()
461 __m128 y2 = { lp->y2L, hp->y2L, lp->y2R, hp->y2R }; in lr42_merge()
462 __m128 z1 = { lp->z1L, hp->z1L, lp->z1R, hp->z1R }; in lr42_merge()
463 __m128 z2 = { lp->z2L, hp->z2L, lp->z2R, hp->z2R }; in lr42_merge()
464 __m128 b0 = { lp->b0, hp->b0, lp->b0, hp->b0 }; in lr42_merge()
465 __m128 b1 = { lp->b1, hp->b1, lp->b1, hp->b1 }; in lr42_merge()
466 __m128 b2 = { lp->b2, hp->b2, lp->b2, hp->b2 }; in lr42_merge()
467 __m128 a1 = { lp->a1, hp->a1, lp->a1, hp->a1 }; in lr42_merge()
468 __m128 a2 = { lp->a2, hp->a2, lp->a2, hp->a2 }; in lr42_merge()
470 // clang-format off in lr42_merge()
533 // clang-format on in lr42_merge()
535 lp->x1L = x1[0]; in lr42_merge()
536 lp->x1R = x1[2]; in lr42_merge()
537 lp->x2L = x2[0]; in lr42_merge()
538 lp->x2R = x2[2]; in lr42_merge()
539 lp->y1L = y1[0]; in lr42_merge()
540 lp->y1R = y1[2]; in lr42_merge()
541 lp->y2L = y2[0]; in lr42_merge()
542 lp->y2R = y2[2]; in lr42_merge()
543 lp->z1L = z1[0]; in lr42_merge()
544 lp->z1R = z1[2]; in lr42_merge()
545 lp->z2L = z2[0]; in lr42_merge()
546 lp->z2R = z2[2]; in lr42_merge()
548 hp->x1L = x1[1]; in lr42_merge()
549 hp->x1R = x1[3]; in lr42_merge()
550 hp->x2L = x2[1]; in lr42_merge()
551 hp->x2R = x2[3]; in lr42_merge()
552 hp->y1L = y1[1]; in lr42_merge()
553 hp->y1R = y1[3]; in lr42_merge()
554 hp->y2L = y2[1]; in lr42_merge()
555 hp->y2R = y2[3]; in lr42_merge()
556 hp->z1L = z1[1]; in lr42_merge()
557 hp->z1R = z1[3]; in lr42_merge()
558 hp->z2L = z2[1]; in lr42_merge()
559 hp->z2R = z2[3]; in lr42_merge()
562 static void lr42_merge(struct lr42 *lp, struct lr42 *hp, int count, in lr42_merge() argument
565 float lx1L = lp->x1L, lx1R = lp->x1R; in lr42_merge()
566 float lx2L = lp->x2L, lx2R = lp->x2R; in lr42_merge()
567 float ly1L = lp->y1L, ly1R = lp->y1R; in lr42_merge()
568 float ly2L = lp->y2L, ly2R = lp->y2R; in lr42_merge()
569 float lz1L = lp->z1L, lz1R = lp->z1R; in lr42_merge()
570 float lz2L = lp->z2L, lz2R = lp->z2R; in lr42_merge()
571 float lb0 = lp->b0; in lr42_merge()
572 float lb1 = lp->b1; in lr42_merge()
573 float lb2 = lp->b2; in lr42_merge()
574 float la1 = lp->a1; in lr42_merge()
575 float la2 = lp->a2; in lr42_merge()
577 float hx1L = hp->x1L, hx1R = hp->x1R; in lr42_merge()
578 float hx2L = hp->x2L, hx2R = hp->x2R; in lr42_merge()
579 float hy1L = hp->y1L, hy1R = hp->y1R; in lr42_merge()
580 float hy2L = hp->y2L, hy2R = hp->y2R; in lr42_merge()
581 float hz1L = hp->z1L, hz1R = hp->z1R; in lr42_merge()
582 float hz2L = hp->z2L, hz2R = hp->z2R; in lr42_merge()
583 float hb0 = hp->b0; in lr42_merge()
584 float hb1 = hp->b1; in lr42_merge()
585 float hb2 = hp->b2; in lr42_merge()
586 float ha1 = hp->a1; in lr42_merge()
587 float ha2 = hp->a2; in lr42_merge()
594 yL = lb0 * xL + lb1 * lx1L + lb2 * lx2L - la1 * ly1L - in lr42_merge()
596 yR = lb0 * xR + lb1 * lx1R + lb2 * lx2R - la1 * ly1R - in lr42_merge()
598 zL = lb0 * yL + lb1 * ly1L + lb2 * ly2L - la1 * lz1L - in lr42_merge()
600 zR = lb0 * yR + lb1 * ly1R + lb2 * ly2R - la1 * lz1R - in lr42_merge()
615 yL = hb0 * xL + hb1 * hx1L + hb2 * hx2L - ha1 * hy1L - in lr42_merge()
617 yR = hb0 * xR + hb1 * hx1R + hb2 * hx2R - ha1 * hy1R - in lr42_merge()
619 zL = hb0 * yL + hb1 * hy1L + hb2 * hy2L - ha1 * hz1L - in lr42_merge()
621 zR = hb0 * yR + hb1 * hy1R + hb2 * hy2R - ha1 * hz1R - in lr42_merge()
639 lp->x1L = lx1L; in lr42_merge()
640 lp->x1R = lx1R; in lr42_merge()
641 lp->x2L = lx2L; in lr42_merge()
642 lp->x2R = lx2R; in lr42_merge()
643 lp->y1L = ly1L; in lr42_merge()
644 lp->y1R = ly1R; in lr42_merge()
645 lp->y2L = ly2L; in lr42_merge()
646 lp->y2R = ly2R; in lr42_merge()
647 lp->z1L = lz1L; in lr42_merge()
648 lp->z1R = lz1R; in lr42_merge()
649 lp->z2L = lz2L; in lr42_merge()
650 lp->z2R = lz2R; in lr42_merge()
652 hp->x1L = hx1L; in lr42_merge()
653 hp->x1R = hx1R; in lr42_merge()
654 hp->x2L = hx2L; in lr42_merge()
655 hp->x2R = hx2R; in lr42_merge()
656 hp->y1L = hy1L; in lr42_merge()
657 hp->y1R = hy1R; in lr42_merge()
658 hp->y2L = hy2L; in lr42_merge()
659 hp->y2R = hy2R; in lr42_merge()
660 hp->z1L = hz1L; in lr42_merge()
661 hp->z1R = hz1R; in lr42_merge()
662 hp->z2L = hz2L; in lr42_merge()
663 hp->z2R = hz2R; in lr42_merge()
672 lr42_set(&xo2->lp[i], BQ_LOWPASS, f); in crossover2_init()
673 lr42_set(&xo2->hp[i], BQ_HIGHPASS, f); in crossover2_init()
684 lr42_split(&xo2->lp[0], &xo2->hp[0], count, data0L, data0R, data1L, in crossover2_process()
686 lr42_merge(&xo2->lp[1], &xo2->hp[1], count, data0L, data0R); in crossover2_process()
687 lr42_split(&xo2->lp[2], &xo2->hp[2], count, data1L, data1R, data2L, in crossover2_process()