+
+ 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);
+ }
+ }
+