Lines Matching refs:src
79 static inline int32_t do_sqrshl_bhs(int32_t src, int32_t shift, int bits, in do_sqrshl_bhs() argument
87 return src >> 31; in do_sqrshl_bhs()
90 src >>= -shift - 1; in do_sqrshl_bhs()
91 return (src >> 1) + (src & 1); in do_sqrshl_bhs()
93 return src >> -shift; in do_sqrshl_bhs()
95 int32_t val = src << shift; in do_sqrshl_bhs()
97 if (!sat || val >> shift == src) { in do_sqrshl_bhs()
106 } else if (!sat || src == 0) { in do_sqrshl_bhs()
111 return (1u << (bits - 1)) - (src >= 0); in do_sqrshl_bhs()
114 static inline uint32_t do_uqrshl_bhs(uint32_t src, int32_t shift, int bits, in do_uqrshl_bhs() argument
121 src >>= -shift - 1; in do_uqrshl_bhs()
122 return (src >> 1) + (src & 1); in do_uqrshl_bhs()
124 return src >> -shift; in do_uqrshl_bhs()
126 uint32_t val = src << shift; in do_uqrshl_bhs()
128 if (!sat || val >> shift == src) { in do_uqrshl_bhs()
137 } else if (!sat || src == 0) { in do_uqrshl_bhs()
145 static inline int32_t do_suqrshl_bhs(int32_t src, int32_t shift, int bits, in do_suqrshl_bhs() argument
148 if (sat && src < 0) { in do_suqrshl_bhs()
152 return do_uqrshl_bhs(src, shift, bits, round, sat); in do_suqrshl_bhs()
155 static inline int64_t do_sqrshl_d(int64_t src, int64_t shift, in do_sqrshl_d() argument
163 return src >> 63; in do_sqrshl_d()
166 src >>= -shift - 1; in do_sqrshl_d()
167 return (src >> 1) + (src & 1); in do_sqrshl_d()
169 return src >> -shift; in do_sqrshl_d()
171 int64_t val = src << shift; in do_sqrshl_d()
172 if (!sat || val >> shift == src) { in do_sqrshl_d()
175 } else if (!sat || src == 0) { in do_sqrshl_d()
180 return src < 0 ? INT64_MIN : INT64_MAX; in do_sqrshl_d()
183 static inline uint64_t do_uqrshl_d(uint64_t src, int64_t shift, in do_uqrshl_d() argument
190 src >>= -shift - 1; in do_uqrshl_d()
191 return (src >> 1) + (src & 1); in do_uqrshl_d()
193 return src >> -shift; in do_uqrshl_d()
195 uint64_t val = src << shift; in do_uqrshl_d()
196 if (!sat || val >> shift == src) { in do_uqrshl_d()
199 } else if (!sat || src == 0) { in do_uqrshl_d()
207 static inline int64_t do_suqrshl_d(int64_t src, int64_t shift, in do_suqrshl_d() argument
210 if (sat && src < 0) { in do_suqrshl_d()
214 return do_uqrshl_d(src, shift, round, sat); in do_suqrshl_d()