Print this page
11506 smatch resync

Split Close
Expand all
Collapse all
          --- old/usr/src/tools/smatch/src/smatch_states.c
          +++ new/usr/src/tools/smatch/src/smatch_states.c
↓ open down ↓ 76 lines elided ↑ open up ↑
  77   77  {
  78   78          if (!cur_stree)
  79   79                  return 1;
  80   80          return 0;
  81   81  }
  82   82  
  83   83  struct sm_state *set_state(int owner, const char *name, struct symbol *sym, struct smatch_state *state)
  84   84  {
  85   85          struct sm_state *ret;
  86   86  
  87      -        if (!name)
       87 +        if (!name || !state)
  88   88                  return NULL;
  89   89  
  90   90          if (read_only)
  91   91                  sm_perror("cur_stree is read only.");
  92   92  
  93   93          if (option_debug || strcmp(check_name(owner), option_debug_check) == 0) {
  94   94                  struct smatch_state *s;
  95   95  
  96      -                s = get_state(owner, name, sym);
       96 +                s = __get_state(owner, name, sym);
  97   97                  if (!s)
  98   98                          sm_msg("%s new [%s] '%s' %s", __func__,
  99   99                                 check_name(owner), name, show_state(state));
 100  100                  else
 101  101                          sm_msg("%s change [%s] '%s' %s => %s",
 102  102                                  __func__, check_name(owner), name, show_state(s),
 103  103                                  show_state(state));
 104  104          }
 105  105  
 106  106          if (owner != -1 && unreachable())
↓ open down ↓ 82 lines elided ↑ open up ↑
 189  189  
 190  190  void __set_sm(struct sm_state *sm)
 191  191  {
 192  192          if (read_only)
 193  193                  sm_perror("cur_stree is read only.");
 194  194  
 195  195          if (option_debug ||
 196  196              strcmp(check_name(sm->owner), option_debug_check) == 0) {
 197  197                  struct smatch_state *s;
 198  198  
 199      -                s = get_state(sm->owner, sm->name, sm->sym);
      199 +                s = __get_state(sm->owner, sm->name, sm->sym);
 200  200                  if (!s)
 201  201                          sm_msg("%s new %s", __func__, show_sm(sm));
 202  202                  else
 203  203                          sm_msg("%s change %s (was %s)", __func__, show_sm(sm),
 204  204                                 show_state(s));
 205  205          }
 206  206  
 207  207          if (unreachable())
 208  208                  return;
 209  209  
↓ open down ↓ 5 lines elided ↑ open up ↑
 215  215  
 216  216  void __set_sm_cur_stree(struct sm_state *sm)
 217  217  {
 218  218          if (read_only)
 219  219                  sm_perror("cur_stree is read only.");
 220  220  
 221  221          if (option_debug ||
 222  222              strcmp(check_name(sm->owner), option_debug_check) == 0) {
 223  223                  struct smatch_state *s;
 224  224  
 225      -                s = get_state(sm->owner, sm->name, sm->sym);
      225 +                s = __get_state(sm->owner, sm->name, sm->sym);
 226  226                  if (!s)
 227  227                          sm_msg("%s new %s", __func__, show_sm(sm));
 228  228                  else
 229  229                          sm_msg("%s change %s (was %s)",
 230  230                                  __func__, show_sm(sm), show_state(s));
 231  231          }
 232  232  
 233  233          if (unreachable())
 234  234                  return;
 235  235  
↓ open down ↓ 2 lines elided ↑ open up ↑
 238  238  
 239  239  void __set_sm_fake_stree(struct sm_state *sm)
 240  240  {
 241  241          if (read_only)
 242  242                  sm_perror("cur_stree is read only.");
 243  243  
 244  244          if (option_debug ||
 245  245              strcmp(check_name(sm->owner), option_debug_check) == 0) {
 246  246                  struct smatch_state *s;
 247  247  
 248      -                s = get_state(sm->owner, sm->name, sm->sym);
      248 +                s = __get_state(sm->owner, sm->name, sm->sym);
 249  249                  if (!s)
 250  250                          sm_msg("%s new %s", __func__, show_sm(sm));
 251  251                  else
 252  252                          sm_msg("%s change %s (was %s)",
 253  253                                  __func__, show_sm(sm), show_state(s));
 254  254          }
 255  255  
 256  256          if (unreachable())
 257  257                  return;
 258  258  
↓ open down ↓ 211 lines elided ↑ open up ↑
 470  470  void set_true_false_states(int owner, const char *name, struct symbol *sym,
 471  471                             struct smatch_state *true_state,
 472  472                             struct smatch_state *false_state)
 473  473  {
 474  474          if (read_only)
 475  475                  sm_perror("cur_stree is read only.");
 476  476  
 477  477          if (option_debug || strcmp(check_name(owner), option_debug_check) == 0) {
 478  478                  struct smatch_state *tmp;
 479  479  
 480      -                tmp = get_state(owner, name, sym);
      480 +                tmp = __get_state(owner, name, sym);
 481  481                  sm_msg("%s [%s] '%s'.  Was %s.  Now T:%s F:%s", __func__,
 482  482                         check_name(owner),  name, show_state(tmp),
 483  483                         show_state(true_state), show_state(false_state));
 484  484          }
 485  485  
 486  486          if (unreachable())
 487  487                  return;
 488  488  
 489  489          if (!cond_false_stack || !cond_true_stack) {
 490  490                  sm_perror("missing true/false stacks");
↓ open down ↓ 33 lines elided ↑ open up ↑
 524  524  
 525  525          if (unreachable())
 526  526                  return;
 527  527  
 528  528          owner = true_sm ? true_sm->owner : false_sm->owner;
 529  529          name = true_sm ? true_sm->name : false_sm->name;
 530  530          sym = true_sm ? true_sm->sym : false_sm->sym;
 531  531          if (option_debug || strcmp(check_name(owner), option_debug_check) == 0) {
 532  532                  struct smatch_state *tmp;
 533  533  
 534      -                tmp = get_state(owner, name, sym);
      534 +                tmp = __get_state(owner, name, sym);
 535  535                  sm_msg("%s [%s] '%s'.  Was %s.  Now T:%s F:%s", __func__,
 536  536                         check_name(owner),  name, show_state(tmp),
 537  537                         show_state(true_sm ? true_sm->state : NULL),
 538  538                         show_state(false_sm ? false_sm->state : NULL));
 539  539          }
 540  540  
 541  541          if (!cond_false_stack || !cond_true_stack) {
 542  542                  sm_perror("missing true/false stacks");
 543  543                  return;
 544  544          }
↓ open down ↓ 237 lines elided ↑ open up ↑
 782  782  
 783  783  void __use_cond_false_states(void)
 784  784  {
 785  785          __use_cond_stack(&cond_false_stack);
 786  786  }
 787  787  
 788  788  void __negate_cond_stacks(void)
 789  789  {
 790  790          struct stree *old_false, *old_true;
 791  791  
 792      -        __use_cond_stack(&cond_false_stack);
 793  792          old_false = pop_stree(&cond_false_stack);
 794  793          old_true = pop_stree(&cond_true_stack);
 795  794          push_stree(&cond_false_stack, old_true);
 796  795          push_stree(&cond_true_stack, old_false);
 797  796  }
 798  797  
 799  798  void __and_cond_states(void)
 800  799  {
 801  800          and_stree_stack(&cond_true_stack);
 802  801          or_stree_stack(&pre_cond_stack, cur_stree, &cond_false_stack);
↓ open down ↓ 342 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX