projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
*** empty log message ***
[libfirm]
/
ir
/
ir
/
irgraph.h
diff --git
a/ir/ir/irgraph.h
b/ir/ir/irgraph.h
index
4ca81b4
..
1bbe4bb
100644
(file)
--- a/
ir/ir/irgraph.h
+++ b/
ir/ir/irgraph.h
@@
-210,12
+210,6
@@
void set_irg_end_reg (ir_graph *irg, ir_node *node);
ir_node *get_irg_end_except (const ir_graph *irg);
void set_irg_end_except (ir_graph *irg, ir_node *node);
ir_node *get_irg_end_except (const ir_graph *irg);
void set_irg_end_except (ir_graph *irg, ir_node *node);
-
-/* @@@ oblivious, no more supported. */
-ir_node *get_irg_cstore (const ir_graph *irg);
-void set_irg_cstore (ir_graph *irg, ir_node *node);
-/* end oblivious */
-
/** Returns the node that represents the frame pointer. */
ir_node *get_irg_frame (const ir_graph *irg);
/** Sets the node that represents the frame pointer. */
/** Returns the node that represents the frame pointer. */
ir_node *get_irg_frame (const ir_graph *irg);
/** Sets the node that represents the frame pointer. */
@@
-270,12
+264,12
@@
long get_irg_graph_nr(ir_graph *irg);
/** The states of an ir graph.
*
/** The states of an ir graph.
*
- * state phase values: phase_building, phase_high, phase_low.
+ * state phase values: phase_building, phase_high, phase_low
, phase_backend
.
*
* The graph is in phase_building during construction of the irgraph.
* The construction is finished by a call to finalize_cons().
*
*
* The graph is in phase_building during construction of the irgraph.
* The construction is finished by a call to finalize_cons().
*
- * Finalize_cons() sets the state to phase_high. All Firm nodes are
+ * Finalize_cons() sets the state to phase_high. All
stadard
Firm nodes are
* allowed.
*
* To get the irgraph into phase_low all Sel nodes must be removed and
* allowed.
*
* To get the irgraph into phase_low all Sel nodes must be removed and
@@
-283,18
+277,23
@@
long get_irg_graph_nr(ir_graph *irg);
* type tag nodes must be removed (@@@ really?). Initialization of
* memory allocated by Alloc must be explicit. @@@ More conditions?
*
* type tag nodes must be removed (@@@ really?). Initialization of
* memory allocated by Alloc must be explicit. @@@ More conditions?
*
+ * phase_backend is set if architecture specific machine nodes are inserted
+ * (and probally most standard Firm are removed).
*/
typedef enum {
phase_building,
phase_high,
*/
typedef enum {
phase_building,
phase_high,
- phase_low
+ phase_low,
+ phase_backend
} irg_phase_state;
/** returns the phase_state of an IR graph. */
irg_phase_state get_irg_phase_state (const ir_graph *irg);
/** sets the phase state of an IR graph. */
} irg_phase_state;
/** returns the phase_state of an IR graph. */
irg_phase_state get_irg_phase_state (const ir_graph *irg);
/** sets the phase state of an IR graph. */
-void set_irg_phase_low(ir_graph *irg);
+void set_irg_phase_state(ir_graph *irg, irg_phase_state state);
+
+#define set_irg_phase_low(irg) set_irg_phase_state(irg, phase_low)
/** state: op_pin_state_pinned
The graph is "op_pin_state_pinned" if all nodes are associated with a basic block.
/** state: op_pin_state_pinned
The graph is "op_pin_state_pinned" if all nodes are associated with a basic block.
@@
-476,6
+475,9
@@
void *get_irg_loc_description(ir_graph *irg, int n);
*/
unsigned get_irg_estimated_node_cnt(const ir_graph *irg);
*/
unsigned get_irg_estimated_node_cnt(const ir_graph *irg);
+/** Returns the last irn index for this graph. */
+unsigned get_irg_last_idx(const ir_graph *irg);
+
/**
* Access custom graph data.
* The data must have been registered with
/**
* Access custom graph data.
* The data must have been registered with