On 3/2/07, Diego Novillo <[EMAIL PROTECTED]> wrote:
Paulo J. Matos wrote on 03/02/07 10:12:

> In an IPA pass, for each CFG node, I have a tree decl member from
> which I can access the return type, name of the function, argument
> names and its types, but I can't seem to find a way to get the
> function code. I would guess it would be a basic block list but I
> don't know where I can get it.

You need to get at the function structure from the cgraph node with
DECL_STRUCT_FUNCTION (cgraph_node->decl).  Then you can use one of the
CFG accessors like basic_block_info_for_function().


For functions to which DECL_STRUCT_FUNCTION (cgraph_node->decl) != 0,
I'm always getting
VARRAY_ACTIVE_SIZE(basic_block_info_for_function(DECL_STRUCT_FUNCTION
(cgraph_node->decl))) == 0.

Is this normal? It seems there are no basic blocks set for the
functions. Probably my pass is being run before the bbs are created?

--
Paulo Jorge Matos - pocm at soton.ac.uk
http://www.personal.soton.ac.uk/pocm
PhD Student @ ECS
University of Southampton, UK

Reply via email to