#include "irgwalk.h"
#include "becopyilp_t.h"
#include "beifg_t.h"
-#include "besched_t.h"
+#include "besched.h"
#define DEBUG_LVL 1
}
}
-static void build_interference_cstr(ilp_env_t *ienv) {
- lpp_t *lpp = ienv->lp;
- local_env_t *lenv = ienv->env;
- be_ifg_t *ifg = ienv->co->cenv->ifg;
- int n_colors = lenv->n_colors;
- int i, col;
-
- void *iter = be_ifg_cliques_iter_alloca(ifg);
- ir_node **clique = alloca(sizeof(*clique) * n_colors);
- int size;
+static void build_interference_cstr(ilp_env_t *ienv)
+{
+ lpp_t *lpp = ienv->lp;
+ local_env_t *lenv = ienv->env;
+ be_ifg_t *ifg = ienv->co->cenv->ifg;
+ int n_colors = lenv->n_colors;
+ void *iter = be_ifg_cliques_iter_alloca(ifg);
+ ir_node **clique = ALLOCAN(ir_node*, n_colors);
+ int size;
+ int col;
+ int i;
char buf[16];
set *edges;
int i, o, n_nodes, n_edges;
- if (arch_irn_is(aff->irn, ignore))
+ if (arch_irn_is_ignore(aff->irn))
continue;
obstack_init(&ob);
/* get all affinity neighbours */
n_nodes = 0;
co_gs_foreach_neighb(aff, nbr) {
- if (!arch_irn_is(nbr->irn, ignore)) {
+ if (!arch_irn_is_ignore(nbr->irn)) {
obstack_ptr_grow(&ob, nbr->irn);
++n_nodes;
}
if (pdeq_contains(path, irn))
return;
- if (arch_irn_is(irn, ignore))
+ if (arch_irn_is_ignore(irn))
return;
/* insert the new irn */
/* check for forbidden interferences */
- len = pdeq_len(path);
- curr_path = alloca(len * sizeof(*curr_path));
+ len = pdeq_len(path);
+ curr_path = ALLOCAN(ir_node*, len);
pdeq_copyl(path, (const void **)curr_path);
for (i=1; i<len; ++i)