#include "beabihelper.h"
#include "bearch.h"
+#include "beirg.h"
#include "benode.h"
#include "besched.h"
#include "ircons.h"
void be_add_missing_keeps_node(ir_node *node)
{
int n_outs, i;
- unsigned *found_projs;
ir_mode *mode = get_irn_mode(node);
ir_node *last_keep;
- ir_node **existing_projs;
if (mode != mode_T) {
if (!has_real_user(node)) {
if (n_outs <= 0)
return;
- rbitset_alloca(found_projs, n_outs);
- existing_projs = ALLOCANZ(ir_node*, n_outs);
+ unsigned *const found_projs = rbitset_alloca(n_outs);
+ ir_node **const existing_projs = ALLOCANZ(ir_node*, n_outs);
foreach_out_edge(node, edge) {
ir_node *succ = get_edge_src_irn(edge);
ir_mode *mode = get_irn_mode(succ);
}
}
- if (mem != initial_mem) {
- edges_reroute(initial_mem, mem);
- set_Store_mem(first_store, initial_mem);
- }
+ if (mem != initial_mem)
+ edges_reroute_except(initial_mem, mem, first_store);
}
void be_add_parameter_entity_stores(ir_graph *irg)