/illumos-gate/usr/src/tools/smatch/src/ |
H A D | smatch_real_absolute.c | 37 static int my_id; variable 41 set_state_expr(my_id, expr, clone_estate(state)); in set_real_absolute() 49 abs = get_state(my_id, name, sym); in extra_mod_hook() 53 set_state(my_id, name, sym, alloc_estate_rl(clone_rl(rl))); in extra_mod_hook() 132 return get_state_expr(my_id, expr); in get_real_absolute_state() 137 return __get_state(my_id, name, sym); in get_real_absolute_state_var_sym() 142 my_id = id; in register_real_absolute() 144 set_dynamic_states(my_id); in register_real_absolute() 145 add_pre_merge_hook(my_id, &pre_merge_hook); in register_real_absolute() 146 add_unmatched_state_hook(my_id, &empty_state); in register_real_absolute() [all …]
|
H A D | check_spectre_second_half.c | 25 static int my_id; variable 47 FOR_EACH_MY_SM(my_id, __get_cur_stree(), sm) { in clear_spectre_second_halfs() 48 set_state(my_id, sm->name, sm->sym, alloc_state_num(-MAX_SPEC_STMT)); in clear_spectre_second_halfs() 61 return get_state_stree(first_halfs, my_id, buf, NULL); in get_spectre_first_half() 73 set_state_expr(my_id, expr->left, state); in match_assign() 77 state = get_state_expr(my_id, expr->right); in match_assign() 80 set_state_expr(my_id, expr->left, state); in match_assign() 92 state = get_state_expr(my_id, expr); in match_done() 103 set_state_expr(my_id, expr, alloc_state_num(-MAX_SPEC_STMT)); in match_done() 115 my_id = id; in check_spectre_second_half() [all …]
|
H A D | smatch_imaginary_absolute.c | 37 static int my_id; variable 51 set_state(my_id, sm->name, sm->sym, alloc_estate_empty()); in reset() 58 set_true_false_states_expr(my_id, expr, alloc_estate_rl(true_rl), alloc_estate_rl(false_rl)); in __save_imaginary_state() 67 state = get_state_expr(my_id, expr); in get_imaginary_absolute() 77 my_id = id; in register_imaginary_absolute() 79 set_dynamic_states(my_id); in register_imaginary_absolute() 80 add_unmatched_state_hook(my_id, &empty_state); in register_imaginary_absolute() 81 add_merge_hook(my_id, &merge_is_empty); in register_imaginary_absolute() 82 add_modification_hook(my_id, &reset); in register_imaginary_absolute()
|
H A D | check_deref.c | 37 static int my_id; variable 61 set_state(my_id, sm->name, sm->sym, &ok); in is_ok() 72 sm = get_sm_state_expr(my_id, expr); in check_dereference() 87 add_ignore(my_id, sm->name, sm->sym); in check_dereference() 109 sm = get_sm_state(my_id, name, sym); in check_dereference_name_sym() 124 add_ignore(my_id, sm->name, sm->sym); in check_dereference_name_sym() 181 scoped_state(my_id, name, sym); in match_declarations() 211 set_state_expr(my_id, right, &ok); in match_assigns_address() 220 if (!get_state_expr(my_id, expr)) in match_condition() 283 my_id = id; in check_deref() [all …]
|
H A D | check_check_deref.c | 38 static int my_id; variable 45 set_state(my_id, sm->name, sm->sym, &ok); in is_ok() 58 sm = get_sm_state_expr(my_id, expr); in check_dereference() 61 if (is_ignored(my_id, sm->name, sm->sym)) in check_dereference() 74 add_ignore(my_id, sm->name, sm->sym); in check_dereference() 85 sm = get_sm_state(my_id, name, sym); in check_dereference_name_sym() 88 if (is_ignored(my_id, sm->name, sm->sym)) in check_dereference_name_sym() 101 add_ignore(my_id, sm->name, sm->sym); in check_dereference_name_sym() 156 if (get_state_expr(my_id, expr)) in match_condition() 164 my_id = id; in check_check_deref() [all …]
|
H A D | smatch_capped.c | 31 static int my_id; variable 38 set_state(my_id, sm->name, sm->sym, &uncapped); in set_uncapped() 121 if (get_state_expr(my_id, expr) == &capped) in is_capped() 128 if (get_state(my_id, name, sym) == &capped) in is_capped_var_sym() 140 set_state(my_id, fullname, sym, &capped); in set_param_capped_data() 212 set_state_expr(my_id, expr->left, &capped); in match_assign() 214 if (get_state_expr(my_id, expr->left)) in match_assign() 264 FOR_EACH_MY_SM(my_id, __get_cur_stree(), sm) { in print_return_implies_capped() 330 set_state(my_id, name, sym, &capped); in db_return_states_capped() 337 my_id = id; in register_capped() [all …]
|
H A D | check_dma_mapping_error.c | 22 static int my_id; variable 30 set_state(my_id, sm->name, sm->sym, &ok); in ok_to_use() 41 set_state_expr(my_id, expr->left, &positive); in match_assign() 46 if (!get_state_expr(my_id, expr)) in match_condition() 49 set_true_false_states_expr(my_id, expr, NULL, &ok); in match_condition() 58 sm = get_sm_state_expr(my_id, ret_value); in match_return() 78 my_id = id; in check_dma_mapping_error() 83 add_modification_hook(my_id, &ok_to_use); in check_dma_mapping_error()
|
H A D | check_free_strict.c | 28 static int my_id; variable 36 set_state(my_id, sm->name, sm->sym, &ok); in ok_to_use() 66 sm = get_sm_state_expr(my_id, expr); in is_freed() 112 set_state_expr(my_id, expr, &ok); in match_dereferences() 198 set_state_expr(my_id, arg, &ok); in match_call() 217 set_state_expr(my_id, expr, &ok); in match_return() 237 set_state_expr(my_id, arg, &freed); in match_free() 260 sm = get_sm_state(my_id, name, sym); in set_param_freed() 267 set_state(my_id, name, sym, &freed); in set_param_freed() 288 state = __get_state(my_id, start, sym); in parent_is_free_var_sym_strict() [all …]
|
H A D | check_uninitialized.c | 22 static int my_id; variable 49 set_state(my_id, buf, sym, &uninitialized); in mark_members_uninitialized() 86 set_state(my_id, name, sym, &initialized); in extra_mod_hook() 140 sm = get_sm_state_expr(my_id, expr); in is_initialized() 186 set_state_expr(my_id, expr, &initialized); in match_condition() 208 set_state_expr(my_id, arg, &initialized); in match_call() 319 set_state_expr(my_id, expr, &initialized); in match_symbol() 331 set_state_expr(my_id, arg, &initialized); in match_untracked() 346 set_state_expr(my_id, arg, &initialized); in match_ignore_param() 385 my_id = id; in check_uninitialized() [all …]
|
H A D | check_container_of.c | 26 static int my_id; variable 32 set_state(my_id, sm->name, sm->sym, &undefined); in is_ok() 37 set_state_expr(my_id, expr->left, &non_null); in match_non_null() 48 if (get_state_expr(my_id, expr) == &non_null) { in match_condition() 53 set_state_expr(my_id, expr, &undefined); in match_condition() 63 my_id = id; in check_container_of() 67 add_modification_hook(my_id, &is_ok); in check_container_of()
|
H A D | check_deref_check.c | 21 static int my_id; variable 27 set_state(my_id, sm->name, sm->sym, &undefined); in underef() 46 set_state_expr(my_id, expr, &derefed); in match_dereference() 60 set_state(my_id, name, sym, &derefed); in set_param_dereferenced() 82 sm = get_sm_state_expr(my_id, expr); in match_condition() 87 set_state_expr(my_id, expr, &undefined); in match_condition() 92 my_id = id; in check_deref_check() 96 add_modification_hook(my_id, &underef); in check_deref_check()
|
H A D | check_free.c | 28 static int my_id; variable 36 set_state(my_id, sm->name, sm->sym, &ok); in ok_to_use() 42 set_state(my_id, cur->name, cur->sym, &ok); in pre_merge_hook() 49 sm = get_sm_state_expr(my_id, expr); in is_freed() 96 set_state_expr(my_id, expr, &ok); in match_dereferences() 182 set_state_expr(my_id, arg, &ok); in match_call() 203 set_state_expr(my_id, expr, &ok); in match_return() 223 set_state_expr(my_id, arg, &freed); in match_free() 235 set_state(my_id, name, sym, &freed); in set_param_freed() 259 state = __get_state(my_id, start, sym); in parent_is_free_var_sym() [all …]
|
H A D | check_wine_filehandles.c | 26 static int my_id; variable 50 set_state(my_id, sm->name, sm->sym, &oktocheck); in ok_to_use() 62 set_state_expr(my_id, expr->left, &filehandle); in match_returns_handle() 72 if (get_state_expr(my_id, expr) == &filehandle) { in match_condition() 77 set_state_expr(my_id, expr, &oktocheck); in match_condition() 89 my_id = id; in check_wine_filehandles() 95 add_modification_hook(my_id, ok_to_use); in check_wine_filehandles()
|
H A D | check_readl_infinite_loops.c | 21 static int my_id; variable 54 if (get_state_expr(my_id, expr) == &readl) in is_readl() 62 set_state_expr(my_id, expr->left, &readl); in match_assign() 63 else if (get_state_expr(my_id, expr->left)) in match_assign() 64 set_state_expr(my_id, expr->left, &undefined); in match_assign() 88 set_true_false_states(my_id, "depends on", NULL, &readl_ff, &readl_00); in check_condition() 131 state = get_state(my_id, "depends on", NULL); in before_loop() 146 if (get_state(my_id, "depends on", NULL) != &readl_00) in after_loop() 156 my_id = id; in check_readl_infinite_loops()
|
H A D | smatch_statement_count.c | 24 static int my_id; variable 43 state = get_state(my_id, "stmts", NULL); in get_stmt_cnt() 55 set_state(my_id, "stmts", NULL, alloc_state_num(cnt)); in match_statement() 75 set_state(my_id, "stmts", NULL, alloc_state_num(cnt + add)); in select_return_info() 80 my_id = id; in register_statement_count() 82 set_dynamic_states(my_id); in register_statement_count() 84 add_merge_hook(my_id, &merge_states); in register_statement_count()
|
H A D | check_missing_break.c | 27 static int my_id; variable 89 if (get_state_expr(my_id, left) == &no_break) in match_assign() 92 set_state_expr(my_id, left, alloc_my_state(get_switch_expr())); in match_assign() 106 set_state_expr(my_id, expr, &used); in match_symbol() 170 delete_my_states(my_id); in match_switch_end() 175 my_id = id; in check_missing_break() 180 set_dynamic_states(my_id); in check_missing_break() 181 add_unmatched_state_hook(my_id, &unmatched_state); in check_missing_break() 182 add_merge_hook(my_id, &merge_hook); in check_missing_break()
|
H A D | smatch_assigned_expr.c | 28 static int my_id; variable 37 set_state(my_id, sm->name, sm->sym, &undefined); in undef() 44 state = get_state_expr(my_id, expr); in get_assigned_expr() 54 state = __get_state(my_id, name, sym); in get_assigned_expr_name_sym() 89 set_state(my_id, left_name, left_sym, alloc_state_expr(strip_expr(expr->right))); in match_assignment() 133 set_state(my_id, name, sym, alloc_state_expr(right)); in record_param_assignment() 140 my_id = check_assigned_expr_id = id; in register_assigned_expr() 143 add_modification_hook(my_id, &undef); in register_assigned_expr() 152 set_up_link_functions(my_id, link_id); in register_assigned_expr_links()
|
H A D | check_return_efault.c | 28 static int my_id; variable 36 set_state(my_id, sm->name, sm->sym, &ok); in ok_to_use() 43 set_state_expr(my_id, expr->left, &remaining); in match_copy() 48 if (!get_state_expr(my_id, expr)) in match_condition() 51 set_true_false_states_expr(my_id, expr, NULL, &ok); in match_condition() 67 sm = get_sm_state_expr(my_id, ret_value); in match_return_var() 122 my_id = id; in check_return_efault() 131 add_modification_hook(my_id, &ok_to_use); in check_return_efault()
|
H A D | check_dereferences_param.c | 28 static int my_id; variable 38 set_state(my_id, sm->name, sm->sym, &ignore); in set_ignore() 51 set_state(my_id, arg->ident->name, arg, ¶m); in match_function_def() 71 sm = get_sm_state_expr(my_id, expr); in check_deref() 74 set_state_expr(my_id, expr, &derefed); in check_deref() 98 FOR_EACH_MY_SM(my_id, __get_cur_stree(), tmp) { in process_states() 120 my_id = id; in check_dereferences_param() 127 add_modification_hook(my_id, &set_ignore); in check_dereferences_param()
|
H A D | check_held_dev.c | 31 static int my_id; variable 41 set_state_expr(my_id, arg_expr, &held); in match_dev_hold() 49 set_state_expr(my_id, arg_expr, &released); in match_dev_put() 56 set_state_expr(my_id, assign_expr->left, &held); in match_returns_held() 63 set_state_expr(my_id, assign_expr->left, &released); in match_returns_null() 72 FOR_EACH_MY_SM(my_id, stree, tmp) { in check_for_held() 86 sm = get_sm_state_expr(my_id, expr); in print_returns_held() 130 my_id = id; in check_held_dev()
|
H A D | check_frees_param.c | 28 static int my_id; variable 35 set_state(my_id, sm->name, sm->sym, &ignore); in set_ignore() 46 sm = get_sm_state_expr(my_id, expr); in freed_variable() 49 set_state_expr(my_id, expr, &freed); in freed_variable() 76 FOR_EACH_MY_SM(my_id, __get_cur_stree(), sm) { in process_states() 92 my_id = id; in check_frees_param() 102 add_modification_hook(my_id, &set_ignore); in check_frees_param()
|
H A D | check_err_ptr_deref.c | 22 static int my_id; variable 42 set_state(my_id, sm->name, sm->sym, &checked); in ok_to_use() 50 sm = get_sm_state_expr(my_id, expr); in check_is_err_ptr() 62 set_state(my_id, sm->name, sm->sym, &checked); in check_is_err_ptr() 68 set_state_expr(my_id, expr->left, &err_ptr); in match_returns_err_ptr() 82 sm = get_sm_state(my_id, name, sym); in set_param_dereferenced() 109 set_state_expr(my_id, arg, &checked); in match_checked() 121 set_state_expr(my_id, arg, &err_ptr); in match_err() 146 if (!get_state_expr(my_id, expr)) in match_condition() 219 my_id = id; in check_err_ptr_deref() [all …]
|
H A D | check_snprintf.c | 22 static int my_id; variable 26 set_state(my_id, sm->name, sm->sym, &undefined); in ok_to_use() 39 set_state_expr(my_id, expr->left, alloc_state_num(buflen.value)); in match_snprintf() 62 sm = get_sm_state_expr(my_id, arg); in match_call() 81 my_id = id; in check_snprintf() 82 set_dynamic_states(my_id); in check_snprintf() 85 add_modification_hook(my_id, &ok_to_use); in check_snprintf()
|
H A D | check_input_free_device.c | 30 static int my_id; variable 34 if (get_state_expr(my_id, expr->left)) { in match_assign() 35 set_state_expr(my_id, expr->left, &ok); in match_assign() 44 set_state_expr(my_id, arg, &no_free); in match_input_unregister() 53 sm = get_sm_state_expr(my_id, arg); in match_input_free() 63 my_id = id; in check_input_free_device()
|
H A D | smatch_param_filter.c | 36 static int my_id; variable 90 set_state(my_id, cur->name, cur->sym, alloc_estate_rl(clone_rl(rl))); in pre_merge_hook() 108 set_state(my_id, name, sym, alloc_estate_empty()); in extra_mod_hook() 178 sm = get_sm_state(my_id, tmp->name, tmp->sym); in print_return_value_param() 190 state = get_state(my_id, sm->name, sm->sym); in param_has_filter_data() 203 my_id = id; in register_param_filter() 205 set_dynamic_states(my_id); in register_param_filter() 210 add_unmatched_state_hook(my_id, &unmatched_state); in register_param_filter() 211 add_pre_merge_hook(my_id, &pre_merge_hook); in register_param_filter() 212 add_merge_hook(my_id, &merge_estates); in register_param_filter()
|