Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
easea
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Arnaud Kress
easea
Commits
d74e0ce0
Commit
d74e0ce0
authored
Sep 21, 2010
by
kruger
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Modele en ilot final ?
parent
b7cdcc01
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
10573 additions
and
10119 deletions
+10573
-10119
Easea.h
Easea.h
+10
-11
EaseaLex.cpp
EaseaLex.cpp
+8128
-8074
EaseaLex.l
EaseaLex.l
+6
-4
EaseaParse.cpp
EaseaParse.cpp
+578
-557
EaseaParse.h
EaseaParse.h
+23
-22
EaseaParse.y
EaseaParse.y
+16
-18
INSTALL.txt
INSTALL.txt
+1
-1
examples/rastrigin/rastrigin.ez
examples/rastrigin/rastrigin.ez
+177
-0
examples/weierstrass_std/weierstrass.ez
examples/weierstrass_std/weierstrass.ez
+11
-5
libeasea/CEvolutionaryAlgorithm.cpp
libeasea/CEvolutionaryAlgorithm.cpp
+14
-11
libeasea/COptionParser.cpp
libeasea/COptionParser.cpp
+1
-0
libeasea/Makefile
libeasea/Makefile
+6
-3
libeasea/include/CEvolutionaryAlgorithm.h
libeasea/include/CEvolutionaryAlgorithm.h
+1
-0
libeasea/include/Parameters.h
libeasea/include/Parameters.h
+1
-0
tpl/CMAES.tpl
tpl/CMAES.tpl
+663
-618
tpl/CUDA.tpl
tpl/CUDA.tpl
+163
-116
tpl/CUDA_MEM.tpl
tpl/CUDA_MEM.tpl
+62
-17
tpl/STD.tpl
tpl/STD.tpl
+6
-1
tpl/STD_MEM.tpl
tpl/STD_MEM.tpl
+706
-661
No files found.
Easea.h
View file @
d74e0ce0
...
...
@@ -20,16 +20,14 @@ Centre de Math
#define CUDA 4
#define STD 5
#define CMAES 6
#define MEMETIC 7
#define STD_FLAVOR_SO 0
#define STD_FLAVOR_MO 1
#define STD_FLAVOR_CMAES 2
#define STD_FLAVOR_MEMETIC 3
#define CUDA_FLAVOR_SO 0
#define CUDA_FLAVOR_MO 1
#define CUDA_FLAVOR_CMAES 2
#define CUDA_FLAVOR_GP 3
#define CUDA_FLAVOR_MEMETIC 4
#define CUDA_FLAVOR_GP 2
#define UNIX 1
...
...
@@ -44,22 +42,23 @@ extern int nClasses_nb;
extern
FILE
*
fpOutputFile
,
*
fpTemplateFile
,
*
fpGenomeFile
,
*
fpExplodedGenomeFile
;
extern
char
sRAW_PROJECT_NAME
[],
sPROJECT_NAME
[],
sEO_DIR
[],
sEZ_PATH
[
1000
],
sTPL_DIR
[
1000
],
sEZ_FILE_NAME
[];
extern
char
sLOWER_CASE_PROJECT_NAME
[];
extern
float
fSELECT_PRM
,
fRED_PAR_PRM
,
fRED_FINAL_PRM
,
fRED_OFF_PRM
;
extern
char
sSELECTOR
[],
sSELECTOR_OPERATOR
[],
sRED_PAR
[],
sRED_PAR_OPERATOR
[],
sRED_FINAL
[],
sRED_FINAL_OPERATOR
[],
sRED_OFF
[],
sRED_OFF_OPERATOR
[];
extern
int
nMINIMISE
,
nELITE
;
extern
char
sIP_FILE
[]
;
extern
bool
bELITISM
,
bVERBOSE
;
extern
bool
bBALDWINISM
;
extern
bool
bPRINT_STATS
,
bPLOT_STATS
,
bGENERATE_CSV_FILE
,
bGENERATE_GNUPLOT_SCRIPT
,
bGENERATE_R_SCRIPT
;
extern
bool
bSAVE_POPULATION
,
bSTART_FROM_FILE
;
extern
bool
bREMOTE_ISLAND_MODEL
;
extern
bool
bLINE_NUM_EZ_FILE
;
extern
char
*
nGENOME_NAME
;
extern
int
nPOP_SIZE
,
nNB_GEN
,
nNB_OPT_IT
,
nOFF_SIZE
,
nPROBLEM_DIM
,
nTIME_LIMIT
;
extern
float
fMUT_PROB
,
fXOVER_PROB
,
fSURV_PAR_SIZE
,
fSURV_OFF_SIZE
;
extern
bool
bREMOTE_ISLAND_MODEL
;
extern
int
nWARNINGS
,
nERRORS
;
extern
int
TARGET
,
OPERATING_SYSTEM
;
extern
int
TARGET_FLAVOR
;
extern
bool
bLINE_NUM_EZ_FILE
;
extern
int
nMINIMISE
,
nELITE
;
extern
float
fMUT_PROB
,
fXOVER_PROB
,
fSURV_PAR_SIZE
,
fSURV_OFF_SIZE
;
extern
float
fSELECT_PRM
,
fRED_PAR_PRM
,
fRED_FINAL_PRM
,
fRED_OFF_PRM
;
extern
unsigned
iMAX_INIT_TREE_D
,
iMIN_INIT_TREE_D
,
iMAX_TREE_D
,
iNB_GPU
,
iPRG_BUF_SIZE
,
iMAX_TREE_DEPTH
,
iNO_FITNESS_CASES
;
// Prototypes
...
...
EaseaLex.cpp
View file @
d74e0ce0
This source diff could not be displayed because it is too large. You can
view the blob
instead.
EaseaLex.l
View file @
d74e0ce0
...
...
@@ -1115,6 +1115,7 @@ if(OPERATING_SYSTEM=WINDOWS)
<TEMPLATE_ANALYSIS>"\\BALDWINISM" {fprintf(fpOutputFile,"%d",bBALDWINISM);}
<TEMPLATE_ANALYSIS>"\\REMOTE_ISLAND_MODEL" {fprintf(fpOutputFile,"%d",bREMOTE_ISLAND_MODEL);}
<TEMPLATE_ANALYSIS>"\\IP_FILE" {if(strlen(sIP_FILE)>0)fprintf(fpOutputFile,"%s",sIP_FILE); else fprintf(fpOutputFile,"NULL");}
<TEMPLATE_ANALYSIS>"\\PRINT_STATS" {fprintf(fpOutputFile,"%d",bPRINT_STATS);}
<TEMPLATE_ANALYSIS>"\\PLOT_STATS" {fprintf(fpOutputFile,"%d",bPLOT_STATS);}
...
...
@@ -2121,6 +2122,7 @@ if(OPERATING_SYSTEM=WINDOWS)
<GET_PARAMETERS>"Baldwinism"[ \t\n]*":"[ \t\n]* {if (bVERBOSE) printf ("\tBaldwinism...\n");return BALDWINISM;}
<GET_PARAMETERS>"Remote"[ \t\n]+"island"[ \t\n]+"model"[ \t\n]*":"[ \t\n]* {if(bVERBOSE) printf ("\tRemote Island Model...\n"); return REMOTE_ISLAND_MODEL;}
<GET_PARAMETERS>"IP"[ \t\n]+"file"[ \t\n]*":"[ \t\n]* {if(bVERBOSE) printf("\tIP File...\n"); return IP_FILE;}
// number
...
...
@@ -2274,11 +2276,11 @@ int CEASEALexer::create(CEASEAParser* pParser, CSymbolTable* pSymTable)
if (TARGET==CUDA){
if(TARGET_FLAVOR == CUDA_FLAVOR_SO )
strcat(sTemp,"CUDA.tpl");
else if(TARGET_FLAVOR == C
UDA_FLAVOR_C
MAES )
else if(TARGET_FLAVOR == CMAES )
strcat(sTemp,"CMAES_CUDA.tpl");
else if( TARGET_FLAVOR == CUDA_FLAVOR_GP )
strcat(sTemp,"CUDA_GP.tpl");
else if(TARGET_FLAVOR ==
CUDA_FLAVOR_
MEMETIC )
else if(TARGET_FLAVOR == MEMETIC )
strcat(sTemp,"CUDA_MEM.tpl");
else
strcat(sTemp,"CUDA_MO.tpl");
...
...
@@ -2292,9 +2294,9 @@ int CEASEALexer::create(CEASEAParser* pParser, CSymbolTable* pSymTable)
if (TARGET==STD){
if(TARGET_FLAVOR == STD_FLAVOR_SO)
strcat(sTemp,"STD.tpl");
else if (TARGET_FLAVOR ==
STD_FLAVOR_
CMAES)
else if (TARGET_FLAVOR == CMAES)
strcat(sTemp,"CMAES.tpl");
else if (TARGET_FLAVOR ==
STD_FLAVOR_
MEMETIC )
else if (TARGET_FLAVOR == MEMETIC )
strcat(sTemp,"STD_MEM.tpl");
else
strcat(sTemp,"STD_MO.tpl");
...
...
EaseaParse.cpp
View file @
d74e0ce0
...
...
@@ -50,8 +50,9 @@ bool bPRINT_STATS=1;
bool bPLOT_STATS=0;
bool bGENERATE_CSV_FILE=0, bGENERATE_R_SCRIPT=0, bGENERATE_GNUPLOT_SCRIPT=0;
bool bSAVE_POPULATION=0, bSTART_FROM_FILE=0;
bool bBALDWINISM=0;
bool bREMOTE_ISLAND_MODEL=0;
bool bBALDWINISM=0; //memetic
bool bREMOTE_ISLAND_MODEL=0; //remote island model
char sIP_FILE[128]; //remote island model
int nPOP_SIZE, nOFF_SIZE;
float fSURV_PAR_SIZE=-1.0, fSURV_OFF_SIZE=-1.0;
char *nGENOME_NAME;
...
...
@@ -65,7 +66,7 @@ FILE *fpOutputFile, *fpTemplateFile, *fpGenomeFile;//, *fpExplodedGenomeFile;
unsigned iMAX_INIT_TREE_D,iMIN_INIT_TREE_D,iMAX_TREE_D,iNB_GPU,iPRG_BUF_SIZE,iMAX_TREE_DEPTH,iMAX_XOVER_DEPTH,iNO_FITNESS_CASES;
#line
69
"EaseaParse.cpp"
#line
70
"EaseaParse.cpp"
// repeated because of possible precompiled header
#include <cyacc.h>
...
...
@@ -77,7 +78,7 @@ FILE *fpOutputFile, *fpTemplateFile, *fpGenomeFile;//, *fpExplodedGenomeFile;
YYPARSENAME::YYPARSENAME()
{
yytables();
#line 17
7
"EaseaParse.y"
#line 17
9
"EaseaParse.y"
CSymbol *pNewBaseType;
...
...
@@ -111,7 +112,7 @@ YYPARSENAME::YYPARSENAME()
pNewBaseType->ObjectType=oBaseClass;
SymbolTable.insert(pNewBaseType);
#line 11
5
"EaseaParse.cpp"
#line 11
6
"EaseaParse.cpp"
}
#ifndef YYSTYPE
...
...
@@ -156,12 +157,12 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 21
7
"EaseaParse.y"
#line 21
9
"EaseaParse.y"
if (bVERBOSE){ printf(" _______________________________________\n");
printf ("\nGeneration of the C++ source file for %s.\n\n",sPROJECT_NAME);}
#line 16
5
"EaseaParse.cpp"
#line 16
6
"EaseaParse.cpp"
}
}
break;
...
...
@@ -172,12 +173,12 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 22
2
"EaseaParse.y"
#line 22
4
"EaseaParse.y"
if (bVERBOSE) printf(" _______________________________________\n");
if (bVERBOSE) printf ("\nGeneration of the C++ source file for %s.\n\n",sPROJECT_NAME);
#line 18
1
"EaseaParse.cpp"
#line 18
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -188,10 +189,10 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 23
0
"EaseaParse.y"
#line 23
2
"EaseaParse.y"
if (bVERBOSE) printf("Declaration of user classes :\n\n");
#line 19
5
"EaseaParse.cpp"
#line 19
6
"EaseaParse.cpp"
}
}
break;
...
...
@@ -202,10 +203,10 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 23
3
"EaseaParse.y"
#line 23
5
"EaseaParse.y"
if (bVERBOSE) printf("No user class declaration found other than GenomeClass.\n");
#line 2
09
"EaseaParse.cpp"
#line 2
10
"EaseaParse.cpp"
}
}
break;
...
...
@@ -216,7 +217,7 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 24
3
"EaseaParse.y"
#line 24
5
"EaseaParse.y"
pCURRENT_CLASS=SymbolTable.insert(yyattribute(1 - 1).pSymbol);
pCURRENT_CLASS->pSymbolList=new CLList<CSymbol *>();
...
...
@@ -224,7 +225,7 @@ void YYPARSENAME::yyaction(int action)
//DEBUG_PRT("Yacc Symbol declaration %s %d",$1->sName,$1->nSize);
pCLASSES[nClasses_nb++] = yyattribute(1 - 1).pSymbol;
#line 22
8
"EaseaParse.cpp"
#line 22
9
"EaseaParse.cpp"
}
}
break;
...
...
@@ -235,12 +236,12 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 6);
#endif
{
#line 25
0
"EaseaParse.y"
#line 25
2
"EaseaParse.y"
if (bVERBOSE) printf("Class %s declared for %d bytes.\n\n",yyattribute(1 - 5).pSymbol->sName,yyattribute(1 - 5).pSymbol->nSize);
//DEBUG_PRT("Yacc variable declaration %s %d",$1->sName,$1->nSize);
#line 24
4
"EaseaParse.cpp"
#line 24
5
"EaseaParse.cpp"
}
}
break;
...
...
@@ -251,9 +252,9 @@ void YYPARSENAME::yyaction(int action)
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 26
3
"EaseaParse.y"
#line 26
5
"EaseaParse.y"
pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattribute(1 - 2).ObjectQualifier;
#line 25
7
"EaseaParse.cpp"
#line 25
8
"EaseaParse.cpp"
}
}
break;
...
...
@@ -264,9 +265,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 5);
#endif
{
#line 26
3
"EaseaParse.y"
#line 26
5
"EaseaParse.y"
#line 27
0
"EaseaParse.cpp"
#line 27
1
"EaseaParse.cpp"
}
}
break;
...
...
@@ -277,9 +278,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 26
4
"EaseaParse.y"
#line 26
6
"EaseaParse.y"
pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattribute(1 - 2).ObjectQualifier;
#line 28
3
"EaseaParse.cpp"
#line 28
4
"EaseaParse.cpp"
}
}
break;
...
...
@@ -290,9 +291,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 5);
#endif
{
#line 26
4
"EaseaParse.y"
#line 26
6
"EaseaParse.y"
#line 29
6
"EaseaParse.cpp"
#line 29
7
"EaseaParse.cpp"
}
}
break;
...
...
@@ -303,13 +304,13 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 2
69
"EaseaParse.y"
#line 2
71
"EaseaParse.y"
pCURRENT_CLASS->sString = new char[strlen(yyattribute(2 - 2).szString) + 1];
strcpy(pCURRENT_CLASS->sString, yyattribute(2 - 2).szString);
if (bVERBOSE) printf("\n The following methods have been declared:\n\n%s\n\n",pCURRENT_CLASS->sString);
#line 31
3
"EaseaParse.cpp"
#line 31
4
"EaseaParse.cpp"
}
}
break;
...
...
@@ -320,17 +321,17 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 27
7
"EaseaParse.y"
#line 27
9
"EaseaParse.y"
(*(YYSTYPE YYFAR*)yyvalptr).ObjectQualifier=1;
#line 32
6
"EaseaParse.cpp"
#line 32
7
"EaseaParse.cpp"
}
}
break;
case 12:
{
#line 2
78
"EaseaParse.y"
#line 2
80
"EaseaParse.y"
(*(YYSTYPE YYFAR*)yyvalptr).ObjectQualifier=0;
#line 33
4
"EaseaParse.cpp"
#line 33
5
"EaseaParse.cpp"
}
break;
case 13:
...
...
@@ -340,9 +341,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 5);
#endif
{
#line 28
3
"EaseaParse.y"
#line 28
5
"EaseaParse.y"
#line 34
6
"EaseaParse.cpp"
#line 34
7
"EaseaParse.cpp"
}
}
break;
...
...
@@ -353,9 +354,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 28
7
"EaseaParse.y"
#line 28
9
"EaseaParse.y"
#line 3
59
"EaseaParse.cpp"
#line 3
60
"EaseaParse.cpp"
}
}
break;
...
...
@@ -366,9 +367,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 5);
#endif
{
#line 2
88
"EaseaParse.y"
#line 2
90
"EaseaParse.y"
#line 37
2
"EaseaParse.cpp"
#line 37
3
"EaseaParse.cpp"
}
}
break;
...
...
@@ -379,7 +380,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 30
2
"EaseaParse.y"
#line 30
4
"EaseaParse.y"
CSymbol *pSym=SymbolTable.find(yyattribute(1 - 1).pSymbol->sName);
if (pSym==NULL) {
...
...
@@ -389,7 +390,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
}
else (*(YYSTYPE YYFAR*)yyvalptr).pSymbol=pSym;
#line 39
3
"EaseaParse.cpp"
#line 39
4
"EaseaParse.cpp"
}
}
break;
...
...
@@ -400,7 +401,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 32
3
"EaseaParse.y"
#line 32
5
"EaseaParse.y"
// CSymbol *pSym;
// pSym=$1;
...
...
@@ -413,7 +414,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
pCURRENT_CLASS->pSymbolList->addFirst((CSymbol *)(yyattribute(1 - 1).pSymbol));
if (bVERBOSE) printf(" %s variable declared (%d bytes)\n",yyattribute(1 - 1).pSymbol->sName,yyattribute(1 - 1).pSymbol->nSize);
#line 41
7
"EaseaParse.cpp"
#line 41
8
"EaseaParse.cpp"
}
}
break;
...
...
@@ -424,7 +425,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 33
5
"EaseaParse.y"
#line 33
7
"EaseaParse.y"
yyattribute(2 - 2).pSymbol->nSize=sizeof (char *);
yyattribute(2 - 2).pSymbol->pClass=pCURRENT_CLASS;
...
...
@@ -435,7 +436,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
pCURRENT_CLASS->pSymbolList->addFirst((CSymbol *)(yyattribute(2 - 2).pSymbol));
if (bVERBOSE) printf(" %s pointer declared (%d bytes)\n",yyattribute(2 - 2).pSymbol->sName,yyattribute(2 - 2).pSymbol->nSize);
#line 4
39
"EaseaParse.cpp"
#line 4
40
"EaseaParse.cpp"
}
}
break;
...
...
@@ -446,7 +447,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 34
5
"EaseaParse.y"
#line 34
7
"EaseaParse.y"
yyattribute(2 - 2).pSymbol->nSize=sizeof (char *);
yyattribute(2 - 2).pSymbol->pClass=pCURRENT_CLASS;
...
...
@@ -457,7 +458,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
pCURRENT_CLASS->pSymbolList->addFirst((CSymbol *)(yyattribute(2 - 2).pSymbol));
if (bVERBOSE) printf(" %s NULL pointer declared (%d bytes)\n",yyattribute(2 - 2).pSymbol->sName,yyattribute(2 - 2).pSymbol->nSize);
#line 46
1
"EaseaParse.cpp"
#line 46
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -468,7 +469,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 35
5
"EaseaParse.y"
#line 35
7
"EaseaParse.y"
yyattribute(3 - 3).pSymbol->nSize=sizeof (char *);
yyattribute(3 - 3).pSymbol->pClass=pCURRENT_CLASS;
...
...
@@ -481,7 +482,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
fprintf(stderr,"Pointer of pointer doesn't work properly yet\n");
exit(-1);
#line 48
5
"EaseaParse.cpp"
#line 48
6
"EaseaParse.cpp"
}
}
break;
...
...
@@ -492,9 +493,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 5);
#endif
{
#line 3
68
"EaseaParse.y"
#line 3
70
"EaseaParse.y"
if((TARGET_FLAVOR==
STD_FLAVOR_CMAES || TARGET_FLAVOR==CUDA_FLAVOR_
CMAES) && nPROBLEM_DIM==0 && strcmp(pCURRENT_CLASS->sName,"Genome")==0) { nGENOME_NAME=yyattribute(1 - 4).pSymbol->sName; nPROBLEM_DIM=(int)yyattribute(3 - 4).dValue;}
if((TARGET_FLAVOR==CMAES) && nPROBLEM_DIM==0 && strcmp(pCURRENT_CLASS->sName,"Genome")==0) { nGENOME_NAME=yyattribute(1 - 4).pSymbol->sName; nPROBLEM_DIM=(int)yyattribute(3 - 4).dValue;}
printf("DEBUG : size of $3 %d nSize %d\n",(int)yyattribute(3 - 4).dValue,pCURRENT_TYPE->nSize);
...
...
@@ -507,7 +508,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
pCURRENT_CLASS->pSymbolList->addFirst((CSymbol *)(yyattribute(1 - 4).pSymbol));
if (bVERBOSE) printf(" %s array declared (%d bytes)\n",yyattribute(1 - 4).pSymbol->sName,yyattribute(1 - 4).pSymbol->nSize);
#line 51
1
"EaseaParse.cpp"
#line 51
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -518,11 +519,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 6);
#endif
{
#line 38
2
"EaseaParse.y"
#line 38
4
"EaseaParse.y"
// this is for support of pointer array. This should be done in a more generic way in a later version
if((TARGET_FLAVOR==
STD_FLAVOR_CMAES || TARGET_FLAVOR==CUDA_FLAVOR_
CMAES) && nPROBLEM_DIM==0 && strcmp(pCURRENT_CLASS->sName,"Genome")==0) {
if((TARGET_FLAVOR==CMAES) && nPROBLEM_DIM==0 && strcmp(pCURRENT_CLASS->sName,"Genome")==0) {
nGENOME_NAME=yyattribute(2 - 5).pSymbol->sName; nPROBLEM_DIM=(int)yyattribute(4 - 5).dValue;
}
...
...
@@ -539,7 +540,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
printf("DEBUG : size of $4 %d nSize %d\n",(int)yyattribute(4 - 5).dValue,pCURRENT_TYPE->nSize);
if (bVERBOSE) printf(" %s array of pointers declared (%d bytes)\n",yyattribute(2 - 5).pSymbol->sName,yyattribute(2 - 5).pSymbol->nSize);
#line 54
3
"EaseaParse.cpp"
#line 54
4
"EaseaParse.cpp"
}
}
break;
...
...
@@ -550,9 +551,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 41
0
"EaseaParse.y"
#line 41
2
"EaseaParse.y"
#line 55
6
"EaseaParse.cpp"
#line 55
7
"EaseaParse.cpp"
}
}
break;
...
...
@@ -563,7 +564,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 42
3
"EaseaParse.y"
#line 42
5
"EaseaParse.y"
////DEBUG_PRT("Yacc genome decl %s",$1.pSymbol->sName);
if (bVERBOSE) printf ("\nGenome declaration analysis :\n\n");
...
...
@@ -574,7 +575,7 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
pGENOME->ObjectQualifier=0;
pGENOME->sString=NULL;
#line 57
8
"EaseaParse.cpp"
#line 57
9
"EaseaParse.cpp"
}
}
break;
...
...
@@ -585,9 +586,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 6);
#endif
{
#line 43
3
"EaseaParse.y"
#line 43
5
"EaseaParse.y"
#line 59
1
"EaseaParse.cpp"
#line 59
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -598,9 +599,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 45
0
"EaseaParse.y"
#line 45
2
"EaseaParse.y"
#line 60
4
"EaseaParse.cpp"
#line 60
5
"EaseaParse.cpp"
}
}
break;
...
...
@@ -611,9 +612,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 45
4
"EaseaParse.y"
#line 45
6
"EaseaParse.y"
(*(YYSTYPE YYFAR*)yyvalptr).pSymbol=yyattribute(1 - 1).pSymbol;
#line 61
7
"EaseaParse.cpp"
#line 61
8
"EaseaParse.cpp"
}
}
break;
...
...
@@ -624,11 +625,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 46
3
"EaseaParse.y"
#line 46
5
"EaseaParse.y"
if (bVERBOSE) printf("Inserting genome initialiser (taken from .ez file).\n");
#line 63
2
"EaseaParse.cpp"
#line 63
3
"EaseaParse.cpp"
}
}
break;
...
...
@@ -639,9 +640,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 46
6
"EaseaParse.y"
#line 46
8
"EaseaParse.y"
#line 64
5
"EaseaParse.cpp"
#line 64
6
"EaseaParse.cpp"
}
}
break;
...
...
@@ -652,11 +653,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 46
7
"EaseaParse.y"
#line 46
9
"EaseaParse.y"
if (bVERBOSE) printf("Inserting user genome crossover (taken from .ez file).\n");
#line 66
0
"EaseaParse.cpp"
#line 66
1
"EaseaParse.cpp"
}
}
break;
...
...
@@ -667,9 +668,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 47
0
"EaseaParse.y"
#line 47
2
"EaseaParse.y"
#line 67
3
"EaseaParse.cpp"
#line 67
4
"EaseaParse.cpp"
}
}
break;
...
...
@@ -680,11 +681,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 47
1
"EaseaParse.y"
#line 47
3
"EaseaParse.y"
if (bVERBOSE) printf("Inserting user genome mutator (taken from .ez file).\n");
#line 68
8
"EaseaParse.cpp"
#line 68
9
"EaseaParse.cpp"
}
}
break;
...
...
@@ -695,9 +696,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 47
4
"EaseaParse.y"
#line 47
6
"EaseaParse.y"
#line 70
1
"EaseaParse.cpp"
#line 70
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -708,11 +709,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 47
5
"EaseaParse.y"
#line 47
7
"EaseaParse.y"
if (bVERBOSE) printf("Inserting user genome evaluator (taken from .ez file).\n");
#line 71
6
"EaseaParse.cpp"
#line 71
7
"EaseaParse.cpp"
}
}
break;
...
...
@@ -723,9 +724,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 4
78
"EaseaParse.y"
#line 4
80
"EaseaParse.y"
#line 7
29
"EaseaParse.cpp"
#line 7
30
"EaseaParse.cpp"
}
}
break;
...
...
@@ -736,11 +737,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 4
79
"EaseaParse.y"
#line 4
81
"EaseaParse.y"
if (bVERBOSE) printf("Inserting user genome optimiser (taken from .ez file).\n");
#line 74
4
"EaseaParse.cpp"
#line 74
5
"EaseaParse.cpp"
}
}
break;
...
...
@@ -751,9 +752,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 4);
#endif
{
#line 48
2
"EaseaParse.y"
#line 48
4
"EaseaParse.y"
#line 75
7
"EaseaParse.cpp"
#line 75
8
"EaseaParse.cpp"
}
}
break;
...
...
@@ -764,11 +765,11 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 48
3
"EaseaParse.y"
#line 48
5
"EaseaParse.y"
//DEBUG_PRT("User makefile options have been reduced");
#line 77
2
"EaseaParse.cpp"
#line 77
3
"EaseaParse.cpp"
}
}
break;
...
...
@@ -779,9 +780,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 2);
#endif
{
#line 48
6
"EaseaParse.y"
#line 48
8
"EaseaParse.y"
#line 78
5
"EaseaParse.cpp"
#line 78
6
"EaseaParse.cpp"
}
}
break;
...
...
@@ -792,9 +793,9 @@ pCURRENT_TYPE=yyattribute(2 - 2).pSymbol; pCURRENT_TYPE->ObjectQualifier=yyattri
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 49
6
"EaseaParse.y"
#line 49
8
"EaseaParse.y"
nNB_GEN=(int)yyattribute(2 - 2).dValue;
#line 79
8
"EaseaParse.cpp"
#line 79
9
"EaseaParse.cpp"
}
}
break;
...
...
@@ -805,9 +806,9 @@ nNB_GEN=(int)yyattribute(2 - 2).dValue;
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line
498
"EaseaParse.y"
#line
500
"EaseaParse.y"
nNB_OPT_IT=(int)yyattribute(2 - 2).dValue;
#line 81
1
"EaseaParse.cpp"
#line 81
2
"EaseaParse.cpp"
}
}
break;
...
...
@@ -818,9 +819,9 @@ nNB_OPT_IT=(int)yyattribute(2 - 2).dValue;
yyinitdebug((void YYFAR**)yya, 3);
#endif
{
#line 50
0
"EaseaParse.y"
#line 50
2
"EaseaParse.y"
nTIME_LIMIT=(int)yyattribute(2 - 2).dValue;
#line 82
4
"EaseaParse.cpp"
#line 82
5
"EaseaParse.cpp"
}