diff --git a/kernel/zarch/zscal.c b/kernel/zarch/zscal.c index 635e1fef6..5111bc455 100644 --- a/kernel/zarch/zscal.c +++ b/kernel/zarch/zscal.c @@ -433,9 +433,13 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i, x[i + 1] = NAN; else x[i + 1] = da_r * x[i + 1]; + } else { + if (isnan(x[i])) + x[i + 1] = NAN; + else + x[i + 1] = da_r * x[i + 1]; } - x[i + 1] = da_r * x[i + 1]; - x[i] = temp0; + x[i] = temp0; i += 2; j++;