Exemple #1
0
void bli_herk_check( obj_t*  alpha,
                     obj_t*  a,
                     obj_t*  beta,
                     obj_t*  c )
{
	err_t e_val;
	obj_t ah;

	// Alias A to A^H so we can perform dimension checks.
	bli_obj_alias_with_trans( BLIS_CONJ_TRANSPOSE, *a, ah );

	// Check basic properties of the operation.

	bli_herk_basic_check( alpha, a, &ah, beta, c );

	// Check for real-valued alpha and beta.

	e_val = bli_check_real_valued_object( alpha );
	bli_check_error_code( e_val );

	e_val = bli_check_real_valued_object( beta );
	bli_check_error_code( e_val );

	// Check matrix squareness.

	e_val = bli_check_square_object( c );
	bli_check_error_code( e_val );

	// Check matrix structure.

	e_val = bli_check_hermitian_object( c );
	bli_check_error_code( e_val );
}
Exemple #2
0
void bli_her2_int_check( conj_t   conjh,
                         obj_t*   alpha,
                         obj_t*   x,
                         obj_t*   y,
                         obj_t*   c,
                         her2_t*  cntl )
{
	err_t e_val;

	// Check basic properties of the operation.

	bli_her2_basic_check( conjh, alpha, x, y, c );

	// Check matrix structure.

	if ( bli_is_conj( conjh ) )
	{
		e_val = bli_check_hermitian_object( c );
		bli_check_error_code( e_val );
	}
	else
	{
		e_val = bli_check_symmetric_object( c );
		bli_check_error_code( e_val );
	}

	// Check control tree pointer

	e_val = bli_check_valid_cntl( ( void* )cntl );
	bli_check_error_code( e_val );
}
Exemple #3
0
void bli_hemv_int_check( conj_t  conjh,
                         obj_t*  alpha,
                         obj_t*  a,
                         obj_t*  x,
                         obj_t*  beta,
                         obj_t*  y,
                         hemv_t* cntl )
{
	err_t e_val;

	// Check basic properties of the operation.

	bli_hemv_basic_check( alpha, a, x, beta, y );

	// Check matrix structure.

	if ( bli_is_conj( conjh ) )
	{
		e_val = bli_check_hermitian_object( a );
		bli_check_error_code( e_val );
	}
	else
	{
		e_val = bli_check_symmetric_object( a );
		bli_check_error_code( e_val );
	}

	// Check object buffers (for non-NULLness).

	e_val = bli_check_object_buffer( alpha );
	bli_check_error_code( e_val );

	e_val = bli_check_object_buffer( a );
	bli_check_error_code( e_val );

	e_val = bli_check_object_buffer( x );
	bli_check_error_code( e_val );

	e_val = bli_check_object_buffer( beta );
	bli_check_error_code( e_val );

	e_val = bli_check_object_buffer( y );
	bli_check_error_code( e_val );

	// Check control tree pointer.

	e_val = bli_check_valid_cntl( ( void* )cntl );
	bli_check_error_code( e_val );
}
Exemple #4
0
void bli_hemv_check( obj_t*  alpha,
                     obj_t*  a,
                     obj_t*  x,
                     obj_t*  beta,
                     obj_t*  y )
{
	err_t e_val;

	// Check basic properties of the operation.

	bli_hemv_basic_check( alpha, a, x, beta, y );

	// Check matrix structure.

	e_val = bli_check_hermitian_object( a );
	bli_check_error_code( e_val );
}
Exemple #5
0
void bli_her2_check( conj_t   conjh,
                     obj_t*   alpha,
                     obj_t*   x,
                     obj_t*   y,
                     obj_t*   c )
{
	err_t e_val;

	// Check basic properties of the operation.

	bli_her2_basic_check( conjh, alpha, x, y, c );

	// Check matrix structure.

	e_val = bli_check_hermitian_object( c );
	bli_check_error_code( e_val );
}
Exemple #6
0
void bli_hemm_check( side_t  side,
                     obj_t*  alpha,
                     obj_t*  a,
                     obj_t*  b,
                     obj_t*  beta,
                     obj_t*  c )
{
	err_t e_val;

	// Check object pointers.

	e_val = bli_check_null_pointer( alpha );
	bli_check_error_code( e_val );

	e_val = bli_check_null_pointer( a );
	bli_check_error_code( e_val );

	e_val = bli_check_null_pointer( b );
	bli_check_error_code( e_val );

	e_val = bli_check_null_pointer( beta );
	bli_check_error_code( e_val );

	e_val = bli_check_null_pointer( c );
	bli_check_error_code( e_val );

	// Check basic properties of the operation.

	bli_hemm_basic_check( side, alpha, a, b, beta, c );

	// Check matrix squareness.

	e_val = bli_check_square_object( a );
	bli_check_error_code( e_val );

	// Check matrix structure.

	e_val = bli_check_hermitian_object( a );
	bli_check_error_code( e_val );
}