Diff for /rpl/src/gestion_pile_systeme.c between versions 1.53 and 1.58

version 1.53, 2013/03/06 10:05:09 version 1.58, 2013/03/23 17:57:39
Line 39  static inline void Line 39  static inline void
 estimation_taille_pile_systeme(struct_processus *s_etat_processus)  estimation_taille_pile_systeme(struct_processus *s_etat_processus)
 {  {
     (*s_etat_processus).estimation_taille_pile_systeme_tampon =      (*s_etat_processus).estimation_taille_pile_systeme_tampon =
             ((*s_etat_processus).estimation_taille_pile_systeme_tampon *              (((double) (*s_etat_processus)
             ((double) 0.9)) + ((*s_etat_processus)              .estimation_taille_pile_systeme_tampon) *
             .hauteur_pile_systeme * ((double) 0.1));              ((double) 0.9)) + (((double) (*s_etat_processus)
               .hauteur_pile_systeme) * ((double) 0.1));
     return;      return;
 }  }
   
Line 302  effacement_pile_systeme(struct_processus Line 303  effacement_pile_systeme(struct_processus
 void  void
 trace(struct_processus *s_etat_processus, FILE *flux)  trace(struct_processus *s_etat_processus, FILE *flux)
 {  {
     int                             candidat;  
     int                             j;  
     int                             nb_variables;  
   
     integer8                        i;      integer8                        i;
       integer8                        j;
       integer8                        candidat;
     integer8                        candidat8;      integer8                        candidat8;
     integer8                        delta;      integer8                        delta;
       integer8                        nb_variables;
   
     struct_liste_chainee            *l_element_expression;      struct_liste_chainee            *l_element_expression;
   
Line 332  trace(struct_processus *s_etat_processus Line 332  trace(struct_processus *s_etat_processus
   
     nb_variables = nombre_variables(s_etat_processus);      nb_variables = nombre_variables(s_etat_processus);
   
     if ((tableau = malloc(nb_variables * sizeof(struct_tableau_variables)))      if ((tableau = malloc(((size_t) nb_variables) *
             == NULL)              sizeof(struct_tableau_variables))) == NULL)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;          (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
         return;          return;
Line 348  trace(struct_processus *s_etat_processus Line 348  trace(struct_processus *s_etat_processus
   
     while(l_element_courant != NULL)      while(l_element_courant != NULL)
     {      {
         fprintf(flux, "%d : address # %016Xh\n", i--, l_element_courant);          fprintf(flux, "%lld : address # %016Xh\n", i--, l_element_courant);
   
         if ((*l_element_courant).creation_variables_statiques == d_vrai)          if ((*l_element_courant).creation_variables_statiques == d_vrai)
         {          {
Line 495  trace(struct_processus *s_etat_processus Line 495  trace(struct_processus *s_etat_processus
         fprintf(flux, "    Level             = %d\n",          fprintf(flux, "    Level             = %d\n",
                 (*l_element_courant).niveau_courant);                  (*l_element_courant).niveau_courant);
   
         if (((*l_element_courant).retour_definition == 'Y') ||          if ((*l_element_courant).retour_definition == 'Y')
                 ((*l_element_courant).origine_routine_evaluation == 'Y'))  
         {          {
             fprintf(flux, "    Return            = yes\n");              fprintf(flux, "    Return            = yes\n");
   
Line 596  trace(struct_processus *s_etat_processus Line 595  trace(struct_processus *s_etat_processus
                         if ((*(tableau[j].objet)).type == ADR)                          if ((*(tableau[j].objet)).type == ADR)
                         {                          {
                             delta = (*l_element_courant).adresse_retour                              delta = (*l_element_courant).adresse_retour
                                     - (*((unsigned long *)                                      - (*((integer8 *)
                                     (*(tableau[j].objet)).objet));                                      (*(tableau[j].objet)).objet));
   
                             if ((delta >= 0) && (delta < candidat8))                              if ((delta >= 0) && (delta < candidat8))
Line 631  trace(struct_processus *s_etat_processus Line 630  trace(struct_processus *s_etat_processus
             fprintf(flux, "    Return            = no\n");              fprintf(flux, "    Return            = no\n");
         }          }
   
         if ((*l_element_courant).indice_boucle != NULL)          if (((*l_element_courant).indice_boucle != NULL) &&
                   ((*l_element_courant).type_cloture != 'A'))
         {          {
             tampon = formateur(s_etat_processus, 24,              tampon = formateur(s_etat_processus, 24,
                     (*l_element_courant).indice_boucle);                      (*l_element_courant).indice_boucle);
Line 666  trace(struct_processus *s_etat_processus Line 666  trace(struct_processus *s_etat_processus
         l_element_courant = (*l_element_courant).suivant;          l_element_courant = (*l_element_courant).suivant;
     }      }
   
     fprintf(flux, "\n");  
     funlockfile(flux);      funlockfile(flux);
   
     free(tableau);      free(tableau);

Removed from v.1.53  
changed lines
  Added in v.1.58


CVSweb interface <joel.bertrand@systella.fr>