text: /*
  
      Copyright (C) 2014, The University of Texas at Austin
  
      This file is part of libflame and is available under the 3-Clause
      BSD license, which can be found in the LICENSE file at the top-level
      directory, or at http://opensource.org/licenses/BSD-3-Clause
  
  */
  
  #include "FLAME.h"
  
  FLA_Error FLA_Trmvsx_check( FLA_Uplo uplo, FLA_Trans transa, FLA_Diag diag, FLA_Obj alpha, FLA_Obj A, FLA_Obj x, FLA_Obj beta, FLA_Obj y ) 
  {
    FLA_Error e_val;
  
    e_val = FLA_Check_valid_uplo( uplo );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_valid_trans( transa );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_valid_diag( diag );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_floating_object( A );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_nonconstant_object( A );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_identical_object_datatype( A, x );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_identical_object_datatype( A, y );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_consistent_object_datatype( A, alpha );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_consistent_object_datatype( A, beta );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_if_scalar( alpha );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_if_scalar( beta );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_square( A );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_if_vector( x );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_if_vector( y );
    FLA_Check_error_code( e_val );
  
    e_val = FLA_Check_matrix_vector_dims( FLA_NO_TRANSPOSE, A, x, y );
    FLA_Check_error_code( e_val );
   
    return FLA_SUCCESS;
  }
  
  