From 5fc2203d8a9951416a6689ed7029e059ce0405d8 Mon Sep 17 00:00:00 2001 From: Jerome Robert Date: Sun, 24 Jan 2016 10:14:41 +0100 Subject: [PATCH] zgemv: Add a workaround for #746 --- interface/zgemv.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/interface/zgemv.c b/interface/zgemv.c index a335f6832..abf2aa710 100644 --- a/interface/zgemv.c +++ b/interface/zgemv.c @@ -239,6 +239,12 @@ void CNAME(enum CBLAS_ORDER order, buffer_size = (buffer_size + 3) & ~3; STACK_ALLOC(buffer_size, FLOAT, buffer); +#ifdef ARCH_X86_64 + // cgemv_t.S return NaN if there are NaN or Inf in the buffer (see bug #746) + if(trans && stack_alloc_size) + memset(buffer, 0, MIN(BUFFER_SIZE, sizeof(FLOAT) * buffer_size)); +#endif + #ifdef SMP if ( 1L * m * n < 1024L * GEMM_MULTITHREAD_THRESHOLD )