projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
changed handle_proj callback
[libfirm]
/
ir
/
be
/
beconstrperm.c
diff --git
a/ir/be/beconstrperm.c
b/ir/be/beconstrperm.c
index
eeab5b1
..
52ac06b
100644
(file)
--- a/
ir/be/beconstrperm.c
+++ b/
ir/be/beconstrperm.c
@@
-31,7
+31,9
@@
static void check_constraints(const be_chordal_env_t *cenv, ir_node *base, ir_no
for(pos = -1, n = get_irn_arity(irn); pos < n; ++pos) {
arch_get_register_req(aenv, &req, irn, pos);
for(pos = -1, n = get_irn_arity(irn); pos < n; ++pos) {
arch_get_register_req(aenv, &req, irn, pos);
- if(arch_irn_has_reg_class(aenv, irn, pos, cenv->cls) && arch_register_req_is(&req, limited)) {
+ if(arch_irn_has_reg_class(aenv, irn, pos, cenv->cls)
+ && arch_register_req_is(&req, limited)
+ && !arch_irn_is_ignore(aenv, irn)) {
/*
* If we inserted a perm,
/*
* If we inserted a perm,
@@
-43,7
+45,7
@@
static void check_constraints(const be_chordal_env_t *cenv, ir_node *base, ir_no
* would help.
*/
if(*perm == NULL) {
* would help.
*/
if(*perm == NULL) {
- *perm = insert_Perm_after(
m
env, cenv->cls, cenv->dom_front, sched_prev(base));
+ *perm = insert_Perm_after(
a
env, cenv->cls, cenv->dom_front, sched_prev(base));
be_liveness(cenv->irg);
}
be_liveness(cenv->irg);
}