X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firtypes.h;h=b14a5da9167c2b6b78317e88de8343db127f533b;hb=96027c6b59a098ca8bcc10f6c3df82b0a725485a;hp=79a27197da00b5fdf7282e0f2271819c98af0c36;hpb=973a9ca4e334b5270caebc099c053eec69983476;p=libfirm diff --git a/ir/ir/irtypes.h b/ir/ir/irtypes.h index 79a27197d..b14a5da91 100644 --- a/ir/ir/irtypes.h +++ b/ir/ir/irtypes.h @@ -34,6 +34,7 @@ #include "irgraph.h" #include "iredgekinds.h" #include "irtypeinfo.h" +#include "irextbb.h" #include "execution_frequency.h" #include "irmemory.h" #include "callgraph.h" @@ -370,6 +371,7 @@ struct ir_node { /* ------- For analyses -------- */ ir_loop *loop; /**< the loop the node is in. Access routines in irloop.h */ struct ir_node **deps; /**< Additional dependencies induced by state. */ + void *backend_info; irn_edges_info_t edge_info; /**< Everlasting out edges. */ /* ------- Opcode depending fields -------- */ attr attr; /**< The set of attributes of this node. Depends on opcode. @@ -459,9 +461,6 @@ struct ir_graph { unsigned fp_model; /**< floating point model of the graph. */ /* -- Fields for construction -- */ -#if USE_EXPLICIT_PHI_IN_STACK - struct Phi_in_stack *Phi_in_stack; /**< Needed for automatic Phi construction. */ -#endif int n_loc; /**< Number of local variables in this procedure including procedure parameters. */ void **loc_descriptions; /**< Storage for local variable descriptions. */ @@ -479,11 +478,11 @@ struct ir_graph { unsigned *caller_isbe; /**< For callgraph analysis: raw bitset if backedge info calculated. */ cg_callee_entry **callees; /**< For callgraph analysis: list of callee calls */ unsigned *callee_isbe; /**< For callgraph analysis: raw bitset if backedge info calculated. */ + ir_loop *l; /**< For callgraph analysis. */ int callgraph_loop_depth; /**< For callgraph analysis */ int callgraph_recursion_depth; /**< For callgraph analysis */ double method_execution_frequency; /**< For callgraph analysis */ - ir_loop *l; /**< For callgraph analysis. */ /* -- Fields for Walking the graph -- */ ir_visited_t visited; /**< this flag is an identifier for @@ -508,7 +507,7 @@ struct ir_graph { #endif #ifndef NDEBUG - ir_resources_t reserved_resources;/**< Bitset for tracking used resources. */ + ir_resources_t reserved_resources; /**< Bitset for tracking used local resources. */ #endif }; @@ -564,6 +563,9 @@ struct ir_prog { #ifdef DEBUG_libfirm long max_node_nr; /**< to generate unique numbers for nodes. */ #endif +#ifndef NDEBUG + ir_resources_t reserved_resources; /**< Bitset for tracking used global resources. */ +#endif }; #endif