Skip to content

Commit cd8eb83

Browse files
authored
Fix allocations and compiler warnings in ZROTG (#4289)
* Clean up ZROTG
1 parent 25096e5 commit cd8eb83

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

interface/zrotg.c

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,12 @@ void CNAME(void *VDA, void *VDB, FLOAT *C, void *VS) {
3030
FLOAT db_r = *(DB+0);
3131
FLOAT db_i = *(DB+1);
3232
//long double r;
33-
FLOAT *r, *S1=(FLOAT *)malloc(2*sizeof(FLOAT));
34-
FLOAT *R=(FLOAT *)malloc(2*sizeof(FLOAT));
33+
FLOAT S1[2];
34+
FLOAT R[2];
3535
long double d;
3636

3737
FLOAT ada = da_r * da_r + da_i * da_i;
3838
FLOAT adb = db_r * db_r + db_i * db_i;
39-
FLOAT adart = sqrt( da_r * da_r + da_i * da_i);
40-
FLOAT adbrt = sqrt( db_r * db_r + db_i * db_i);
4139

4240
PRINT_DEBUG_NAME;
4341

@@ -115,10 +113,13 @@ void CNAME(void *VDA, void *VDB, FLOAT *C, void *VS) {
115113
}
116114
} else {
117115
*C = ada / adahsq;
118-
if (*C >= safmin)
116+
if (*C >= safmin) {
119117
*R = *DA / *C;
120-
else
118+
*(R+1) = *(DA+1) / *(C+1);
119+
} else {
121120
*R = *DA * (h / adahsq);
121+
*(R+1) = *(DA+1) * (h / adahsq);
122+
}
122123
*S = *S1 * ada / adahsq;
123124
*(S+1) = *(S1+1) * ada / adahsq;
124125
}
@@ -178,4 +179,4 @@ void CNAME(void *VDA, void *VDB, FLOAT *C, void *VS) {
178179
}
179180
}
180181
}
181-
182+

0 commit comments

Comments
 (0)