Skip to content
Extraits de code Groupes Projets
Valider bcc3264b rédigé par Théotime DONNENFELD's avatar Théotime DONNENFELD
Parcourir les fichiers

Pour pragmas : reste les warnings à rajouter si l'utilisateur fait n'imp avec les pragmas

parent a81ce0e8
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -3,3 +3,16 @@ Passe de compilation pour trouver les appels aux fonctions collectives : Oui ...@@ -3,3 +3,16 @@ Passe de compilation pour trouver les appels aux fonctions collectives : Oui
Définition d'une numérotation permettant de suivre la position d'une fonction collective dans la séquence d'appel : Oui Définition d'une numérotation permettant de suivre la position d'une fonction collective dans la séquence d'appel : Oui
Utilisation de la frontière de post dominance itérée pour retrouver le noeud d'origine du deadlock potentiel : Non Utilisation de la frontière de post dominance itérée pour retrouver le noeud d'origine du deadlock potentiel : Non
PRAGMAS :
Si on utilise pas les pragmas -> passer dans toutes les fonctions : Oui
Reconnaitre les noms de fonctions et filtrer dans la gate : Oui
Ne pas mettre deux fois la meme fonction via les pragmas : Non
Pas de pragma dans les fonctions : Oui
Warning envoyé si l'utilisateur a donné une fonction qui n'existe pas dans le source : Non
...@@ -119,15 +119,19 @@ class cleanup_pass : public gimple_opt_pass ...@@ -119,15 +119,19 @@ class cleanup_pass : public gimple_opt_pass
/* Gate function (shall we apply this pass?) */ /* Gate function (shall we apply this pass?) */
bool gate (function * fun) bool gate (function * fun)
{ {
bool func_to_be_analyzed = true;
printf("=> plugin: cleanup_pass... \n"); printf("=> plugin: cleanup_pass... \n");
printf("=> plugin: gate... \n"); printf("=> plugin: gate... \n");
printf("List of functions to be checked :\n"); if((pragma_func_names.length() == 0)){
while(pragma_func_names.length() != 0){ printf("\nNOT USING PRAGMAS - ANALYSING ALL FUNCS\n\n");
printf("- %s\n",pragma_func_names.pop()); return true;
} }
const char *elt;
return true; for(int ix = 0; pragma_func_names.iterate (ix, &elt); ix++)
func_to_be_analyzed = strcmp(elt,function_name(fun)) && func_to_be_analyzed;
printf("USING PRAGMAS - FUNC IS : %s", function_name(fun));
return func_to_be_analyzed;
} }
......
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