This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Segfault inserting a pass
- From: Saleel Kudchadker <skudchad at asu dot edu>
- To: gcc-help at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: Wed, 17 Feb 2010 12:00:12 -0700
- Subject: Segfault inserting a pass
Hi I am working on calling the instrument function before every
function call automatically. I tried inserting this pass which would
add my function to every edge
//----------------------------------------
static unsigned int spmm_insert(void){
struct cgraph_edge *e;
struct cgraph_node *node = cgraph_node (current_function_decl);
tree x, bind,spmm_type,spmm_decl,ctr_ptr;
x = implicit_built_in_decls[BUILT_IN_PROFILE_FUNC_ENTER];
x = build_call_expr (x, 0);
for (e = node->callees; e; e = e->next_callee){
bsi_insert_on_edge(e, x);
}
/*******************************************************/
This throws me a Segfault error when compiling the code. i am applying
this pass before pass_apply_inline in passes.c
I am new to GCC, Can someone hint me documents or materials I can look
upon to insert this pass.
--
Regards,
Saleel Kudchadker
Graduate Student
School of Computing , Informatics and Decision Systems
Arizona State University