Revision 1536ff64 target-ppc/op_helper.c
b/target-ppc/op_helper.c | ||
---|---|---|
2262 | 2262 |
#undef VMINMAX_DO |
2263 | 2263 |
#undef VMINMAX |
2264 | 2264 |
|
2265 |
#define VMINMAXFP(suffix, rT, rF) \ |
|
2266 |
void helper_v##suffix (ppc_avr_t *r, ppc_avr_t *a, ppc_avr_t *b) \ |
|
2267 |
{ \ |
|
2268 |
int i; \ |
|
2269 |
for (i = 0; i < ARRAY_SIZE(r->f); i++) { \ |
|
2270 |
HANDLE_NAN2(r->f[i], a->f[i], b->f[i]) { \ |
|
2271 |
if (float32_lt_quiet(a->f[i], b->f[i], &env->vec_status)) { \ |
|
2272 |
r->f[i] = rT->f[i]; \ |
|
2273 |
} else { \ |
|
2274 |
r->f[i] = rF->f[i]; \ |
|
2275 |
} \ |
|
2276 |
} \ |
|
2277 |
} \ |
|
2278 |
} |
|
2279 |
VMINMAXFP(minfp, a, b) |
|
2280 |
VMINMAXFP(maxfp, b, a) |
|
2281 |
#undef VMINMAXFP |
|
2282 |
|
|
2265 | 2283 |
void helper_vmladduhm (ppc_avr_t *r, ppc_avr_t *a, ppc_avr_t *b, ppc_avr_t *c) |
2266 | 2284 |
{ |
2267 | 2285 |
int i; |
Also available in: Unified diff