1*1f5207b7SJohn Levon /* 2*1f5207b7SJohn Levon * Copyright (C) 2009 Dan Carpenter. 3*1f5207b7SJohn Levon * 4*1f5207b7SJohn Levon * This program is free software; you can redistribute it and/or 5*1f5207b7SJohn Levon * modify it under the terms of the GNU General Public License 6*1f5207b7SJohn Levon * as published by the Free Software Foundation; either version 2 7*1f5207b7SJohn Levon * of the License, or (at your option) any later version. 8*1f5207b7SJohn Levon * 9*1f5207b7SJohn Levon * This program is distributed in the hope that it will be useful, 10*1f5207b7SJohn Levon * but WITHOUT ANY WARRANTY; without even the implied warranty of 11*1f5207b7SJohn Levon * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12*1f5207b7SJohn Levon * GNU General Public License for more details. 13*1f5207b7SJohn Levon * 14*1f5207b7SJohn Levon * You should have received a copy of the GNU General Public License 15*1f5207b7SJohn Levon * along with this program; if not, see http://www.gnu.org/copyleft/gpl.txt 16*1f5207b7SJohn Levon */ 17*1f5207b7SJohn Levon 18*1f5207b7SJohn Levon #include "smatch.h" 19*1f5207b7SJohn Levon 20*1f5207b7SJohn Levon static int my_id; 21*1f5207b7SJohn Levon match_call(struct expression * expr)22*1f5207b7SJohn Levonstatic void match_call(struct expression *expr) 23*1f5207b7SJohn Levon { 24*1f5207b7SJohn Levon char *fn_name; 25*1f5207b7SJohn Levon 26*1f5207b7SJohn Levon fn_name = expr_to_var(expr->fn); 27*1f5207b7SJohn Levon if (!fn_name) 28*1f5207b7SJohn Levon return; 29*1f5207b7SJohn Levon sm_prefix(); 30*1f5207b7SJohn Levon sm_printf("info: func_call ("); 31*1f5207b7SJohn Levon print_held_locks(); 32*1f5207b7SJohn Levon sm_printf(") %s\n", fn_name); 33*1f5207b7SJohn Levon free_string(fn_name); 34*1f5207b7SJohn Levon } 35*1f5207b7SJohn Levon check_call_tree(int id)36*1f5207b7SJohn Levonvoid check_call_tree(int id) 37*1f5207b7SJohn Levon { 38*1f5207b7SJohn Levon if (!option_call_tree) 39*1f5207b7SJohn Levon return; 40*1f5207b7SJohn Levon my_id = id; 41*1f5207b7SJohn Levon add_hook(&match_call, FUNCTION_CALL_HOOK); 42*1f5207b7SJohn Levon } 43