From ab13cfef9330def014ce64a11a06b93a24696186 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 31 May 2024 14:34:49 +0200 Subject: [PATCH] more fixes for infinite x --- kernel/x86_64/zscal.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/kernel/x86_64/zscal.c b/kernel/x86_64/zscal.c index 05114c7fa..f55755727 100644 --- a/kernel/x86_64/zscal.c +++ b/kernel/x86_64/zscal.c @@ -258,13 +258,17 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i, temp0 = NAN; else temp0 = -da_i * x[i+1]; - x[i+1] = da_i * x[i]; + if (!isinf(x[i+1])) + x[i+1] = da_i * x[i]; + else x[i+1] = NaN; x[i] = temp0; if (isnan(x[i+inc_x]) || isinf(x[i+inc_x])) temp1 = NAN; else temp1 = -da_i * x[i+1+inc_x]; - x[i+1+inc_x] = da_i * x[i+inc_x]; + if (!isinf(x[i+1+inc_x])) + x[i+1+inc_x] = da_i * x[i+inc_x]; + else x[i+1+inc_x] = NaN; x[i+inc_x] = temp1; i += 2*inc_x ; j+=2;