Revision 019702c8

b/target-ppc/op_helper.c
3343 3343
HELPER_SPE_VECTOR_ARITH(fsdiv);
3344 3344

  
3345 3345
/* Single-precision floating-point comparisons */
3346
static inline uint32_t efststlt(uint32_t op1, uint32_t op2)
3346
static inline uint32_t efscmplt(uint32_t op1, uint32_t op2)
3347 3347
{
3348 3348
    CPU_FloatU u1, u2;
3349 3349
    u1.l = op1;
......
3351 3351
    return float32_lt(u1.f, u2.f, &env->vec_status) ? 4 : 0;
3352 3352
}
3353 3353

  
3354
static inline uint32_t efststgt(uint32_t op1, uint32_t op2)
3354
static inline uint32_t efscmpgt(uint32_t op1, uint32_t op2)
3355 3355
{
3356 3356
    CPU_FloatU u1, u2;
3357 3357
    u1.l = op1;
......
3359 3359
    return float32_le(u1.f, u2.f, &env->vec_status) ? 0 : 4;
3360 3360
}
3361 3361

  
3362
static inline uint32_t efststeq(uint32_t op1, uint32_t op2)
3362
static inline uint32_t efscmpeq(uint32_t op1, uint32_t op2)
3363 3363
{
3364 3364
    CPU_FloatU u1, u2;
3365 3365
    u1.l = op1;
3366 3366
    u2.l = op2;
3367
    return float32_eq_quiet(u1.f, u2.f, &env->vec_status) ? 4 : 0;
3367
    return float32_eq(u1.f, u2.f, &env->vec_status) ? 4 : 0;
3368 3368
}
3369 3369

  
3370
static inline uint32_t efscmplt(uint32_t op1, uint32_t op2)
3370
static inline uint32_t efststlt(uint32_t op1, uint32_t op2)
3371 3371
{
3372
    /* XXX: TODO: test special values (NaN, infinites, ...) */
3373
    return efststlt(op1, op2);
3372
    /* XXX: TODO: ignore special values (NaN, infinites, ...) */
3373
    return efscmplt(op1, op2);
3374 3374
}
3375 3375

  
3376
static inline uint32_t efscmpgt(uint32_t op1, uint32_t op2)
3376
static inline uint32_t efststgt(uint32_t op1, uint32_t op2)
3377 3377
{
3378
    /* XXX: TODO: test special values (NaN, infinites, ...) */
3379
    return efststgt(op1, op2);
3378
    /* XXX: TODO: ignore special values (NaN, infinites, ...) */
3379
    return efscmpgt(op1, op2);
3380 3380
}
3381 3381

  
3382
static inline uint32_t efscmpeq(uint32_t op1, uint32_t op2)
3382
static inline uint32_t efststeq(uint32_t op1, uint32_t op2)
3383 3383
{
3384
    /* XXX: TODO: test special values (NaN, infinites, ...) */
3385
    return efststeq(op1, op2);
3384
    /* XXX: TODO: ignore special values (NaN, infinites, ...) */
3385
    return efscmpeq(op1, op2);
3386 3386
}
3387 3387

  
3388 3388
#define HELPER_SINGLE_SPE_CMP(name)                                           \

Also available in: Unified diff