text: /**************************************************************************************************
  *                                                                                                 *
  * This file is part of BLASFEO.                                                                   *
  *                                                                                                 *
  * BLASFEO -- BLAS for embedded optimization.                                                      *
  * Copyright (C) 2019 by Gianluca Frison.                                                          *
  * Developed at IMTEK (University of Freiburg) under the supervision of Moritz Diehl.              *
  * All rights reserved.                                                                            *
  *                                                                                                 *
  * The 2-Clause BSD License                                                                        *
  *                                                                                                 *
  * Redistribution and use in source and binary forms, with or without                              *
  * modification, are permitted provided that the following conditions are met:                     *
  *                                                                                                 *
  * 1. Redistributions of source code must retain the above copyright notice, this                  *
  *    list of conditions and the following disclaimer.                                             *
  * 2. Redistributions in binary form must reproduce the above copyright notice,                    *
  *    this list of conditions and the following disclaimer in the documentation                    *
  *    and/or other materials provided with the distribution.                                       *
  *                                                                                                 *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND                 *
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED                   *
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE                          *
  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR                 *
  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES                  *
  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;                    *
  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND                     *
  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT                      *
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS                   *
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                                    *
  *                                                                                                 *
  * Author: Gianluca Frison, gianluca.frison (at) imtek.uni-freiburg.de                             *
  *                                                                                                 *
  **************************************************************************************************/
  
  #include <stdlib.h>
  #include <stdio.h>
  
  
  #include "../include/blasfeo_target.h"
  #include "../include/blasfeo_common.h"
  #include "../include/blasfeo_d_aux.h"
  #include "../include/blasfeo_d_kernel.h"
  #include "../include/blasfeo_d_blas.h"
  
  
  
  #if defined(FORTRAN_BLAS_API)
  #define blasfeo_dtrsm dtrsm_
  #define blasfeo_dtrtrs dtrtrs_
  #endif
  
  
  
  void blasfeo_dtrtrs(char *uplo, char *trans, char *diag, int *pm, int *pn, double *A, int *plda, double *B, int *pldb, int *info)
  	{
  
  #if defined(PRINT_NAME)
  	printf("\nblasfeo_dtrtrs %c %c %c %d %d %p %d %p %d %d\n", *uplo, *trans, *diag, *pm, *pn, A, *plda, B, *pldb, *info);
  #endif
  
  
  	int m = *pm;
  	int lda = *plda;
  
  	char c_l = 'l';
  
  	double d_1 = 1.0;
  
  	int ii;
  
  	*info = 0;
  
  	if(m==0)
  		return;
  
  	for(ii=0; ii<m; ii++)
  		{
  		if(A[ii+lda*ii]==0.0)
  			{
  			*info = ii;
  			return;
  			}
  		}
  	
  //	printf("\n%c %c %c %c\n", c_l, *uplo, *trans, *diag);
  	blasfeo_dtrsm(&c_l, uplo, trans, diag, pm, pn, &d_1, A, plda, B, pldb);
  
  	return;
  
  	}
  
  
  
  