libflame
revision_anchor
|
00001 /* 00002 00003 Copyright (C) 2014, The University of Texas at Austin 00004 00005 This file is part of libflame and is available under the 3-Clause 00006 BSD license, which can be found in the LICENSE file at the top-level 00007 directory, or at http://opensource.org/licenses/BSD-3-Clause 00008 00009 */ 00010 00011 // Shared definitions 00012 00013 typedef struct FLA_Blocksize_s 00014 { 00015 dim_t s; 00016 dim_t d; 00017 dim_t c; 00018 dim_t z; 00019 } fla_blocksize_t; 00020 00021 #define FLA_SUBPROBLEM 0 00022 #define FLA_UNBLOCKED_EXTERN 10 00023 #define FLA_BLOCKED_EXTERN 13 00024 00025 #define FLA_UNB_VAR_OFFSET 40 00026 #define FLA_OPT_VAR_OFFSET 80 00027 #define FLA_BLK_VAR_OFFSET 120 00028 #define FLA_BLF_VAR_OFFSET 160 00029 00030 #define FLA_UNBLOCKED_VARIANT1 (FLA_UNB_VAR_OFFSET+1) 00031 #define FLA_UNBLOCKED_VARIANT2 (FLA_UNB_VAR_OFFSET+2) 00032 #define FLA_UNBLOCKED_VARIANT3 (FLA_UNB_VAR_OFFSET+3) 00033 #define FLA_UNBLOCKED_VARIANT4 (FLA_UNB_VAR_OFFSET+4) 00034 #define FLA_UNBLOCKED_VARIANT5 (FLA_UNB_VAR_OFFSET+5) 00035 #define FLA_UNBLOCKED_VARIANT6 (FLA_UNB_VAR_OFFSET+6) 00036 #define FLA_UNBLOCKED_VARIANT7 (FLA_UNB_VAR_OFFSET+7) 00037 #define FLA_UNBLOCKED_VARIANT8 (FLA_UNB_VAR_OFFSET+8) 00038 #define FLA_UNBLOCKED_VARIANT9 (FLA_UNB_VAR_OFFSET+9) 00039 #define FLA_UNBLOCKED_VARIANT10 (FLA_UNB_VAR_OFFSET+10) 00040 00041 #define FLA_UNB_OPT_VARIANT1 (FLA_OPT_VAR_OFFSET+1) 00042 #define FLA_UNB_OPT_VARIANT2 (FLA_OPT_VAR_OFFSET+2) 00043 #define FLA_UNB_OPT_VARIANT3 (FLA_OPT_VAR_OFFSET+3) 00044 #define FLA_UNB_OPT_VARIANT4 (FLA_OPT_VAR_OFFSET+4) 00045 #define FLA_UNB_OPT_VARIANT5 (FLA_OPT_VAR_OFFSET+5) 00046 #define FLA_UNB_OPT_VARIANT6 (FLA_OPT_VAR_OFFSET+6) 00047 #define FLA_UNB_OPT_VARIANT7 (FLA_OPT_VAR_OFFSET+7) 00048 #define FLA_UNB_OPT_VARIANT8 (FLA_OPT_VAR_OFFSET+8) 00049 #define FLA_UNB_OPT_VARIANT9 (FLA_OPT_VAR_OFFSET+9) 00050 #define FLA_UNB_OPT_VARIANT10 (FLA_OPT_VAR_OFFSET+10) 00051 00052 #define FLA_BLOCKED_VARIANT1 (FLA_BLK_VAR_OFFSET+1) 00053 #define FLA_BLOCKED_VARIANT2 (FLA_BLK_VAR_OFFSET+2) 00054 #define FLA_BLOCKED_VARIANT3 (FLA_BLK_VAR_OFFSET+3) 00055 #define FLA_BLOCKED_VARIANT4 (FLA_BLK_VAR_OFFSET+4) 00056 #define FLA_BLOCKED_VARIANT5 (FLA_BLK_VAR_OFFSET+5) 00057 #define FLA_BLOCKED_VARIANT6 (FLA_BLK_VAR_OFFSET+6) 00058 #define FLA_BLOCKED_VARIANT7 (FLA_BLK_VAR_OFFSET+7) 00059 #define FLA_BLOCKED_VARIANT8 (FLA_BLK_VAR_OFFSET+8) 00060 #define FLA_BLOCKED_VARIANT9 (FLA_BLK_VAR_OFFSET+9) 00061 #define FLA_BLOCKED_VARIANT10 (FLA_BLK_VAR_OFFSET+10) 00062 #define FLA_BLOCKED_VARIANT11 (FLA_BLK_VAR_OFFSET+11) 00063 #define FLA_BLOCKED_VARIANT12 (FLA_BLK_VAR_OFFSET+12) 00064 #define FLA_BLOCKED_VARIANT13 (FLA_BLK_VAR_OFFSET+13) 00065 #define FLA_BLOCKED_VARIANT14 (FLA_BLK_VAR_OFFSET+14) 00066 #define FLA_BLOCKED_VARIANT15 (FLA_BLK_VAR_OFFSET+15) 00067 #define FLA_BLOCKED_VARIANT16 (FLA_BLK_VAR_OFFSET+16) 00068 #define FLA_BLOCKED_VARIANT17 (FLA_BLK_VAR_OFFSET+17) 00069 #define FLA_BLOCKED_VARIANT18 (FLA_BLK_VAR_OFFSET+18) 00070 #define FLA_BLOCKED_VARIANT19 (FLA_BLK_VAR_OFFSET+19) 00071 #define FLA_BLOCKED_VARIANT20 (FLA_BLK_VAR_OFFSET+20) 00072 00073 #define FLA_BLK_FUS_VARIANT1 (FLA_BLF_VAR_OFFSET+1) 00074 #define FLA_BLK_FUS_VARIANT2 (FLA_BLF_VAR_OFFSET+2) 00075 #define FLA_BLK_FUS_VARIANT3 (FLA_BLF_VAR_OFFSET+3) 00076 #define FLA_BLK_FUS_VARIANT4 (FLA_BLF_VAR_OFFSET+4) 00077 #define FLA_BLK_FUS_VARIANT5 (FLA_BLF_VAR_OFFSET+5) 00078 #define FLA_BLK_FUS_VARIANT6 (FLA_BLF_VAR_OFFSET+6) 00079 #define FLA_BLK_FUS_VARIANT7 (FLA_BLF_VAR_OFFSET+7) 00080 #define FLA_BLK_FUS_VARIANT8 (FLA_BLF_VAR_OFFSET+8) 00081 #define FLA_BLK_FUS_VARIANT9 (FLA_BLF_VAR_OFFSET+9) 00082 #define FLA_BLK_FUS_VARIANT10 (FLA_BLF_VAR_OFFSET+10) 00083 00084 #define FLA_Cntl_matrix_type( cntl ) cntl->matrix_type 00085 #define FLA_Cntl_blocksize( cntl ) cntl->blocksize 00086 #define FLA_Cntl_variant( cntl ) cntl->variant 00087 00088 void FLA_Cntl_obj_free( void* cntl ); 00089 00090 00091 // Include the control tree definitions for each class of operation. 00092 #include "FLA_Cntl_blas1.h" 00093 #include "FLA_Cntl_blas2.h" 00094 #include "FLA_Cntl_blas3.h" 00095 #include "FLA_Cntl_lapack.h" 00096