Lines Matching refs:qr

23 struct qr {  struct
31 struct qr *qr); argument
60 static void division_qr(unsigned n, unsigned p, struct qr *qr) in division_qr() argument
64 qr->r = 0xFFFFFFFF; /* division by 0 */ in division_qr()
83 qr->r = n; in division_qr()
84 qr->q = q; in division_qr()
87 static void uint_div_qr(unsigned numerator, unsigned denominator, struct qr *qr) in uint_div_qr() argument
90 division_qr(numerator, denominator, qr); in uint_div_qr()
93 if (qr->q_n) in uint_div_qr()
94 qr->q = -qr->q; in uint_div_qr()
95 if (qr->r_n) in uint_div_qr()
96 qr->r = -qr->r; in uint_div_qr()
101 struct qr qr = { .q_n = 0, .r_n = 0 }; in __aeabi_uidiv() local
103 uint_div_qr(numerator, denominator, &qr); in __aeabi_uidiv()
105 return qr.q; in __aeabi_uidiv()
110 struct qr qr = { .q_n = 0, .r_n = 0 }; in __aeabi_uidivmod() local
112 uint_div_qr(numerator, denominator, &qr); in __aeabi_uidivmod()
114 return ret_uidivmod_values(qr.q, qr.r); in __aeabi_uidivmod()
119 struct qr qr = { .q_n = 0, .r_n = 0 }; in __aeabi_idiv() local
123 qr.q_n = 1; /* quotient shall be negate */ in __aeabi_idiv()
126 qr.r_n = 1; /* remainder shall be negate */ in __aeabi_idiv()
131 uint_div_qr(numerator, denominator, &qr); in __aeabi_idiv()
133 return qr.q; in __aeabi_idiv()
138 struct qr qr = { .q_n = 0, .r_n = 0 }; in __aeabi_idivmod() local
142 qr.q_n = 1; /* quotient shall be negate */ in __aeabi_idivmod()
145 qr.r_n = 1; /* remainder shall be negate */ in __aeabi_idivmod()
150 uint_div_qr(numerator, denominator, &qr); in __aeabi_idivmod()
152 return ret_idivmod_values(qr.q, qr.r); in __aeabi_idivmod()