Lines Matching refs:b

559 static inline unsigned int div32(unsigned int a, unsigned int b,   in div32()  argument
562 if (b == 0) { in div32()
566 *r = a % b; in div32()
567 return a / b; in div32()
570 static inline unsigned int div_down(unsigned int a, unsigned int b) in div_down() argument
572 if (b == 0) in div_down()
574 return a / b; in div_down()
577 static inline unsigned int div_up(unsigned int a, unsigned int b) in div_up() argument
581 if (b == 0) in div_up()
583 q = div32(a, b, &r); in div_up()
589 static inline unsigned int mul(unsigned int a, unsigned int b) in mul() argument
593 if (div_down(UINT_MAX, a) < b) in mul()
595 return a * b; in mul()
598 static inline unsigned int muldiv32(unsigned int a, unsigned int b, in muldiv32() argument
601 u_int64_t n = (u_int64_t) a * b; in muldiv32()
702 void snd_interval_mul(const struct snd_interval *a, const struct snd_interval *b, struct snd_interv… in snd_interval_mul() argument
704 if (a->empty || b->empty) { in snd_interval_mul()
709 c->min = mul(a->min, b->min); in snd_interval_mul()
710 c->openmin = (a->openmin || b->openmin); in snd_interval_mul()
711 c->max = mul(a->max, b->max); in snd_interval_mul()
712 c->openmax = (a->openmax || b->openmax); in snd_interval_mul()
713 c->integer = (a->integer && b->integer); in snd_interval_mul()
726 void snd_interval_div(const struct snd_interval *a, const struct snd_interval *b, struct snd_interv… in snd_interval_div() argument
729 if (a->empty || b->empty) { in snd_interval_div()
734 c->min = div32(a->min, b->max, &r); in snd_interval_div()
735 c->openmin = (r || a->openmin || b->openmax); in snd_interval_div()
736 if (b->min > 0) { in snd_interval_div()
737 c->max = div32(a->max, b->min, &r); in snd_interval_div()
742 c->openmax = (a->openmax || b->openmin); in snd_interval_div()
761 void snd_interval_muldivk(const struct snd_interval *a, const struct snd_interval *b, in snd_interval_muldivk() argument
765 if (a->empty || b->empty) { in snd_interval_muldivk()
770 c->min = muldiv32(a->min, b->min, k, &r); in snd_interval_muldivk()
771 c->openmin = (r || a->openmin || b->openmin); in snd_interval_muldivk()
772 c->max = muldiv32(a->max, b->max, k, &r); in snd_interval_muldivk()
777 c->openmax = (a->openmax || b->openmax); in snd_interval_muldivk()
793 const struct snd_interval *b, struct snd_interval *c) in snd_interval_mulkdiv() argument
796 if (a->empty || b->empty) { in snd_interval_mulkdiv()
801 c->min = muldiv32(a->min, k, b->max, &r); in snd_interval_mulkdiv()
802 c->openmin = (r || a->openmin || b->openmax); in snd_interval_mulkdiv()
803 if (b->min > 0) { in snd_interval_mulkdiv()
804 c->max = muldiv32(a->max, k, b->min, &r); in snd_interval_mulkdiv()
809 c->openmax = (a->openmax || b->openmin); in snd_interval_mulkdiv()