projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Mux -> Abs works for unordered compare ...
[libfirm]
/
ir
/
ir
/
iredges_t.h
diff --git
a/ir/ir/iredges_t.h
b/ir/ir/iredges_t.h
index
07f8d73
..
c2b291b
100644
(file)
--- a/
ir/ir/iredges_t.h
+++ b/
ir/ir/iredges_t.h
@@
-78,7
+78,9
@@
struct _ir_edge_t {
*/
static inline const ir_edge_t *_get_irn_out_edge_first_kind(const ir_node *irn, ir_edge_kind_t kind)
{
*/
static inline const ir_edge_t *_get_irn_out_edge_first_kind(const ir_node *irn, ir_edge_kind_t kind)
{
- const struct list_head *head = _get_irn_outs_head(irn, kind);
+ const struct list_head *head;
+ assert(edges_activated_kind(get_irn_irg(irn), kind));
+ head = _get_irn_outs_head(irn, kind);
return list_empty(head) ? NULL : list_entry(head->next, ir_edge_t, list);
}
return list_empty(head) ? NULL : list_entry(head->next, ir_edge_t, list);
}
@@
-141,6
+143,11
@@
void edges_notify_edge_kind(ir_node *src, int pos, ir_node *tgt, ir_node *old_tg
*/
void edges_node_deleted(ir_node *old, ir_graph *irg);
*/
void edges_node_deleted(ir_node *old, ir_graph *irg);
+/**
+ * A node might be revivaled by CSE.
+ */
+void edges_node_revival(ir_node *node, ir_graph *irg);
+
void edges_invalidate_kind(ir_node *irn, ir_edge_kind_t kind, ir_graph *irg);
/**
void edges_invalidate_kind(ir_node *irn, ir_edge_kind_t kind, ir_graph *irg);
/**