Skip to content
Extraits de code Groupes Projets
Valider a1901e19 rédigé par Thomas DILASSER's avatar Thomas DILASSER
Parcourir les fichiers
parents aa3bfd61 84f0e2b4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #1139 annulé
......@@ -14,5 +14,5 @@ Ne pas mettre deux fois la meme fonction via les pragmas : Oui
Pas de pragma dans les fonctions : Oui
Warning envoyé si l'utilisateur a donné une fonction qui n'existe pas dans le source : Non
Warning envoyé si l'utilisateur a donné une fonction qui n'existe pas dans le source : Oui
......@@ -100,16 +100,26 @@ static void register_my_pragma(void *event_data, void *data)
void compare_pragma_funcs_analyzed_funcs(){
const char *pragma_elt;
const char *analyzed_elt;
bool pragma_func_is_in;
//printf("\nEntering COMPARE FUNCS:\n\n");
for(int ix = 0; pragma_func_names.iterate (ix, &pragma_elt); ix++){
pragma_func_is_in = false;
for(int jx = 0; analyzed_functions.iterate (jx, &analyzed_elt); jx++){
if(strcmp(pragma_elt, analyzed_elt)!=0)
printf("WARNING :Pragma indicates unexisting function %s\n ",pragma_elt );
//printf("\nComparing : %s and %s", pragma_elt, analyzed_elt);
if(strcmp(pragma_elt, analyzed_elt)==0)
pragma_func_is_in = true;
}
if(!pragma_func_is_in)
printf("\nWARNING - pragma func : %s is not declared in source code", pragma_elt);
}
}
void add_function_to_analyzed_funcs(function * fun){
analyzed_functions.safe_push(function_name(fun));
}
......
......@@ -75,6 +75,7 @@ class split_count_pass : public gimple_opt_pass
{
bool func_to_be_analyzed = true;
add_function_to_analyzed_funcs(fun);
printf("=> plugin: split_count_pass... \n");
printf("=> plugin: gate... \n");
......@@ -133,7 +134,6 @@ class cleanup_pass : public gimple_opt_pass
/* Gate function (shall we apply this pass?) */
bool gate (function * fun)
{
bool func_to_be_analyzed = true;
printf("=> plugin: cleanup_pass... \n");
printf("=> plugin: gate... \n");
return true;
......@@ -144,10 +144,15 @@ class cleanup_pass : public gimple_opt_pass
/* Execute function */
unsigned int execute (function *fun)
{
const char *elt;
printf("=> plugin: cleanup_pass... \n");
printf("=> plugin: execute...\n");
printf("... in function %s\n\n", function_name(fun));
printf("State of vec analyzed :\n");
for (int ix = 0; analyzed_functions.iterate (ix, &elt); ix++){
printf("- %s\n", elt);
}
compare_pragma_funcs_analyzed_funcs();
edit_all_aux_value(fun,(int*)NULL);
return 0;
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter