diff --git a/frame/1m/packm/bli_packm_part.c b/frame/1m/packm/bli_packm_part.c index cf1215a77..376ae0f4f 100644 --- a/frame/1m/packm/bli_packm_part.c +++ b/frame/1m/packm/bli_packm_part.c @@ -54,7 +54,7 @@ void bli_packm_acquire_mpart_t2b( subpart_t requested_part, // Partitioning top-to-bottom through packed column panels (which are // row-stored) is not yet supported. - if ( bli_obj_is_row_stored( *obj ) ) + if ( bli_obj_is_row_packed( *obj ) ) { bli_check_error_code( BLIS_NOT_YET_IMPLEMENTED ); } @@ -130,7 +130,7 @@ void bli_packm_acquire_mpart_l2r( subpart_t requested_part, // Partitioning left-to-right through packed row panels (which are // column-stored) is not yet supported. - if ( bli_obj_is_col_stored( *obj ) ) + if ( bli_obj_is_col_packed( *obj ) ) { bli_check_error_code( BLIS_NOT_YET_IMPLEMENTED ); } diff --git a/frame/include/bli_obj_macro_defs.h b/frame/include/bli_obj_macro_defs.h index d6655460e..c6d65f84c 100644 --- a/frame/include/bli_obj_macro_defs.h +++ b/frame/include/bli_obj_macro_defs.h @@ -581,19 +581,20 @@ bli_obj_width_stored( obj ) \ ( bli_abs( bli_obj_col_stride( obj ) ) ) +// +// NOTE: The following two macros differ from their non-obj counterparts +// in that they do not identify m x 1 and 1 x n objects as column-stored +// and row-stored, respectively, which is needed when considering packed +// objects. But this is okay, since none of the invocations of these +// "obj" macros are used on packed matrices. +// #define bli_obj_is_row_stored( obj ) \ \ - ( bli_obj_col_stride_mag( obj ) == 1 && \ - ( bli_obj_row_stride_mag( obj ) > 1 || \ - bli_obj_width( obj ) == 1 ) \ - ) + ( bli_obj_col_stride_mag( obj ) == 1 ) #define bli_obj_is_col_stored( obj ) \ \ - ( bli_obj_row_stride_mag( obj ) == 1 && \ - ( bli_obj_col_stride_mag( obj ) > 1 || \ - bli_obj_length( obj ) == 1 ) \ - ) + ( bli_obj_row_stride_mag( obj ) == 1 ) #define bli_obj_is_gen_stored( obj ) \ \