Fixed alignment bugs in level-1f kernels.

Details:
- Fixed bugs whereby the level-1f dotxf, axpyxf, and dotxaxpyf kernels
  were attempting to compute problems with unaligned leading dimensions
  with optimized code, rather than (correctly) using the reference
  implementations. Thanks to Devin Matthews for reporting this bug.
This commit is contained in:
Field G. Van Zee
2014-09-17 11:10:07 -05:00
parent 870761eb90
commit a68b316ca4
3 changed files with 6 additions and 3 deletions

View File

@@ -91,7 +91,8 @@ void bli_daxpyf_opt_var1(
{
use_ref = TRUE;
}
else if ( inca != 1 || incx != 1 || incy != 1 )
else if ( inca != 1 || incx != 1 || incy != 1 ||
bli_is_unaligned_to( lda, 16 ) )
{
use_ref = TRUE;
}

View File

@@ -115,7 +115,8 @@ void bli_ddotxaxpyf_opt_var1( conj_t conjat,
{
use_ref = TRUE;
}
else if ( inca != 1 || incw != 1 || incx != 1 || incy != 1 || incz != 1 )
else if ( inca != 1 || incw != 1 || incx != 1 || incy != 1 || incz != 1 ||
bli_is_unaligned_to( lda, 16 ) )
{
use_ref = TRUE;
}

View File

@@ -103,7 +103,8 @@ void bli_ddotxf_opt_var1(
{
use_ref = TRUE;
}
else if ( inca != 1 || incx != 1 || incy != 1 )
else if ( inca != 1 || incx != 1 || incy != 1 ||
bli_is_unaligned_to( lda, 16 ) )
{
use_ref = TRUE;
}