Slightly reduce code duplication.
[libfirm] / ir / be / beverify.c
index 27913cd..4666220 100644 (file)
@@ -762,9 +762,9 @@ static void check_register_constraints(ir_node *node)
                        ir_node               *pred     = get_Phi_pred(node, i);
                        const arch_register_t *pred_reg = arch_get_irn_register(arch_env, pred);
 
-                       if (reg != pred_reg) {
-                               ir_fprintf(stderr, "Verify warning: Register %s as input %d of %+F not allowed (register constraint) in block %+F(%s)\n",
-                                  reg->name, i, node, get_nodes_block(node), get_irg_dump_name(irg));
+                       if (reg != pred_reg && !arch_register_type_is(pred_reg, joker)) {
+                               ir_fprintf(stderr, "Verify warning: Input %d of %+F in block %+F(%s) uses register %s instead of %s\n",
+                                          i, node, get_nodes_block(node), get_irg_dump_name(irg), pred_reg->name, reg->name);
                                problem_found = 1;
                        }
                }