projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
beabi: no special treatment of returns_twice
[libfirm]
/
ir
/
be
/
beschednormal.c
diff --git
a/ir/be/beschednormal.c
b/ir/be/beschednormal.c
index
ffa7788
..
c9f7c95
100644
(file)
--- a/
ir/be/beschednormal.c
+++ b/
ir/be/beschednormal.c
@@
-120,7
+120,7
@@
static int count_result(const ir_node* irn)
if (mode == mode_T)
return 1;
if (mode == mode_T)
return 1;
- if (arch_get_
register_req_out
(irn)->type & arch_register_req_type_ignore)
+ if (arch_get_
irn_register_req
(irn)->type & arch_register_req_type_ignore)
return 0;
return 1;
return 0;
return 1;
@@
-198,6
+198,8
@@
static int normal_tree_cost(ir_node* irn, instance_t *inst)
mode = get_irn_mode(op);
if (mode == mode_M)
continue;
mode = get_irn_mode(op);
if (mode == mode_M)
continue;
+ if (arch_get_irn_flags(op) & arch_irn_flags_not_scheduled)
+ continue;
if (mode != mode_T && arch_irn_is_ignore(op))
continue;
cost = MAX(fc->costs[i].cost + n_op_res, cost);
if (mode != mode_T && arch_irn_is_ignore(op))
continue;
cost = MAX(fc->costs[i].cost + n_op_res, cost);