avoid querying End/Anchor for register requirements
[libfirm] / ir / be / bespillslots.c
index 5e3b6f8..ff2df9f 100644 (file)
@@ -41,7 +41,7 @@
 #include "bespill.h"
 #include "bespillslots.h"
 #include "bechordal_t.h"
-#include "bestatevent.h"
+#include "statev_t.h"
 #include "bemodule.h"
 #include "beintlive_t.h"
 #include "beirg.h"
@@ -152,7 +152,6 @@ static spill_t *collect_spill(be_fec_env_t *env, ir_node *node,
        DB((dbg, DBG_COALESCING, "Slot %d: %+F\n", spill->spillslot, node));
 
        if (is_Phi(node)) {
-               const ir_exec_freq *exec_freq = be_get_irg_exec_freq(env->irg);
                int                 arity     = get_irn_arity(node);
                int                 i;
                for (i = 0; i < arity; ++i) {
@@ -163,7 +162,7 @@ static spill_t *collect_spill(be_fec_env_t *env, ir_node *node,
 
                        /* add an affinity edge */
                        affinty_edge           = OALLOC(&env->obst, affinity_edge_t);
-                       affinty_edge->affinity = get_block_execfreq(exec_freq, block);
+                       affinty_edge->affinity = get_block_execfreq(block);
                        affinty_edge->slot1    = spill->spillslot;
                        affinty_edge->slot2    = arg_spill->spillslot;
                        ARR_APP1(affinity_edge_t*, env->affinity_edges, affinty_edge);
@@ -224,7 +223,6 @@ static int my_values_interfere2(ir_graph *irg, const ir_node *a,
 
        /* If there is no dominance relation, they do not interfere. */
        if ((a2b | b2a) > 0) {
-               const ir_edge_t *edge;
                ir_node *bb;
 
                /*
@@ -260,7 +258,6 @@ static int my_values_interfere2(ir_graph *irg, const ir_node *a,
                foreach_out_edge(a, edge) {
                        const ir_node *user = get_edge_src_irn(edge);
                        if (is_Sync(user)) {
-                               const ir_edge_t *edge2;
                                foreach_out_edge(user, edge2) {
                                        const ir_node *user2 = get_edge_src_irn(edge2);
                                        assert(!is_Sync(user2));
@@ -680,11 +677,9 @@ static unsigned count_spillslots(const be_fec_env_t *env)
 {
        size_t         spillcount = ARR_LEN(env->spills);
        unsigned       slotcount  = 0;
-       unsigned      *counted;
        size_t         s;
 
-       rbitset_alloca(counted, spillcount);
-
+       unsigned *const counted = rbitset_alloca(spillcount);
        for (s = 0; s < spillcount; ++s) {
                spill_t *spill     = env->spills[s];
                int      spillslot = spill->spillslot;