Browse Source

Update cscal.c

pull/5284/head
Martin Kroeker GitHub 8 months ago
parent
commit
a1efb03610
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
1 changed files with 34 additions and 2 deletions
  1. +34
    -2
      kernel/zarch/cscal.c

+ 34
- 2
kernel/zarch/cscal.c View File

@@ -209,8 +209,8 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i,

BLASLONG n1 = n & -2;

if (da_i == 0.0 && dummy2 == 0) {
if (da_i == 0.0) {
if (dummy2 == 0) {
while (j < n1) {

x[i] = 0.0;
@@ -230,7 +230,39 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i,
j++;

}
} else {
while (j < n1) {
if (isnan(x[i]) || isinf(x[i]) || isnan(x[i+1])) {
x[i] = NAN;
x[i+1] = NAN;
}else{
x[i] = 0.0;
x[i + 1] = 0.0;
}
if (isnan(x[i+incx]) || isinf(x[i+incx]) || isnan(x[i+1+incx])) {
x[i + inc_x] = NAN;
x[i + 1 + inc_x] = NAN;
} else {
x[i + inc_x] = 0.0;
x[i + 1 + inc_x] = 0.0;
}
i += 2 * inc_x;
j += 2;

}

while (j < n) {
if (isnan(x[i]) || isinf(x[i]) || isnan(x[i+1])) {
x[i] = NAN;
x[i+1] = NAN;
}else{
x[i] = 0.0;
x[i + 1] = 0.0;
}
i += inc_x;
j++;

}
} else {

while (j < n1) {


Loading…
Cancel
Save