#include "irprintf.h"
#include "execfreq.h"
#include "unionfind.h"
-#include "type.h"
#include "irdump_t.h"
#include "benode_t.h"
#include "bestatevent.h"
#include "bespilloptions.h"
#include "bemodule.h"
-#include "bera.h"
+#include "beintlive_t.h"
#include "beirg_t.h"
#include "bearch_t.h"
{
const spill_t* s1 = d1;
const spill_t* s2 = d2;
+ (void) size;
+
return s1->spill != s2->spill;
}
int affinity_edge_count;
bitset_t **interferences;
int* spillslot_unionfind;
- const be_lv_t *lv = be_get_birg_liveness(env->birg);
spillcount = set_count(env->spills);
if(spillcount == 0)
if (is_NoMem(spill2))
continue;
- if (values_interfere(lv, spill1, spill2)) {
+ if (values_interfere(env->birg, spill1, spill2)) {
DBG((dbg, DBG_INTERFERENCES, "Slot %d and %d interfere\n", i, i2));
bitset_set(interferences[i], i2);
bitset_set(interferences[i2], i);
{
const memperm_t* e1 = d1;
const memperm_t* e2 = d2;
+ (void) size;
+
return e1->block != e2->block;
}
// insert node into schedule
blockend = get_end_of_block_insertion_point(memperm->block);
sched_add_before(blockend, mempermnode);
- be_stat_ev("mem_perm", memperm->entrycount);
+ stat_ev_dbl("mem_perm", memperm->entrycount);
i = 0;
for(entry = memperm->entries; entry != NULL; entry = entry->next, ++i) {
be_set_MemPerm_out_entity(mempermnode, i, entry->out);
set_irg_current_block(irg, memperm->block);
proj = new_Proj(mempermnode, get_irn_mode(arg), i);
- sched_add_before(blockend, proj);
set_irn_n(entry->node, entry->pos, proj);
}
const arch_env_t *arch_env = birg->main_env->arch_env;
be_fec_env_t *env = xmalloc(sizeof(env[0]));
- be_assure_liveness(birg);
+ be_liveness_assure_chk(be_assure_liveness(birg));
obstack_init(&env->obst);
env->arch_env = arch_env;
void be_assign_entities(be_fec_env_t *env)
{
- if(be_stat_ev_is_active()) {
- int count = set_count(env->spills);
- be_stat_ev("spillslots", count);
- }
+ stat_ev_dbl("spillslots", set_count(env->spills));
if(be_coalesce_spill_slots) {
do_greedy_coalescing(env);
}
- if(be_stat_ev_is_active()) {
- int count = count_spillslots(env);
- be_stat_ev("spillslots_after_coalescing", count);
- }
+ stat_ev_dbl("spillslots_after_coalescing", count_spillslots(env));
assign_spillslots(env);