projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
removed include
[libfirm]
/
ir
/
ir
/
irgraph_t.h
diff --git
a/ir/ir/irgraph_t.h
b/ir/ir/irgraph_t.h
index
1f78f26
..
1b98e71
100644
(file)
--- a/
ir/ir/irgraph_t.h
+++ b/
ir/ir/irgraph_t.h
@@
-19,13
+19,19
@@
*/
*/
-# ifndef _IRGRAPH_T_H_
-# define _IRGRAPH_T_H_
-# include "obst.h"
-# include "pset.h"
-# include "irgraph.h"
-# include "firm_common_t.h"
-# include "irtypeinfo.h"
+#ifndef _IRGRAPH_T_H_
+#define _IRGRAPH_T_H_
+
+#include "irgraph.h"
+
+#include "firm_common_t.h"
+#include "irtypeinfo.h"
+#include "irprog.h"
+
+#include "irloop.h"
+
+#include "obst.h"
+#include "pset.h"
#define FRAME_TP_SUFFIX "frame_tp"
#define FRAME_TP_SUFFIX "frame_tp"
@@
-91,6
+97,9
@@
struct ir_graph {
int *caller_isbe; /**< For callgraph analyses: set if backedge. */
ir_graph **callees; /**< For callgraph analyses. */
int *callee_isbe; /**< For callgraph analyses: set if backedge. */
int *caller_isbe; /**< For callgraph analyses: set if backedge. */
ir_graph **callees; /**< For callgraph analyses. */
int *callee_isbe; /**< For callgraph analyses: set if backedge. */
+ int callgraph_loop_depth;
+ int callgraph_recursion_depth;
+ ir_loop *l;
/* -- Fields for Walking the graph -- */
unsigned long visited; /**< this flag is an identifier for
/* -- Fields for Walking the graph -- */
unsigned long visited; /**< this flag is an identifier for
@@
-372,7
+381,14
@@
__get_irg_callee_info_state(ir_graph *irg) {
static INLINE void
__set_irg_callee_info_state(ir_graph *irg, irg_callee_info_state s) {
static INLINE void
__set_irg_callee_info_state(ir_graph *irg, irg_callee_info_state s) {
+ irg_callee_info_state irp_state = get_irp_callee_info_state();
+
irg->callee_info_state = s;
irg->callee_info_state = s;
+
+ /* I could compare ... but who knows? */
+ if ((irp_state == irg_callee_info_consistent) ||
+ ((irp_state == irg_callee_info_inconsistent) && (s == irg_callee_info_none)))
+ set_irp_callee_info_state(s);
}
static INLINE irg_inline_property
}
static INLINE irg_inline_property