* @date 14.04.2006
* @version $Id$
*/
-#ifdef HAVE_CONFIG_H
#include "config.h"
-#endif
#include "lc_opts.h"
#include "lc_opts_enum.h"
memset(ci, 0, size);
INIT_LIST_HEAD(&ci->changed_list);
ci->touched_next = env->touched;
- ci->orig_col = get_irn_col(env->co, irn);
+ ci->orig_col = get_irn_col(irn);
env->touched = ci;
ci->irn = irn;
ci->aff = a;
if(ci->adm_cache == NULL) {
const arch_register_req_t *req;
ci->adm_cache = bitset_obstack_alloc(phase_obst(&env->ph), env->n_regs);
- req = arch_get_register_req(env->co->aenv, ci->irn, BE_OUT_POS(0));
+ req = arch_get_register_req(ci->irn, BE_OUT_POS(0));
if(arch_register_req_is(req, limited)) {
int i, n;
{
const arch_register_req_t *req;
- req = arch_get_register_req(env->co->aenv, irn, BE_OUT_POS(0));
+ req = arch_get_register_req(irn, BE_OUT_POS(0));
if (arch_register_req_is(req, limited)) {
unsigned n_regs = env->co->cls->n_regs;
co2_t *env = cloud->env;
int n_regs = env->n_regs;
int n_edges = 0;
- int *mst_edges = xmalloc(cloud->n_memb * cloud->n_memb * sizeof(mst_edges[0]));
+ int *mst_edges = XMALLOCNZ(int, cloud->n_memb * cloud->n_memb);
pdeq *q;
edge_t *edges;
int i;
int best_col;
- memset(mst_edges, 0, cloud->n_memb * cloud->n_memb * sizeof(mst_edges[0]));
-
/* Collect all edges in the cloud on an obstack and sort the increasingly */
obstack_init(&cloud->obst);
for(i = 0; i < cloud->n_memb; ++i) {
}
i = 0;
- clouds = xmalloc(n_clouds * sizeof(clouds[0]));
+ clouds = XMALLOCN(co2_cloud_t*, n_clouds);
list_for_each_entry(co2_cloud_t, pos, &env->cloud_head, list)
clouds[i++] = pos;
qsort(clouds, n_clouds, sizeof(clouds[0]), cmp_clouds_gt);
static void writeback_colors(co2_t *env)
{
- const arch_env_t *aenv = env->co->aenv;
co2_irn_t *irn;
for(irn = env->touched; irn; irn = irn->touched_next) {
const arch_register_t *reg = arch_register_for_index(env->co->cls, irn->orig_col);
- arch_set_irn_register(aenv, (ir_node *) irn->irn, reg);
+ arch_set_irn_register((ir_node*)irn->irn, reg);
}
}
return col < (sizeof(names)/sizeof(names[0])) ? names[col] : "white";
}
-static const char *get_dot_shape_name(co2_t *env, co2_irn_t *ci)
+static const char *get_dot_shape_name(co2_irn_t *ci)
{
const arch_register_req_t *req;
- req = arch_get_register_req(env->co->aenv, ci->irn, BE_OUT_POS(0));
+ req = arch_get_register_req(ci->irn, BE_OUT_POS(0));
if(arch_register_req_is(req, limited))
return "diamond";
static int ifg_is_dump_node(void *self, ir_node *irn)
{
- co2_t *env = self;
- return !arch_irn_is(env->co->aenv, irn, ignore);
+ (void)self;
+ return !arch_irn_is(irn, ignore);
}
static void ifg_dump_node_attr(FILE *f, void *self, ir_node *irn)
}
ir_fprintf(f, "label=\"%+F%s\" style=filled peripheries=%d color=%s shape=%s", irn, buf, peri,
- get_dot_color_name(get_col(env, irn)), get_dot_shape_name(env, ci));
+ get_dot_color_name(get_col(env, irn)), get_dot_shape_name(ci));
}
static void ifg_dump_at_end(FILE *file, void *self)