X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana2%2Firmemwalk.c;h=bbb8e3701098218d79db2bc0772ee21ba20e3e95;hb=c53a503e81f6e7c0995fbbcc451c2178ad9083bd;hp=2b885d5e4b1c96e22f9322e1f2414fcd08a140ce;hpb=12798da7702222e9f8f9bc9362b3610748da7cd1;p=libfirm diff --git a/ir/ana2/irmemwalk.c b/ir/ana2/irmemwalk.c index 2b885d5e4..bbb8e3701 100644 --- a/ir/ana2/irmemwalk.c +++ b/ir/ana2/irmemwalk.c @@ -21,12 +21,14 @@ # ifdef HAVE_CONFIG_H -# include +# include "config.h" # endif +# include "irnode_t.h" # include "irgwalk.h" /* for irg_walk_func */ # include "irprog.h" /* for get_irp_main_irg */ # include "xmalloc.h" +# include "gnu_ext.h" # ifndef TRUE # define TRUE 1 @@ -37,15 +39,16 @@ Data */ -/* environment for a single memory walker */ +/** environment for a single memory walker */ typedef struct walk_mem_env_str { - ir_graph *graph; /* the graph we're visiting */ - int visited; /* 'visited' marker */ - irg_walk_func *pre; /* pre action */ - irg_walk_func *post; /* post action */ - void *env; /* user-defined environment */ - - struct walk_mem_env_str *prev; /* link up walking instances */ + ir_graph *graph; /**< the graph we're visiting */ + unsigned long visited; /**< 'visited' marker + (unsigned long in case we walk more than 2^32 graphs) */ + irg_walk_func *pre; /**< pre action */ + irg_walk_func *post; /**< post action */ + void *env; /**< user-defined environment */ + + struct walk_mem_env_str *prev; /**< link up walking instances */ /* what else? */ } walk_mem_env_t; @@ -219,7 +222,7 @@ void irg_walk_mem (ir_graph *graph, void *env) { ir_node *end_block = get_irg_end_block (graph); - walk_mem_env_t *walk_env = (walk_mem_env_t*) xmalloc (sizeof (walk_mem_env_t)); + walk_mem_env_t *walk_env = xmalloc (sizeof (walk_mem_env_t)); assert (! get_irg_is_mem_visited (graph)); @@ -261,6 +264,25 @@ void irg_walk_mem (ir_graph *graph, /* $Log$ + Revision 1.11 2005/01/26 12:20:20 beck + gnu_ext.h included + + Revision 1.10 2005/01/14 13:34:48 liekweg + Don't cast malloc + + Revision 1.9 2005/01/10 17:26:34 liekweg + fixup printfs, don't put environments on the stack + + Revision 1.8 2004/12/22 14:43:14 beck + made allocations C-like + + Revision 1.7 2004/12/21 14:25:35 beck + removed C99 constructs + make visit counter of same type as irn visit counter + + Revision 1.6 2004/12/02 16:17:51 beck + fixed config.h include + Revision 1.5 2004/11/19 10:35:20 liekweg also test for NoMem