[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 1/3] target/ppc: fmadd check for excp independentl
From: |
Nikunj Dadhania |
Subject: |
Re: [Qemu-ppc] [PATCH 1/3] target/ppc: fmadd check for excp independently |
Date: |
Sat, 4 Mar 2017 19:08:30 +0530 |
>> diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c
>> index 0535ad0..a547f58 100644
>> --- a/target/ppc/fpu_helper.c
>> +++ b/target/ppc/fpu_helper.c
>> @@ -747,17 +747,21 @@ static void float64_maddsub_update_excp(CPUPPCState
>> *env, float64 arg1,
>> float64 arg2, float64 arg3,
>> unsigned int madd_flags)
>> {
>> + if (unlikely(float64_is_signaling_nan(arg1, &env->fp_status) ||
>> + float64_is_signaling_nan(arg2, &env->fp_status) ||
>> + float64_is_signaling_nan(arg3, &env->fp_status))) {
>> + /* sNaN operation */
>> + float_invalid_op_excp(env, POWERPC_EXCP_FP_VXSNAN, 1);
>> + }
>> +
>> if (unlikely((float64_is_infinity(arg1) && float64_is_zero(arg2)) ||
>> (float64_is_zero(arg1) && float64_is_infinity(arg2)))) {
>> /* Multiplication of zero by infinity */
>> - arg1 = float_invalid_op_excp(env, POWERPC_EXCP_FP_VXIMZ, 1);
>> - } else if (unlikely(float64_is_signaling_nan(arg1, &env->fp_status) ||
>> - float64_is_signaling_nan(arg2, &env->fp_status) ||
>> - float64_is_signaling_nan(arg3, &env->fp_status))) {
>> - /* sNaN operation */
>> - float_invalid_op_excp(env, POWERPC_EXCP_FP_VXSNAN, 1);
>> - } else if ((float64_is_infinity(arg1) || float64_is_infinity(arg2)) &&
>> - float64_is_infinity(arg3)) {
>> + float_invalid_op_excp(env, POWERPC_EXCP_FP_VXIMZ, 1);
>> + }
>> +
>> + if ((float64_is_infinity(arg1) || float64_is_infinity(arg2)) &&
>> + float64_is_infinity(arg3)) {
>> uint8_t aSign, bSign, cSign;
>>
>> aSign = float64_is_neg(arg1);
>> --
>> 2.7.4
>
>
> I'm having difficulty applying this patch. I took a look at
> float64_maddsub_update_excp()
> in fpu_helper.c and found out why. This function doesn't exist. Are you
> missing a patch?
That patch is in ppc-for-2.9, here is the link
https://github.com/dgibson/qemu/commit/992d7e976c7eca2b3129cd4bae4a0d350a8065fa
Regards
Nikunj