X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbechordal.c;h=ad085aba6cab598c461b57ec2cf1fc2518d521bb;hb=b9d45e08e23bcf058fa8f2d9e18dd78e8cccd044;hp=bd368226f43f73e1ce3ba39c2e15ed31e9cce9f7;hpb=19896ffc059be44de0efd9e88257b7a8e6b07b66;p=libfirm diff --git a/ir/be/bechordal.c b/ir/be/bechordal.c index bd368226f..ad085aba6 100644 --- a/ir/be/bechordal.c +++ b/ir/be/bechordal.c @@ -49,6 +49,7 @@ #include "beirgmod.h" #include "beifg.h" #include "beinsn_t.h" +#include "bestatevent.h" #include "bechordal_t.h" #include "bechordal_draw.h" @@ -424,6 +425,7 @@ static ir_node *pre_process_constraints(be_chordal_alloc_env_t *alloc_env, be_in if(perm) { const ir_edge_t *edge; + be_stat_ev("constr_perm", get_irn_arity(perm)); foreach_out_edge(perm, edge) { ir_node *proj = get_edge_src_irn(edge); arch_set_irn_register(aenv, proj, NULL); @@ -563,6 +565,7 @@ static ir_node *handle_constraints(be_chordal_alloc_env_t *alloc_env, ir_node *i bitset_clear_all(bs); arch_put_non_ignore_regs(aenv, env->cls, bs); + bitset_andnot(bs, env->ignore_colors); bitset_foreach(bs, col) bipartite_add(bp, n_alloc, col);