/illumos-gate/usr/src/tools/smatch/src/ |
H A D | smatch_extra.h | 67 int possibly_true(struct expression *left, int comparison, struct expression *right); 197 void set_equiv(struct expression *left, struct expression *right); 213 struct expression *preop_expression(struct expression *expr, int op); 214 struct expression *deref_expression(struct expression *expr); 215 struct expression *assign_expression(struct expression *left, int op, struct expression *right); 216 struct expression *binop_expression(struct expression *left, int op, struct expression *right); 217 struct expression *array_element_expression(struct expression *array, struct expression *offset); 220 struct expression *compare_expression(struct expression *left, int op, struct expression *right); 222 struct expression *unknown_value_expression(struct expression *expr); 227 void expr_set_parent_expr(struct expression *expr, struct expression *parent); [all …]
|
H A D | smatch.h | 392 struct expression *get_array_expr(struct expression *expr); 433 struct expression *get_array_base(struct expression *expr); 434 struct expression *get_array_offset(struct expression *expr); 437 struct expression *strip_parens(struct expression *expr); 438 struct expression *strip_expr(struct expression *expr); 439 struct expression *strip_expr_set_parent(struct expression *expr); 466 int expr_equiv(struct expression *one, struct expression *two); 1091 struct expression *get_assigned_expr(struct expression *expr); 1123 int get_comparison(struct expression *left, struct expression *right); 1199 int has_variable(struct expression *expr, struct expression *var); [all …]
|
H A D | smatch_expressions.c | 11 struct expression *expr; in get_cur_pos() 27 struct expression *expr; in alloc_tmp_expression() 43 struct expression *zero; in zero_expr() 53 struct expression *expr; in value_expr() 76 struct expression *preop_expression(struct expression *expr, int op) in preop_expression() 86 struct expression *deref_expression(struct expression *expr) in deref_expression() 93 struct expression *assign_expression(struct expression *left, int op, struct expression *right) in assign_expression() 108 struct expression *binop_expression(struct expression *left, int op, struct expression *right) in binop_expression() 119 struct expression *array_element_expression(struct expression *array, struct expression *offset) in array_element_expression() 137 struct expression *compare_expression(struct expression *left, int op, struct expression *right) in compare_expression() [all …]
|
H A D | expression.h | 145 struct expression { struct 171 struct expression *unop; argument 186 struct expression *left, *right; 190 struct expression *deref; 196 struct expression *base; 212 struct expression *fn; 236 struct expression *init_expr; 241 struct expression *down; 244 struct expression *index; 250 struct expression *constraint; [all …]
|
H A D | check_debug.c | 118 struct expression *arg; in match_print_known() 137 struct expression *arg; in match_print_implied() 151 struct expression *arg; in match_real_absolute() 165 struct expression *arg; in match_print_implied_min() 182 struct expression *arg; in match_print_implied_max() 199 struct expression *arg; in match_user_rl() 220 struct expression *arg; in match_capped() 231 struct expression *arg; in match_print_hard_max() 248 struct expression *arg; in match_print_fuzzy_max() 265 struct expression *arg; in match_print_absolute() [all …]
|
H A D | parse.h | 56 struct expression *expression; member 57 struct expression *context; 60 struct expression *ret_value; 64 struct expression *if_conditional; 79 struct expression *case_expression; 80 struct expression *case_to; 105 struct expression *goto_expression; 109 struct expression *asm_string; 116 struct expression *range_expression; 117 struct expression *range_low; [all …]
|
H A D | smatch_struct_assignment.c | 113 static struct expression *remove_addr(struct expression *expr) in remove_addr() 152 struct expression *assign; in handle_non_struct_assignments() 184 struct expression *assign; in set_inner_struct_members() 367 struct expression *right; in handle_param_offsets() 433 struct expression *buf; in match_memset() 434 struct expression *val; in match_memset() 445 struct expression *dest; in match_memcpy() 446 struct expression *src; in match_memcpy() 473 struct expression *dest; in match_memcpy_unknown() 481 struct expression *arg; in match_sscanf() [all …]
|
H A D | smatch_strlen.c | 74 struct expression *right; in match_strlen() 75 struct expression *str; in match_strlen() 76 struct expression *len_expr; in match_strlen() 97 struct expression *left; in match_strlen_condition() 98 struct expression *right; in match_strlen_condition() 167 struct expression *dest; in match_snprintf() 185 struct expression *dest; in match_strlcpycat() 186 struct expression *src; in match_strlcpycat() 209 struct expression *dest; in match_strcpy() 210 struct expression *src; in match_strcpy() [all …]
|
H A D | smatch_buf_comparison.c | 61 struct expression *expr; in match_link_modify() 153 static void match_alloc_helper(struct expression *pointer, struct expression *size) in match_alloc_helper() 155 struct expression *tmp; in match_alloc_helper() 244 struct expression *get_size_variable(struct expression *buf, int *limit_type) in get_size_variable() 255 struct expression *get_array_variable(struct expression *size) in get_array_variable() 267 struct expression *array; in array_check() 268 struct expression *size; in array_check() 370 struct expression *size; in buf_comparison_index_ok() 491 struct expression *left; in match_size_binop() 534 struct expression *size; in buf_size_param_comparison() [all …]
|
H A D | expand.c | 183 static bool check_shift_count(struct expression *expr, struct expression *right) in check_shift_count() 438 struct expression *right; in expand_logical() 588 struct expression *right; in check_assignment() 626 struct expression *value; in constant_symbol_value() 634 struct expression *entry; in constant_symbol_value() 804 struct expression *expr; in expand_arguments() 871 struct expression *expr; in expand_expression_list() 961 const struct expression *a = _a; in compare_expressions() 976 struct expression *a = NULL; in verify_nonoverlapping() 979 struct expression *b; in verify_nonoverlapping() [all …]
|
H A D | check_passes_sizeof.c | 26 static struct expression *get_returned_expr(struct expression *expr) in get_returned_expr() 31 if (!stmt || stmt->type != STMT_EXPRESSION || !stmt->expression) in get_returned_expr() 33 if (stmt->expression->type != EXPR_ASSIGNMENT) in get_returned_expr() 35 if (stmt->expression->right != expr) in get_returned_expr() 37 return stmt->expression->left; in get_returned_expr() 40 static struct expression *remove_dereference(struct expression *expr) in remove_dereference() 50 static int get_buf_number(struct expression *call, struct expression *size_arg) in get_buf_number() 52 struct expression *arg; in get_buf_number() 71 static void match_call(struct expression *call) in match_call() 73 struct expression *arg; in match_call()
|
H A D | smatch_untracked_param.c | 44 typedef void (untracked_hook)(struct expression *call, int param); 74 static void call_lost_callbacks(struct expression *expr, int param) in call_lost_callbacks() 90 struct expression *arg; in get_array_from_key() 141 static int lost_in_va_args(struct expression *expr) in lost_in_va_args() 160 static void match_after_call(struct expression *expr) in match_after_call() 162 struct expression *arg; in match_after_call() 246 static void match_param_assign(struct expression *expr) in match_param_assign() 248 struct expression *right; in match_param_assign() 271 struct expression *tmp, *expr; in match_param_assign_in_asm() 287 static void match_inline_start(struct expression *expr) in match_inline_start() [all …]
|
H A D | smatch_buf_size.c | 174 struct expression *tmp; in get_initializer_size() 270 struct expression *call; in db_returns_buf_size() 351 static struct expression *remove_addr_fluff(struct expression *expr) in remove_addr_fluff() 353 struct expression *tmp; in remove_addr_fluff() 601 static struct expression *strip_ampersands(struct expression *expr) in strip_ampersands() 676 struct expression *left; in match_array_assignment() 677 struct expression *right; in match_array_assignment() 723 struct expression *right; in match_alloc() 724 struct expression *arg; in match_alloc() 782 struct expression *arg; in match_alloc_pages() [all …]
|
H A D | expression.c | 176 struct expression **tree) in builtin_offsetof_expr() 178 struct expression *expr = NULL; in builtin_offsetof_expr() 179 struct expression **p = &expr; in builtin_offsetof_expr() 198 struct expression *e; in builtin_offsetof_expr() 375 struct expression *expr = NULL; in primary_expression() 482 struct expression *expr = NULL; in expression_list() 642 struct expression *unop; in unary_expression() 643 struct expression *unary; in unary_expression() 660 struct expression *unop; in unary_expression() 661 struct expression *unary; in unary_expression() [all …]
|
H A D | check_index_overflow.c | 28 static int definitely_just_used_as_limiter(struct expression *array, struct expression *offset) in definitely_just_used_as_limiter() 31 struct expression *tmp; in definitely_just_used_as_limiter() 163 static int is_subtract(struct expression *expr) in is_subtract() 165 struct expression *tmp; in is_subtract() 180 static int constraint_met(struct expression *array_expr, struct expression *offset) in constraint_met() 205 static int should_warn(struct expression *expr) in should_warn() 207 struct expression *array_expr; in should_warn() 212 struct expression *offset; in should_warn() 262 static void array_check(struct expression *expr) in array_check() 264 struct expression *array_expr; in array_check() [all …]
|
H A D | check_err_ptr_deref.c | 45 static void check_is_err_ptr(struct expression *expr) in check_is_err_ptr() 71 static void set_param_dereferenced(struct expression *call, struct expression *arg, char *key, char… in set_param_dereferenced() 101 struct expression *assign_expr, void *unused) in match_checked() 103 struct expression *arg; in match_checked() 113 struct expression *assign_expr, void *unused) in match_err() 115 struct expression *arg; in match_err() 124 static void match_dereferences(struct expression *expr) in match_dereferences() 134 struct expression *arg; in match_kfree() 140 static void match_condition(struct expression *expr) in match_condition() 175 struct expression *arg; in match_err_ptr_positive_const() [all …]
|
H A D | check_kernel.c | 32 struct expression *arg; in implied_err_cast_return() 84 struct expression *arg; in match_param_valid_ptr() 106 struct expression *arg; in match_param_err_or_null() 127 struct expression *arg; in match_not_err() 143 struct expression *arg; in match_err() 172 struct expression *right = expr->right; in match_container_of() 207 struct expression *start_arg; in match_next_bit() 208 struct expression *size_arg; in match_next_bit() 234 struct expression *arg; in match_fls() 334 static struct expression *get_val_expr(struct expression *expr) in get_val_expr() [all …]
|
H A D | inline.c | 39 static struct expression * dup_expression(struct expression *expr) in dup_expression() 78 static struct expression * copy_expression(struct expression *expr) in copy_expression() 208 struct expression *arg; in copy_expression() 222 struct expression *entry; in copy_expression() 292 struct expression *expr; in copy_asm_constraints() 347 struct expression *expr = copy_expression(stmt->expression); in copy_one_statement() 348 if (expr == stmt->expression) in copy_one_statement() 351 stmt->expression = expr; in copy_one_statement() 356 if (expr == stmt->expression) in copy_one_statement() 369 struct expression *cond = stmt->if_conditional; in copy_one_statement() [all …]
|
H A D | smatch_conditions.c | 77 struct expression *tmp = NULL; in handle_zero_comparisons() 78 struct expression *zero; in handle_zero_comparisons() 130 struct expression *expr = NULL; in handle_compound_stmt() 144 expr = last->expression; in handle_compound_stmt() 555 struct expression *right; in __handle_condition_assigns() 615 struct expression *right; in is_select_assign() 629 struct expression *right; in __handle_select_assigns() 649 struct expression *fake_expr; in __handle_select_assigns() 661 struct expression *fake_expr; in __handle_select_assigns() 706 struct expression *right; in __handle_expr_statement_assigns() [all …]
|
H A D | smatch_constraints_required.c | 74 static void save_constraint_required(struct expression *pointer, int op, struct expression *constra… in save_constraint_required() 97 static int handle_zero_size_arrays(struct expression *pointer, struct expression *size) in handle_zero_size_arrays() 99 struct expression *left, *right; in handle_zero_size_arrays() 163 static void match_alloc_helper(struct expression *pointer, struct expression *size, int recurse) in match_alloc_helper() 165 struct expression *size_orig, *tmp; in match_alloc_helper() 217 struct expression *call, *arg; in match_alloc() 228 struct expression *count = NULL; in match_calloc() 283 struct expression *size; in match_assign_has_buf_comparison() 300 struct expression *right, *arg, *tmp; in match_assign_data() 363 struct expression *array; in match_assign_ARRAY_SIZE() [all …]
|
H A D | check_free.c | 45 static int is_freed(struct expression *expr) in is_freed() 55 static void match_symbol(struct expression *expr) in match_symbol() 57 struct expression *parent; in match_symbol() 104 struct expression *arg; in set_ignored_params() 141 static int is_free_func(struct expression *fn) in is_free_func() 156 static void match_call(struct expression *expr) in match_call() 158 struct expression *arg; in match_call() 187 static void match_return(struct expression *expr) in match_return() 209 struct expression *arg; in match_free() 226 static void set_param_freed(struct expression *call, struct expression *arg, char *key, char *unuse… in set_param_freed() [all …]
|
H A D | check_or_vs_and.c | 25 static int does_inc_dec(struct expression *expr) in does_inc_dec() 35 static int expr_equiv_no_inc_dec(struct expression *one, struct expression *two) in expr_equiv_no_inc_dec() 42 static int inconsistent_check(struct expression *left, struct expression *right) in inconsistent_check() 64 static void check_or(struct expression *expr) in check_or() 66 struct expression *left, *right; in check_or() 81 static int is_kernel_min_macro(struct expression *expr) in is_kernel_min_macro() 98 static void check_and(struct expression *expr) in check_and() 100 struct expression *left, *right; in check_and() 118 static void match_logic(struct expression *expr) in match_logic() 141 static void match_condition(struct expression *expr) in match_condition() [all …]
|
H A D | smatch_helper.c | 136 struct expression *expr; in get_argument_from_call_expr() 150 struct expression *get_array_expr(struct expression *expr) in get_array_expr() 318 struct expression *tmp; in __get_variable_from_expr() 535 struct expression *reorder_expr_alphabetically(struct expression *expr) in reorder_expr_alphabetically() 537 struct expression *ret; in reorder_expr_alphabetically() 667 struct expression *get_array_base(struct expression *expr) in get_array_base() 679 struct expression *get_array_offset(struct expression *expr) in get_array_offset() 715 struct expression *strip_parens(struct expression *expr) in strip_parens() 806 struct expression *strip_expr(struct expression *expr) in strip_expr() 811 struct expression *strip_expr_set_parent(struct expression *expr) in strip_expr_set_parent() [all …]
|
H A D | smatch_kernel_user_data.c | 232 struct expression *member; in tag_struct_members() 300 struct expression *dest; in match_user_copy() 518 struct expression *right; in handle_struct_assignment() 614 struct expression *faked; in match_assign() 864 struct expression *arg; in we_pass_user_data() 1053 struct expression *arg; in match_call_info() 1112 struct expression *arg; in db_param_set() 1156 struct expression *expr; in set_param_user_data() 1282 struct expression *arg; in returns_param_user_data() 1283 struct expression *call; in returns_param_user_data() [all …]
|
/illumos-gate/usr/src/cmd/mdb/common/mdb/ |
H A D | mdb_grammar.y | 184 | expression ',' expression shell_pipe terminator { 295 expression: expression '+' expression { $$ = $1 + $3; } 296 | expression '-' expression { $$ = $1 - $3; } 297 | expression '*' expression { $$ = $1 * $3; } 299 | expression '%' expression { 313 | expression MDB_TOK_MODULUS expression { 323 | expression '&' expression { $$ = $1 & $3; } 324 | expression '|' expression { $$ = $1 | $3; } 325 | expression '^' expression { $$ = $1 ^ $3; } 330 | expression MDB_TOK_LSHIFT expression { $$ = $1 << $3; } [all …]
|