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_Trsm_llt( FLA_Diag diag, FLA_Obj alpha, FLA_Obj A, FLA_Obj B, fla_trsm_t* cntl )
  {
  	FLA_Error r_val = FLA_SUCCESS;
  	
  	if      ( FLA_Cntl_variant( cntl ) == FLA_SUBPROBLEM )
  	{
  		r_val = FLA_Trsm_llt_task( diag, alpha, A, B, cntl );
  	}
  #ifdef FLA_ENABLE_NON_CRITICAL_CODE
  	else if ( FLA_Cntl_variant( cntl ) == FLA_BLOCKED_VARIANT1 )
  	{
  		r_val = FLA_Trsm_llt_blk_var1( diag, alpha, A, B, cntl );
  	}
  #endif
  	else if ( FLA_Cntl_variant( cntl ) == FLA_BLOCKED_VARIANT2 )
  	{
  		r_val = FLA_Trsm_llt_blk_var2( diag, alpha, A, B, cntl );
  	}
  	else if ( FLA_Cntl_variant( cntl ) == FLA_BLOCKED_VARIANT3 )
  	{
  		r_val = FLA_Trsm_llt_blk_var3( diag, alpha, A, B, cntl );
  	}
  #ifdef FLA_ENABLE_NON_CRITICAL_CODE
  	else if ( FLA_Cntl_variant( cntl ) == FLA_BLOCKED_VARIANT4 )
  	{
  		r_val = FLA_Trsm_llt_blk_var4( diag, alpha, A, B, cntl );
  	}
  #endif
  #ifdef FLA_ENABLE_NON_CRITICAL_CODE
  	else if ( FLA_Cntl_variant( cntl ) == FLA_UNBLOCKED_VARIANT1 )
  	{
  		r_val = FLA_Trsm_llt_unb_var1( diag, alpha, A, B );
  	}
  	else if ( FLA_Cntl_variant( cntl ) == FLA_UNBLOCKED_VARIANT2 )
  	{
  		r_val = FLA_Trsm_llt_unb_var2( diag, alpha, A, B );
  	}
  	else if ( FLA_Cntl_variant( cntl ) == FLA_UNBLOCKED_VARIANT3 )
  	{
  		r_val = FLA_Trsm_llt_unb_var3( diag, alpha, A, B );
  	}
  	else if ( FLA_Cntl_variant( cntl ) == FLA_UNBLOCKED_VARIANT4 )
  	{
  		r_val = FLA_Trsm_llt_unb_var4( diag, alpha, A, B );
  	}
  #endif
  	else
  	{
  		r_val = FLA_Check_error_code( FLA_NOT_YET_IMPLEMENTED );
  	}
  
  	return r_val;
  }
  
  