projects
/
libfirm
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b879b3a
)
Removed Tuple nodes hold by End node.
author
Sebastian Buchwald
<Sebastian.Buchwald@kit.edu>
Fri, 13 Jul 2012 15:57:51 +0000
(17:57 +0200)
committer
Sebastian Buchwald
<Sebastian.Buchwald@kit.edu>
Fri, 13 Jul 2012 15:57:51 +0000
(17:57 +0200)
ir/ir/rm_tuples.c
patch
|
blob
|
history
diff --git
a/ir/ir/rm_tuples.c
b/ir/ir/rm_tuples.c
index
dc9f06e
..
ad4d6b1
100644
(file)
--- a/
ir/ir/rm_tuples.c
+++ b/
ir/ir/rm_tuples.c
@@
-57,5
+57,18
@@
static void exchange_tuple_projs(ir_node *node, void *env)
void remove_tuples(ir_graph *irg)
{
irg_walk_graph(irg, exchange_tuple_projs, NULL, NULL);
+
+ ir_node *end = get_irg_end(irg);
+ int n_keepalives = get_End_n_keepalives(end);
+ int i;
+
+ for (i = n_keepalives - 1; i >= 0; --i) {
+ ir_node *irn = get_End_keepalive(end, i);
+
+ if (is_Tuple(irn)) {
+ remove_End_keepalive(end, irn);
+ }
+ }
+
add_irg_properties(irg, IR_GRAPH_PROPERTY_NO_TUPLES);
}