libflame  12600
FLASH_Queue_macro_defs.h
Go to the documentation of this file.
00001 /*
00002    libflame
00003    An object-based infrastructure for developing high-performance
00004    dense linear algebra libraries.
00005 
00006    Copyright (C) 2011, The University of Texas
00007 
00008    libflame is free software; you can redistribute it and/or modify
00009    it under the terms of the GNU Lesser General Public License as
00010    published by the Free Software Foundation; either version 2.1 of
00011    the License, or (at your option) any later version.
00012 
00013    libflame is distributed in the hope that it will be useful, but
00014    WITHOUT ANY WARRANTY; without even the implied warranty of
00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016    Lesser General Public License for more details.
00017 
00018    You should have received a copy of the GNU Lesser General Public
00019    License along with libflame; if you did not receive a copy, see
00020    http://www.gnu.org/licenses/.
00021 
00022    For more information, please contact us at flame@cs.utexas.edu or
00023    send mail to:
00024 
00025    Field G. Van Zee and/or
00026    Robert A. van de Geijn
00027    The University of Texas at Austin
00028    Department of Computer Sciences
00029    1 University Station C0500
00030    Austin TX 78712
00031 */
00032 
00033 #ifndef FLASH_QUEUE_MACRO_DEFS_H
00034 #define FLASH_QUEUE_MACRO_DEFS_H
00035 
00036 
00037 #ifdef FLA_ENABLE_SUPERMATRIX
00038 
00039 
00040 #define FLASH_OBJ_PTR_ID( A )  ( A ).base->id
00041 
00042 // FLASH_Verbose
00043 #define FLASH_QUEUE_VERBOSE_NONE                     0
00044 #define FLASH_QUEUE_VERBOSE_READABLE                 1
00045 #define FLASH_QUEUE_VERBOSE_GRAPHVIZ                 2
00046 
00047 // FLASH_Data_aff
00048 #define FLASH_QUEUE_AFFINITY_NONE                    0
00049 #define FLASH_QUEUE_AFFINITY_2D_BLOCK_CYCLIC         1
00050 #define FLASH_QUEUE_AFFINITY_1D_ROW_BLOCK_CYCLIC     2
00051 #define FLASH_QUEUE_AFFINITY_1D_COLUMN_BLOCK_CYCLIC  3
00052 #define FLASH_QUEUE_AFFINITY_ROUND_ROBIN             4
00053 
00054 /*
00055 Reminder to create a macro to enqueue when SuperMatrix is configured, and
00056 also to create a macro for when it is not below to return an error code.
00057 */
00058 
00059 // LAPACK-level
00060 
00061 #define ENQUEUE_FLASH_LU_piv_macro( A, p, cntl ) \
00062         FLASH_Queue_push( (void *) FLA_LU_piv_macro_task, \
00063                           (void *) cntl, \
00064                           "LU   ", \
00065                           FALSE, \
00066                           0, 0, 0, 2, \
00067                           A, p )
00068 
00069 #define ENQUEUE_FLASH_Apply_pivots_macro( side, trans, p, A, cntl ) \
00070         FLASH_Queue_push( (void *) FLA_Apply_pivots_macro_task, \
00071                           (void *) cntl, \
00072                           "Pivot", \
00073                           FALSE, \
00074                           2, 0, 1, 1, \
00075                           side, trans, \
00076                           p, A )
00077 
00078 #define ENQUEUE_FLASH_LU_piv( A, p, cntl ) \
00079         FLASH_Queue_push( (void *) FLA_LU_piv_task, \
00080                           (void *) cntl, \
00081                           "LU   ", \
00082                           FALSE, \
00083                           0, 1, 0, 1, \
00084                           p, A )
00085 
00086 #define ENQUEUE_FLASH_LU_piv_copy( A, p, U, cntl ) \
00087         FLASH_Queue_push( (void *) FLA_LU_piv_copy_task, \
00088                           (void *) cntl, \
00089                           "LU   ", \
00090                           FALSE, \
00091                           0, 1, 0, 2, \
00092                           p, A, U )
00093 
00094 #define ENQUEUE_FLASH_Trsm_piv( A, C, p, cntl ) \
00095         FLASH_Queue_push( (void *) FLA_Trsm_piv_task, \
00096                           (void *) cntl, \
00097                           "Trsm ", \
00098                           FALSE, \
00099                           0, 1, 1, 1, \
00100                           p, A, C )
00101 
00102 #define ENQUEUE_FLASH_SA_LU( U, D, p, L, nb_alg, cntl ) \
00103         FLASH_Queue_push( (void *) FLA_SA_LU_task, \
00104                           (void *) cntl, \
00105                           "SA_LU", \
00106                           FALSE, \
00107                           1, 2, 0, 2, \
00108                           nb_alg, \
00109                           p, L, D, U )
00110 
00111 #define ENQUEUE_FLASH_SA_FS( L, D, p, C, E, nb_alg, cntl ) \
00112         FLASH_Queue_push( (void *) FLA_SA_FS_task, \
00113                           (void *) cntl, \
00114                           "SA_FS", \
00115                           FALSE, \
00116                           1, 2, 1, 2, \
00117                           nb_alg, \
00118                           L, p, D, E, C )
00119 
00120 #define ENQUEUE_FLASH_LU_nopiv( A, cntl ) \
00121         FLASH_Queue_push( (void *) FLA_LU_nopiv_task, \
00122                           (void *) cntl, \
00123                           "LU   ", \
00124                           FALSE, \
00125                           0, 0, 0, 1, \
00126                           A )
00127 
00128 #define ENQUEUE_FLASH_Trinv( uplo, diag, A, cntl ) \
00129         FLASH_Queue_push( (void *) FLA_Trinv_task, \
00130                           (void *) cntl, \
00131                           "Trinv", \
00132                           FALSE, \
00133                           2, 0, 0, 1, \
00134                           uplo, diag, \
00135                           A )
00136 
00137 #define ENQUEUE_FLASH_Ttmm( uplo, A, cntl ) \
00138         FLASH_Queue_push( (void *) FLA_Ttmm_task, \
00139                           (void *) cntl, \
00140                           "Ttmm ", \
00141                           FALSE, \
00142                           1, 0, 0, 1, \
00143                           uplo, \
00144                           A )
00145 
00146 #define ENQUEUE_FLASH_Chol( uplo, A, cntl ) \
00147         FLASH_Queue_push( (void *) FLA_Chol_task, \
00148                           (void *) cntl, \
00149                           "Chol ", \
00150                           FALSE, \
00151                           1, 0, 0, 1, \
00152                           uplo, \
00153                           A )
00154 
00155 #define ENQUEUE_FLASH_Sylv( transA, transB, isgn, A, B, C, scale, cntl ) \
00156         FLASH_Queue_push( (void *) FLA_Sylv_task, \
00157                           (void *) cntl, \
00158                           "Sylv ", \
00159                           FALSE, \
00160                           2, 2, 2, 1, \
00161                           transA, transB, \
00162                           isgn, scale, \
00163                           A, B, C )
00164 
00165 #define ENQUEUE_FLASH_Lyap( trans, isgn, A, C, scale, cntl ) \
00166         FLASH_Queue_push( (void *) FLA_Lyap_task, \
00167                           (void *) cntl, \
00168                           "Lyap ", \
00169                           FALSE, \
00170                           1, 2, 1, 1, \
00171                           trans, \
00172                           isgn, scale, \
00173                           A, C )
00174 
00175 #define ENQUEUE_FLASH_QR_UT_macro( A, T, cntl ) \
00176         FLASH_Queue_push( (void *) FLA_QR_UT_macro_task, \
00177                           (void *) cntl, \
00178                           "QR   ", \
00179                           FALSE, \
00180                           0, 0, 0, 2, \
00181                           A, T )
00182 
00183 #define ENQUEUE_FLASH_QR_UT( A, T, cntl ) \
00184         FLASH_Queue_push( (void *) FLA_QR_UT_task, \
00185                           (void *) cntl, \
00186                           "QR   ", \
00187                           FALSE, \
00188                           0, 1, 0, 1, \
00189                           T, A )
00190 
00191 #define ENQUEUE_FLASH_QR_UT_copy( A, T, U, cntl ) \
00192         FLASH_Queue_push( (void *) FLA_QR_UT_copy_task, \
00193                           (void *) cntl, \
00194                           "QR   ", \
00195                           FALSE, \
00196                           0, 1, 0, 2, \
00197                           T, A, U )
00198 
00199 #define ENQUEUE_FLASH_QR2_UT( B, D, T, cntl ) \
00200         FLASH_Queue_push( (void *) FLA_QR2_UT_task, \
00201                           (void *) cntl, \
00202                           "QR2  ", \
00203                           FALSE, \
00204                           0, 1, 0, 2, \
00205                           T, D, B )
00206 
00207 #define ENQUEUE_FLASH_LQ_UT_macro( A, T, cntl ) \
00208         FLASH_Queue_push( (void *) FLA_LQ_UT_macro_task, \
00209                           (void *) cntl, \
00210                           "LQ   ", \
00211                           FALSE, \
00212                           0, 0, 0, 2, \
00213                           A, T )
00214 
00215 #define ENQUEUE_FLASH_CAQR2_UT( B, D, T, cntl ) \
00216         FLASH_Queue_push( (void *) FLA_CAQR2_UT_task, \
00217                           (void *) cntl, \
00218                           "CAQR2", \
00219                           FALSE, \
00220                           0, 1, 0, 2, \
00221                           T, D, B )
00222 
00223 #define ENQUEUE_FLASH_Apply_Q_UT( side, trans, direct, storev, A, T, W, B, cntl ) \
00224         FLASH_Queue_push( (void *) FLA_Apply_Q_UT_task, \
00225                           (void *) cntl, \
00226                           "ApQ  ", \
00227                           FALSE, \
00228                           4, 1, 1, 2, \
00229                           side, trans, direct, storev, \
00230                           T, A, B, W )
00231 
00232 #define ENQUEUE_FLASH_Apply_Q2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \
00233         FLASH_Queue_push( (void *) FLA_Apply_Q2_UT_task, \
00234                           (void *) cntl, \
00235                           "ApQ2 ", \
00236                           FALSE, \
00237                           4, 1, 1, 3, \
00238                           side, trans, direct, storev, \
00239                           T, D, E, C, W )
00240 
00241 #define ENQUEUE_FLASH_Apply_CAQ2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \
00242         FLASH_Queue_push( (void *) FLA_Apply_CAQ2_UT_task, \
00243                           (void *) cntl, \
00244                           "ApCQ2", \
00245                           FALSE, \
00246                           4, 1, 1, 3, \
00247                           side, trans, direct, storev, \
00248                           T, D, E, C, W )
00249 
00250 #define ENQUEUE_FLASH_UDdate_UT( R, C, D, T, cntl ) \
00251         FLASH_Queue_push( (void *) FLA_UDdate_UT_task, \
00252                           (void *) cntl, \
00253                           "UD   ", \
00254                           FALSE, \
00255                           0, 0, 0, 4, \
00256                           R, C, D, T )
00257 
00258 #define ENQUEUE_FLASH_Apply_QUD_UT( side, trans, direct, storev, T, W, R, U, C, V, D, cntl ) \
00259         FLASH_Queue_push( (void *) FLA_Apply_QUD_UT_task, \
00260                           (void *) cntl, \
00261                           "ApQUD", \
00262                           FALSE, \
00263                           4, 0, 3, 4, \
00264                           side, trans, direct, storev, \
00265                           T, U, V, W, R, C, D )
00266 
00267 #define ENQUEUE_FLASH_Eig_gest( inv, uplo, A, Y, B, cntl ) \
00268         FLASH_Queue_push( (void *) FLA_Eig_gest_task, \
00269                           (void *) cntl, \
00270                           "Eig  ", \
00271                           FALSE, \
00272                           2, 0, 1, 2, \
00273                           inv, uplo, \
00274                           B, Y, A )
00275 
00276 // Level-3 BLAS
00277 
00278 #define ENQUEUE_FLASH_Gemm( transA, transB, alpha, A, B, beta, C, cntl ) \
00279         FLASH_Queue_push( (void *) FLA_Gemm_task, \
00280                           (void *) cntl, \
00281                           "Gemm ", \
00282                           TRUE, \
00283                           2, 2, 2, 1, \
00284                           transA, transB, \
00285                           alpha, beta, \
00286                           A, B, C )
00287 
00288 #define ENQUEUE_FLASH_Hemm( side, uplo, alpha, A, B, beta, C, cntl ) \
00289         FLASH_Queue_push( (void *) FLA_Hemm_task, \
00290                           (void *) cntl, \
00291                           "Hemm ", \
00292                           TRUE, \
00293                           2, 2, 2, 1, \
00294                           side, uplo, \
00295                           alpha, beta, \
00296                           A, B, C )
00297 
00298 #define ENQUEUE_FLASH_Herk( uplo, transA, alpha, A, beta, C, cntl ) \
00299         FLASH_Queue_push( (void *) FLA_Herk_task, \
00300                           (void *) cntl, \
00301                           "Herk ", \
00302                           TRUE, \
00303                           2, 2, 1, 1, \
00304                           uplo, transA, \
00305                           alpha, beta, \
00306                           A, C )
00307 
00308 #define ENQUEUE_FLASH_Her2k( uplo, transA, alpha, A, B, beta, C, cntl ) \
00309         FLASH_Queue_push( (void *) FLA_Her2k_task, \
00310                           (void *) cntl, \
00311                           "Her2k", \
00312                           TRUE, \
00313                           2, 2, 2, 1, \
00314                           uplo, transA, \
00315                           alpha, beta, \
00316                           A, B, C )
00317 
00318 #define ENQUEUE_FLASH_Symm( side, uplo, alpha, A, B, beta, C, cntl ) \
00319         FLASH_Queue_push( (void *) FLA_Symm_task, \
00320                           (void *) cntl, \
00321                           "Symm ", \
00322                           TRUE, \
00323                           2, 2, 2, 1, \
00324                           side, uplo, \
00325                           alpha, beta, \
00326                           A, B, C )
00327 
00328 #define ENQUEUE_FLASH_Syrk( uplo, transA, alpha, A, beta, C, cntl ) \
00329         FLASH_Queue_push( (void *) FLA_Syrk_task, \
00330                           (void *) cntl, \
00331                           "Syrk ", \
00332                           TRUE, \
00333                           2, 2, 1, 1, \
00334                           uplo, transA, \
00335                           alpha, beta, \
00336                           A, C )
00337 
00338 #define ENQUEUE_FLASH_Syr2k( uplo, transA, alpha, A, B, beta, C, cntl ) \
00339         FLASH_Queue_push( (void *) FLA_Syr2k_task, \
00340                           (void *) cntl, \
00341                           "Syr2k", \
00342                           TRUE, \
00343                           2, 2, 2, 1, \
00344                           uplo, transA, \
00345                           alpha, beta, \
00346                           A, B, C )
00347 
00348 #define ENQUEUE_FLASH_Trmm( side, uplo, trans, diag, alpha, A, C, cntl ) \
00349         FLASH_Queue_push( (void *) FLA_Trmm_task, \
00350                           (void *) cntl, \
00351                           "Trmm ", \
00352                           TRUE, \
00353                           4, 1, 1, 1, \
00354                           side, uplo, trans, diag, \
00355                           alpha, \
00356                           A, C )
00357 
00358 #define ENQUEUE_FLASH_Trsm( side, uplo, trans, diag, alpha, A, C, cntl ) \
00359         FLASH_Queue_push( (void *) FLA_Trsm_task, \
00360                           (void *) cntl, \
00361                           "Trsm ", \
00362                           TRUE, \
00363                           4, 1, 1, 1, \
00364                           side, uplo, trans, diag, \
00365                           alpha, \
00366                           A, C )
00367 
00368 // Level-2 BLAS
00369 
00370 #define ENQUEUE_FLASH_Gemv( trans, alpha, A, x, beta, y, cntl ) \
00371         FLASH_Queue_push( (void *) FLA_Gemv_task, \
00372                           (void *) cntl, \
00373                           "Gemv ", \
00374                           TRUE, \
00375                           1, 2, 2, 1, \
00376                           trans, \
00377                           alpha, beta, \
00378                           A, x, y )
00379 
00380 #define ENQUEUE_FLASH_Trsv( uplo, trans, diag, A, x, cntl ) \
00381         FLASH_Queue_push( (void *) FLA_Trsv_task, \
00382                           (void *) cntl, \
00383                           "Trsv ", \
00384                           TRUE, \
00385                           3, 0, 1, 1, \
00386                           uplo, trans, diag, \
00387                           A, x )
00388 
00389 // Level-1 BLAS
00390 
00391 #define ENQUEUE_FLASH_Axpy( alpha, A, B, cntl ) \
00392         FLASH_Queue_push( (void *) FLA_Axpy_task, \
00393                           (void *) cntl, \
00394                           "Axpy ", \
00395                           TRUE, \
00396                           0, 1, 1, 1, \
00397                           alpha, \
00398                           A, B )
00399 
00400 #define ENQUEUE_FLASH_Axpyt( trans, alpha, A, B, cntl ) \
00401         FLASH_Queue_push( (void *) FLA_Axpyt_task, \
00402                           (void *) cntl, \
00403                           "Axpyt", \
00404                           FALSE, \
00405                           1, 1, 1, 1, \
00406                           trans, \
00407                           alpha, \
00408                           A, B )
00409 
00410 #define ENQUEUE_FLASH_Copy( A, B, cntl ) \
00411         FLASH_Queue_push( (void *) FLA_Copy_task, \
00412                           (void *) cntl, \
00413                           "Copy ", \
00414                           TRUE, \
00415                           0, 0, 1, 1, \
00416                           A, B )
00417 
00418 #define ENQUEUE_FLASH_Copyt( trans, A, B, cntl ) \
00419         FLASH_Queue_push( (void *) FLA_Copyt_task, \
00420                           (void *) cntl, \
00421                           "Copyt", \
00422                           FALSE, \
00423                           1, 0, 1, 1, \
00424                           trans, \
00425                           A, B )
00426 
00427 #define ENQUEUE_FLASH_Copyr( uplo, A, B, cntl ) \
00428         FLASH_Queue_push( (void *) FLA_Copyr_task, \
00429                           (void *) cntl, \
00430                           "Copyt", \
00431                           FALSE, \
00432                           1, 0, 1, 1, \
00433                           uplo, \
00434                           A, B )
00435 
00436 #define ENQUEUE_FLASH_Scal( alpha, A, cntl ) \
00437         FLASH_Queue_push( (void *) FLA_Scal_task, \
00438                           (void *) cntl, \
00439                           "Scal ", \
00440                           TRUE, \
00441                           0, 1, 0, 1, \
00442                           alpha, \
00443                           A )
00444 
00445 #define ENQUEUE_FLASH_Scalr( uplo, alpha, A, cntl ) \
00446         FLASH_Queue_push( (void *) FLA_Scalr_task, \
00447                           (void *) cntl, \
00448                           "Scalr", \
00449                           TRUE, \
00450                           1, 1, 0, 1, \
00451                           uplo, \
00452                           alpha, \
00453                           A )
00454 
00455 // Base
00456 
00457 #define ENQUEUE_FLASH_Obj_create_buffer( rs, cs, A, cntl ) \
00458         FLASH_Queue_push( (void *) FLA_Obj_create_buffer_task, \
00459                           (void *) cntl, \
00460                           "Buff ", \
00461                           FALSE, \
00462                           2, 0, 0, 1, \
00463                           rs, cs, \
00464                           A )
00465 
00466 #define ENQUEUE_FLASH_Obj_free_buffer( A, cntl ) \
00467         FLASH_Queue_push( (void *) FLA_Obj_free_buffer_task, \
00468                           (void *) cntl, \
00469                           "Free ", \
00470                           FALSE, \
00471                           0, 0, 0, 1, \
00472                           A )
00473 
00474 #else
00475 
00476 // LAPACK-level
00477 
00478 #define ENQUEUE_FLASH_LU_piv_macro( A, p, cntl ) \
00479         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00480 
00481 #define ENQUEUE_FLASH_Apply_pivots_macro( side, trans, p, A, cntl ) \
00482         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00483 
00484 #define ENQUEUE_FLASH_LU_piv( A, p, cntl ) \
00485         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00486 
00487 #define ENQUEUE_FLASH_LU_piv_copy( A, p, U, cntl ) \
00488         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00489 
00490 #define ENQUEUE_FLASH_Trsm_piv( A, C, p, cntl ) \
00491         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00492 
00493 #define ENQUEUE_FLASH_SA_LU( U, D, p, L, nb_alg, cntl ) \
00494         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00495 
00496 #define ENQUEUE_FLASH_SA_FS( L, D, p, C, E, nb_alg, cntl ) \
00497         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00498 
00499 #define ENQUEUE_FLASH_LU_nopiv( A, cntl ) \
00500         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00501 
00502 #define ENQUEUE_FLASH_Trinv( uplo, diag, A, cntl ) \
00503         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00504 
00505 #define ENQUEUE_FLASH_Ttmm( uplo, A, cntl ) \
00506         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00507 
00508 #define ENQUEUE_FLASH_Chol( uplo, A, cntl ) \
00509         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00510 
00511 #define ENQUEUE_FLASH_Sylv( transA, transB, isgn, A, B, C, scale, cntl ) \
00512         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00513 
00514 #define ENQUEUE_FLASH_Lyap( trans, isgn, A, C, scale, cntl ) \
00515         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00516 
00517 #define ENQUEUE_FLASH_QR_UT_macro( A, T, cntl ) \
00518         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00519 
00520 #define ENQUEUE_FLASH_QR_UT( A, T, cntl ) \
00521         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00522 
00523 #define ENQUEUE_FLASH_QR_UT_copy( A, T, U, cntl ) \
00524         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00525 
00526 #define ENQUEUE_FLASH_QR2_UT( B, D, T, cntl ) \
00527         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00528 
00529 #define ENQUEUE_FLASH_LQ_UT_macro( A, T, cntl ) \
00530         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00531 
00532 #define ENQUEUE_FLASH_CAQR2_UT( B, D, T, cntl ) \
00533         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00534 
00535 #define ENQUEUE_FLASH_UDdate_UT( R, C, D, T, cntl ) \
00536         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00537 
00538 #define ENQUEUE_FLASH_Apply_Q_UT( side, trans, direct, storev, A, T, W, B, cntl ) \
00539         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00540 
00541 #define ENQUEUE_FLASH_Apply_Q2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \
00542         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00543 
00544 #define ENQUEUE_FLASH_Apply_CAQ2_UT( side, trans, direct, storev, D, T, W, C, E, cntl ) \
00545         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00546 
00547 #define ENQUEUE_FLASH_Apply_QUD_UT( side, trans, direct, storev, T, W, R, U, C, V, D, cntl ) \
00548         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00549 
00550 #define ENQUEUE_FLASH_Eig_gest( inv, uplo, A, Y, B, cntl ) \
00551         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00552 
00553 // Level-3 BLAS
00554 
00555 #define ENQUEUE_FLASH_Gemm( transA, transB, alpha, A, B, beta, C, cntl ) \
00556         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00557 
00558 #define ENQUEUE_FLASH_Hemm( side, uplo, alpha, A, B, beta, C, cntl ) \
00559         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00560 
00561 #define ENQUEUE_FLASH_Herk( uplo, transA, alpha, A, beta, C, cntl ) \
00562         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00563 
00564 #define ENQUEUE_FLASH_Her2k( uplo, transA, alpha, A, B, beta, C, cntl  ) \
00565         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00566 
00567 #define ENQUEUE_FLASH_Symm( side, uplo, alpha, A, B, beta, C, cntl  ) \
00568         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00569 
00570 #define ENQUEUE_FLASH_Syrk( uplo, transA, alpha, A, beta, C, cntl  ) \
00571         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00572 
00573 #define ENQUEUE_FLASH_Syr2k( uplo, transA, alpha, A, B, beta, C, cntl  ) \
00574         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00575 
00576 #define ENQUEUE_FLASH_Trmm( side, uplo, trans, diag, alpha, A, C, cntl  ) \
00577         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00578 
00579 #define ENQUEUE_FLASH_Trsm( side, uplo, trans, diag, alpha, A, C, cntl ) \
00580         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00581 
00582 // Level-2 BLAS
00583 
00584 #define ENQUEUE_FLASH_Gemv( transA, alpha, A, x, beta, y, cntl ) \
00585         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00586 
00587 #define ENQUEUE_FLASH_Trsv( uplo, trans, diag, A, x, cntl ) \
00588         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00589 
00590 // Level-1 BLAS
00591 
00592 #define ENQUEUE_FLASH_Axpy( alpha, A, B, cntl ) \
00593         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00594 
00595 #define ENQUEUE_FLASH_Axpyt( trans, alpha, A, B, cntl ) \
00596         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00597 
00598 #define ENQUEUE_FLASH_Copy( A, B, cntl ) \
00599         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00600 
00601 #define ENQUEUE_FLASH_Copyt( trans, A, B, cntl ) \
00602         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00603 
00604 #define ENQUEUE_FLASH_Copyr( uplo, A, B, cntl ) \
00605         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00606 
00607 #define ENQUEUE_FLASH_Scal( alpha, A, cntl ) \
00608         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00609 
00610 #define ENQUEUE_FLASH_Scalr( uplo, alpha, A, cntl ) \
00611         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00612 
00613 // Base
00614 
00615 #define ENQUEUE_FLASH_Obj_create_buffer( rs, cs, A, cntl ) \
00616         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00617 
00618 #define ENQUEUE_FLASH_Obj_free_buffer( A, cntl ) \
00619         FLA_Check_error_code( FLA_SUPERMATRIX_NOT_ENABLED )
00620 
00621 #endif // FLA_ENABLE_SUPERMATRIX
00622 
00623 
00624 #endif // FLASH_QUEUE_MACRO_DEFS_H