Ref #750 and Ref #740 : bugfix for sdot, dsdot and ddot on arm

This commit is contained in:
Werner Saar 2016-01-23 11:59:51 +01:00
parent 72390e3ffb
commit 9066d1f982
2 changed files with 15 additions and 11 deletions

View File

@ -31,6 +31,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* CTEST : OK
* TEST : OK
*
* 2016/01/23 Saar
* Bugfix for Refs #750 and #740
**************************************************************************************/
#define ASSEMBLER
@ -152,8 +154,12 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mov Y, OLD_Y
ldr INC_Y, OLD_INC_Y
vsub.f64 d0 , d0 , d0
vsub.f64 d1 , d1 , d1
movs r4, #0 // clear floating point register
vmov s0, r4
vmov s1, r4
vcvt.f64.f32 d0, s0
vcvt.f64.f32 d1, s1
cmp N, #0
ble ddot_kernel_L999

View File

@ -31,6 +31,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* CTEST : OK (no test for dsdot)
* TEST : OK (no test for dsdot)
*
* 2016/01/23 Saar
* Bugfix for Refs #750 and #740
**************************************************************************************/
#define ASSEMBLER
@ -240,16 +242,12 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mov Y, OLD_Y
ldr INC_Y, OLD_INC_Y
movs r4, #0 // clear floating point register
vmov s0, r4
vmov s1, r4
#if defined(DSDOT)
vsub.f64 d0 , d0 , d0
vsub.f64 d1 , d1 , d1
#else
vsub.f32 s0 , s0 , s0
vsub.f32 s1 , s1 , s1
vcvt.f64.f32 d0, s0
vcvt.f64.f32 d1, s1
#endif
cmp N, #0