new mafft v 6.857 with extensions
[jabaws.git] / binaries / src / mafft / core / Halignmm.c
index 2d58cd7..bec9de2 100644 (file)
@@ -8,7 +8,7 @@
 #define USE_PENALTY_EX  0
 #define FASTMATCHCALC 1
 
-static float **impmtx = NULL;
+static TLS float **impmtx = NULL;
 
 #if 0 // by D.Mathog
 static float countnocountxx( Gappat *pat1, float diaf1, Gappat *pat2, int offset1, int offset2 )
@@ -180,12 +180,12 @@ static void imp_match_out_vead_tateH( float *imp, int j1, int lgth1 )
 void imp_match_init_strictH( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom, int forscore )
 {
        int i, j, k1, k2, tmpint, start1, start2, end1, end2;
-       static int impalloclen = 0;
+       static TLS int impalloclen = 0;
        float effij;
        double effijx;
        char *pt, *pt1, *pt2;
-       static char *nocount1 = NULL;
-       static char *nocount2 = NULL;
+       static TLS char *nocount1 = NULL;
+       static TLS char *nocount2 = NULL;
        LocalHom *tmpptr;
 
        if( impalloclen < lgth1 + 2 || impalloclen < lgth2 + 2 )
@@ -718,39 +718,39 @@ float H__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc,
        float *mjpt, *prept, *curpt;
        int *mpjpt;
 #endif
-       static float mi, *m;
-       static int **ijp;
-       static int mpi, *mp;
-       static float *w1, *w2;
-       static float *match;
-       static float *initverticalw;    /* kufuu sureba iranai */
-       static float *lastverticalw;    /* kufuu sureba iranai */
-       static char **mseq1;
-       static char **mseq2;
-       static char **mseq;
-       static Gappat **gappat1;
-       static Gappat **gappat2;
-       static float *digf1;
-       static float *digf2;
-       static float *diaf1;
-       static float *diaf2;
-       static float *gapz1;
-       static float *gapz2;
-       static float *gapf1;
-       static float *gapf2;
-       static float *ogcp1g;
-       static float *ogcp2g;
-       static float *fgcp1g;
-       static float *fgcp2g;
-       static float *ogcp1;
-       static float *ogcp2;
-       static float *fgcp1;
-       static float *fgcp2;
-       static float **cpmx1;
-       static float **cpmx2;
-       static int **intwork;
-       static float **floatwork;
-       static int orlgth1 = 0, orlgth2 = 0;
+       static TLS float mi, *m;
+       static TLS int **ijp;
+       static TLS int mpi, *mp;
+       static TLS float *w1, *w2;
+       static TLS float *match;
+       static TLS float *initverticalw;    /* kufuu sureba iranai */
+       static TLS float *lastverticalw;    /* kufuu sureba iranai */
+       static TLS char **mseq1;
+       static TLS char **mseq2;
+       static TLS char **mseq;
+       static TLS Gappat **gappat1;
+       static TLS Gappat **gappat2;
+       static TLS float *digf1;
+       static TLS float *digf2;
+       static TLS float *diaf1;
+       static TLS float *diaf2;
+       static TLS float *gapz1;
+       static TLS float *gapz2;
+       static TLS float *gapf1;
+       static TLS float *gapf2;
+       static TLS float *ogcp1g;
+       static TLS float *ogcp2g;
+       static TLS float *fgcp1g;
+       static TLS float *fgcp2g;
+       static TLS float *ogcp1;
+       static TLS float *ogcp2;
+       static TLS float *fgcp1;
+       static TLS float *fgcp2;
+       static TLS float **cpmx1;
+       static TLS float **cpmx2;
+       static TLS int **intwork;
+       static TLS float **floatwork;
+       static TLS int orlgth1 = 0, orlgth2 = 0;
        float fpenalty = (float)penalty;
        float tmppenal;
        float cumpenal;