2020int
2121main (int argc , const char * argv [])
2222{
23- bfdev_mpi_t vw , vs , vv , vq ;
2423 unsigned int k ;
2524 int retval ;
2625
27- bfdev_mpi_init (& vw , NULL );
28- bfdev_mpi_init (& vs , NULL );
29- bfdev_mpi_init (& vv , NULL );
30- bfdev_mpi_init (& vq , NULL );
26+ BFDEV_CLASS (bfdev_mpi , vw )(NULL );
27+ BFDEV_CLASS (bfdev_mpi , vs )(NULL );
28+ BFDEV_CLASS (bfdev_mpi , vv )(NULL );
29+ BFDEV_CLASS (bfdev_mpi , vq )(NULL );
30+
31+ if (!vw || !vs || !vv || !vq )
32+ return 1 ;
3133
3234 /**
3335 * Machin-like formula:
@@ -38,30 +40,30 @@ main(int argc, const char *argv[])
3840 * arctan(x) = x - (x^3)/3 + (x^5)/5 - (x^7)/7 + ...
3941 */
4042
41- if ((retval = bfdev_mpi_seti (& vw , 16 * 5 )) ||
42- (retval = bfdev_mpi_seti (& vv , 4 * 239 )) ||
43- (retval = bfdev_mpi_seti (& vq , 10000 )))
43+ if ((retval = bfdev_mpi_seti (vw , 16 * 5 )) ||
44+ (retval = bfdev_mpi_seti (vv , 4 * 239 )) ||
45+ (retval = bfdev_mpi_seti (vq , 10000 )))
4446 return retval ;
4547
4648 for (k = 0 ; k < TEST_SIZE ; ++ k ) {
47- if ((retval = bfdev_mpi_mul (& vw , & vw , & vq )) ||
48- (retval = bfdev_mpi_mul (& vv , & vv , & vq )))
49+ if ((retval = bfdev_mpi_mul (vw , vw , vq )) ||
50+ (retval = bfdev_mpi_mul (vv , vv , vq )))
4951 return retval ;
5052 }
5153
5254 bfdev_log_info ("Convergence Machin %d:\n" , TEST_LEN );
5355 EXAMPLE_TIME_STATISTICAL (
5456 for (k = 1 ; k <= TEST_LOOP ; ++ k ) {
55- if ((retval = bfdev_mpi_divi (& vw , & vw , & vw , 5 * 5 )) ||
56- (retval = bfdev_mpi_divi (& vv , & vv , & vv , 239 * 239 )) ||
57- (retval = bfdev_mpi_sub (& vq , & vw , & vv )) ||
58- (retval = bfdev_mpi_divi (& vq , & vq , & vq , 2 * k - 1 )))
57+ if ((retval = bfdev_mpi_divi (vw , vw , vw , 5 * 5 )) ||
58+ (retval = bfdev_mpi_divi (vv , vv , vv , 239 * 239 )) ||
59+ (retval = bfdev_mpi_sub (vq , vw , vv )) ||
60+ (retval = bfdev_mpi_divi (vq , vq , vq , 2 * k - 1 )))
5961 return retval ;
6062
6163 if (k & 1 )
62- retval = bfdev_mpi_add (& vs , & vs , & vq );
64+ retval = bfdev_mpi_add (vs , vs , vq );
6365 else
64- retval = bfdev_mpi_sub (& vs , & vs , & vq );
66+ retval = bfdev_mpi_sub (vs , vs , vq );
6567
6668 if (retval )
6769 return retval ;
@@ -72,7 +74,7 @@ main(int argc, const char *argv[])
7274#if PRINT_RESULT
7375 char * result ;
7476
75- result = print_num (& vs , 10 );
77+ result = print_num (vs , 10 );
7678 if (!result )
7779 return 1 ;
7880
@@ -81,10 +83,5 @@ main(int argc, const char *argv[])
8183 free (result );
8284#endif
8385
84- bfdev_mpi_release (& vw );
85- bfdev_mpi_release (& vs );
86- bfdev_mpi_release (& vv );
87- bfdev_mpi_release (& vq );
88-
8986 return 0 ;
9087}
0 commit comments