1 //------------------------------------------------------------------------------
2 // GB_meta16_methods: methods for GB_meta16_factory.c
3 //------------------------------------------------------------------------------
4 
5 // SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
6 // SPDX-License-Identifier: Apache-2.0
7 
8 //------------------------------------------------------------------------------
9 
10 {
11 
12     // declare macros that depend on the sparsity of A and B
13     #include "GB_meta16_definitions.h"
14 
15     // dot product methods
16     #if defined ( GB_DOT4 )
17     #include "GB_AxB_dot4_template.c"
18     #elif defined ( GB_DOT3_PHASE1 )
19     #include "GB_AxB_dot3_phase1_template.c"
20     #elif defined ( GB_DOT3_PHASE2 )
21     #include "GB_AxB_dot3_template.c"
22     #elif defined ( GB_DOT2 )
23     #include "GB_AxB_dot2_template.c"
24 
25     #else
26     #error "method undefined"
27     #endif
28 
29     // undefine the macros that define the A and B sparsity
30     #undef GB_A_IS_SPARSE
31     #undef GB_A_IS_HYPER
32     #undef GB_A_IS_BITMAP
33     #undef GB_A_IS_FULL
34     #undef GB_B_IS_SPARSE
35     #undef GB_B_IS_HYPER
36     #undef GB_B_IS_BITMAP
37     #undef GB_B_IS_FULL
38 }
39 
40