Cosmetic
[libfirm] / ir / ir / irgraph_t.h
index 7739f07..42c7689 100644 (file)
 
 #include "obst.h"
 #include "pset.h"
+#include "set.h"
 #include "type_t.h"
 
 #define FRAME_TP_SUFFIX "frame_tp"
 
+/**
+ * Edge info to put into an irg.
+ */
+typedef struct _irg_edge_info_t {
+       set *edges;
+       unsigned activated : 1;
+} irg_edge_info_t;
+
+
 /** ir_graph holds all information for a procedure */
 struct ir_graph {
   firm_kind         kind;            /**<  always set to k_ir_graph*/
@@ -84,7 +94,8 @@ struct ir_graph {
   struct Phi_in_stack *Phi_in_stack; /**< needed for automatic Phi construction */
 #endif
   int n_loc;                         /**< number of local variable in this
-                    procedure including procedure parameters. */
+                                          procedure including procedure parameters. */
+  void **loc_descriptions;           /**< storage for local variable desriptions */
 
   /* -- Fields for optimizations / analysis information -- */
   pset *value_table;                 /**< hash table for global value numbering (cse)
@@ -102,8 +113,10 @@ struct ir_graph {
   unsigned char *caller_isbe;        /**< For callgraph analysis: set if backedge. */
   ir_graph **callees;                /**< For callgraph analysis. */
   unsigned char *callee_isbe;        /**< For callgraph analysis: set if backedge. */
-  int        callgraph_loop_depth;
-  int        callgraph_recursion_depth;
+  int        callgraph_loop_depth;         /**< For callgraph analysis */
+  int        callgraph_recursion_depth;    /**< For callgraph analysis */
+  double     method_execution_frequency;   /**< For callgraph analysis */
+
   ir_loop   *l;
 
   /* -- Fields for Walking the graph -- */
@@ -116,6 +129,10 @@ struct ir_graph {
   int graph_nr;             /**< a unique graph number for each graph to make output
                    readable. */
 #endif
+
+#if FIRM_EDGES_INPLACE
+  irg_edge_info_t edge_info;  /**< edge info for automatic outs */
+#endif
 };
 
 /**