1 // CLASS_1ARGS
2 //
3 // blasfeo_xgesc(ni, mi, &sA, ai, aj);
4
call_routines(struct RoutineArgs * args)5 void call_routines(struct RoutineArgs *args){
6
7 // unpack args
8
9 // routine call
10 //
11 BLASFEO(ROUTINE)(
12 args->n, args->m, args->alpha, args->sA, args->ai, args->aj
13 );
14
15 REF(BLASFEO(ROUTINE))(
16 args->n, args->m, args->alpha, args->rA, args->ai, args->aj
17 );
18
19 }
20
print_routine(struct RoutineArgs * args)21 void print_routine(struct RoutineArgs *args){
22 // unpack args
23
24 printf("%s\n", string(ROUTINE));
25 printf(
26 "A[%d:%d,%d:%d] = %f*A[%d:%d,%d:%d]\n",
27 args->ai, args->m, args->aj, args->n,
28 args->alpha, args->ai, args->m, args->aj, args->n
29 );
30
31 }
32
print_routine_matrices(struct RoutineArgs * args)33 void print_routine_matrices(struct RoutineArgs *args){
34
35 printf("\nPrint A:\n");
36 blasfeo_print_xmat_debug(args->m, args->n, args->sA, args->ai, args->aj, 0, 0, 0);
37 print_xmat_debug(args->m, args->n, args->rA, args->ai, args->aj, 0, 0, 0);
38 }
39
set_test_args(struct TestArgs * targs)40 void set_test_args(struct TestArgs *targs)
41 {
42 targs->ais = 5;
43 targs->bis = 5;
44 targs->dis = 5;
45 targs->xjs = 2;
46
47 targs->nis = 5;
48 targs->njs = 5;
49 targs->nks = 5;
50
51 targs->alphas = 1;
52 }
53