+/**
+ * statistics info
+ */
+typedef struct _statistic_info_t {
+ unsigned stat_options; /**< statistic options: field must be first */
+ struct obstack cnts; /**< obstack containing the counters that are incremented */
+ HASH_MAP(graph_entry_t) *irg_hash; /**< hash map containing the counter for irgs */
+ HASH_MAP(ir_op) *ir_op_hash; /**< hash map containing all ir_ops (accessible by op_codes) */
+ pdeq *wait_q; /**< wait queue for leaf call decision */
+ int recursive; /**< flag for detecting recursive hook calls */
+ int in_dead_node_elim; /**< set, if dead node elimination runs */
+ ir_op *op_Phi0; /**< pseudo op for Phi0 */
+ ir_op *op_PhiM; /**< pseudo op for memory Phi */
+ ir_op *op_ProjM; /**< pseudo op for memory Proj */
+ ir_op *op_MulC; /**< pseudo op for multiplication by const */
+ ir_op *op_DivC; /**< pseudo op for division by const */
+ ir_op *op_ModC; /**< pseudo op for modulo by const */
+ ir_op *op_DivModC; /**< pseudo op for DivMod by const */
+ ir_op *op_SelSel; /**< pseudo op for Sel(Sel) */
+ ir_op *op_SelSelSel; /**< pseudo op for Sel(Sel(Sel)) */
+ dumper_t *dumper; /**< list of dumper */
+ int reassoc_run; /**< if set, reassociation is running */
+ constant_info_t const_info; /**< statistic info for constants */
+} stat_info_t;