- /* mode_T nodes define several values at once. Count them */
- if(get_irn_mode(node) == mode_T) {
- const ir_edge_t *edge;
-
- foreach_out_edge(node, edge) {
- const ir_node *proj = get_edge_src_irn(edge);
-
- if(arch_irn_consider_in_reg_alloc(arch_env, cls, proj)) {
- ++values_defined;
- }
- }
- } else if(arch_irn_consider_in_reg_alloc(arch_env, cls, node)) {
- ++values_defined;
- }
+ be_foreach_definition(node, cls, value,
+ assert(req_->width >= 1);
+ values_defined += req_->width;
+ );