@@ -213,25 +213,22 @@ static void secp256k1_ecmult_const(secp256k1_gej *r, const secp256k1_ge *a, cons
213213        }
214214    }
215215
216-     secp256k1_fe_mul (& r -> z , & r -> z , & Z );
217- 
218216    {
219217        /* Correct for wNAF skew */ 
220-         secp256k1_gej  tmp ;
221-         secp256k1_ge  a_1 ;
222-         secp256k1_ge_neg (& a_1 , a );
218+         secp256k1_gej  tmpj ;
223219
224-         secp256k1_gej_add_ge (& tmp , r , & a_1 );
225-         secp256k1_gej_cmov (r , & tmp , skew_1 );
220+         secp256k1_ge_neg (& tmpa , & pre_a [0 ]);
221+         secp256k1_gej_add_ge (& tmpj , r , & tmpa );
222+         secp256k1_gej_cmov (r , & tmpj , skew_1 );
226223
227224        if  (size  >  128 ) {
228-             secp256k1_ge  a_lam ;
229-             secp256k1_ge_mul_lambda (& a_lam , & a_1 );
230- 
231-             secp256k1_gej_add_ge (& tmp , r , & a_lam );
232-             secp256k1_gej_cmov (r , & tmp , skew_lam );
225+             secp256k1_ge_neg (& tmpa , & pre_a_lam [0 ]);
226+             secp256k1_gej_add_ge (& tmpj , r , & tmpa );
227+             secp256k1_gej_cmov (r , & tmpj , skew_lam );
233228        }
234229    }
230+ 
231+     secp256k1_fe_mul (& r -> z , & r -> z , & Z );
235232}
236233
237234#endif  /* SECP256K1_ECMULT_CONST_IMPL_H */ 
0 commit comments