libflame  revision_anchor
Functions
FLASH_FS_incpiv_aux2.c File Reference

(r)

Functions

FLA_Error FLASH_FS_incpiv_aux2 (FLA_Obj L, FLA_Obj D, FLA_Obj p, FLA_Obj C, FLA_Obj E, dim_t nb_alg)
 

Function Documentation

◆ FLASH_FS_incpiv_aux2()

FLA_Error FLASH_FS_incpiv_aux2 ( FLA_Obj  L,
FLA_Obj  D,
FLA_Obj  p,
FLA_Obj  C,
FLA_Obj  E,
dim_t  nb_alg 
)
16 {
17  FLA_Obj LT, L0,
18  LB, L1,
19  L2;
20 
21  FLA_Obj DT, D0,
22  DB, D1,
23  D2;
24 
25  FLA_Obj pT, p0,
26  pB, p1,
27  p2;
28 
29  FLA_Obj ET, E0,
30  EB, E1,
31  E2;
32 
33  FLA_Part_2x1( L, &LT,
34  &LB, 0, FLA_TOP );
35 
36  FLA_Part_2x1( D, &DT,
37  &DB, 0, FLA_TOP );
38 
39  FLA_Part_2x1( p, &pT,
40  &pB, 0, FLA_TOP );
41 
42  FLA_Part_2x1( E, &ET,
43  &EB, 0, FLA_TOP );
44 
45  while ( FLA_Obj_length( DT ) < FLA_Obj_length( D ) )
46  {
47  FLA_Repart_2x1_to_3x1( LT, &L0,
48  /* ** */ /* ** */
49  &L1,
50  LB, &L2, 1, FLA_BOTTOM );
51 
52  FLA_Repart_2x1_to_3x1( DT, &D0,
53  /* ** */ /* ** */
54  &D1,
55  DB, &D2, 1, FLA_BOTTOM );
56 
57  FLA_Repart_2x1_to_3x1( pT, &p0,
58  /* ** */ /* ** */
59  &p1,
60  pB, &p2, 1, FLA_BOTTOM );
61 
62  FLA_Repart_2x1_to_3x1( ET, &E0,
63  /* ** */ /* ** */
64  &E1,
65  EB, &E2, 1, FLA_BOTTOM );
66 
67  /*------------------------------------------------------------*/
68 
69  FLA_SA_FS_blk( *FLASH_OBJ_PTR_AT( L1 ),
70  *FLASH_OBJ_PTR_AT( D1 ),
71  *FLASH_OBJ_PTR_AT( p1 ),
72  *FLASH_OBJ_PTR_AT( C ),
73  *FLASH_OBJ_PTR_AT( E1 ),
74  nb_alg );
75 
76  /*------------------------------------------------------------*/
77 
78  FLA_Cont_with_3x1_to_2x1( &LT, L0,
79  L1,
80  /* ** */ /* ** */
81  &LB, L2, FLA_TOP );
82 
83  FLA_Cont_with_3x1_to_2x1( &DT, D0,
84  D1,
85  /* ** */ /* ** */
86  &DB, D2, FLA_TOP );
87 
88  FLA_Cont_with_3x1_to_2x1( &pT, p0,
89  p1,
90  /* ** */ /* ** */
91  &pB, p2, FLA_TOP );
92 
93  FLA_Cont_with_3x1_to_2x1( &ET, E0,
94  E1,
95  /* ** */ /* ** */
96  &EB, E2, FLA_TOP );
97  }
98 
99  return FLA_SUCCESS;
100 }
FLA_Error FLA_SA_FS_blk(FLA_Obj L, FLA_Obj D, FLA_Obj p, FLA_Obj C, FLA_Obj E, dim_t nb_alg)
Definition: FLA_SA_FS_blk.c:13
FLA_Error FLA_Cont_with_3x1_to_2x1(FLA_Obj *AT, FLA_Obj A0, FLA_Obj A1, FLA_Obj *AB, FLA_Obj A2, FLA_Side side)
Definition: FLA_View.c:428
FLA_Error FLA_Repart_2x1_to_3x1(FLA_Obj AT, FLA_Obj *A0, FLA_Obj *A1, FLA_Obj AB, FLA_Obj *A2, dim_t mb, FLA_Side side)
Definition: FLA_View.c:226
FLA_Error FLA_Part_2x1(FLA_Obj A, FLA_Obj *A1, FLA_Obj *A2, dim_t mb, FLA_Side side)
Definition: FLA_View.c:76
dim_t FLA_Obj_length(FLA_Obj obj)
Definition: FLA_Query.c:116
Definition: FLA_type_defs.h:159

References FLA_Cont_with_3x1_to_2x1(), FLA_Obj_length(), FLA_Part_2x1(), FLA_Repart_2x1_to_3x1(), and FLA_SA_FS_blk().

Referenced by FLASH_FS_incpiv_aux1().