* config/xtensa-relax.c (build_transition): Remove code after as_fatal.

(build_transition_table): Likewise.
This commit is contained in:
Bob Wilson 2007-02-02 22:08:36 +00:00
parent c15f73f931
commit bc447904f7
2 changed files with 31 additions and 59 deletions

View File

@ -1,3 +1,8 @@
2007-02-02 Bob Wilson <bob.wilson@acm.org>
* config/xtensa-relax.c (build_transition): Remove code after as_fatal.
(build_transition_table): Likewise.
2007-02-01 Bob Wilson <bob.wilson@acm.org> 2007-02-01 Bob Wilson <bob.wilson@acm.org>
* config/tc-xtensa.c (xg_add_opcode_fix, md_apply_fix): Delete use of * config/tc-xtensa.c (xg_add_opcode_fix, md_apply_fix): Delete use of

View File

@ -1,5 +1,5 @@
/* Table of relaxations for Xtensa assembly. /* Table of relaxations for Xtensa assembly.
Copyright 2003, 2004, 2005 Free Software Foundation, Inc. Copyright 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler. This file is part of GAS, the GNU Assembler.
@ -1661,35 +1661,26 @@ build_transition (insn_pattern *initial_insn,
{ {
op1 = get_opmatch (&initial_insn->t.operand_map, precond->opname1); op1 = get_opmatch (&initial_insn->t.operand_map, precond->opname1);
if (op1 == NULL) if (op1 == NULL)
{ as_fatal (_("opcode '%s': no bound opname '%s' "
as_fatal (_("opcode '%s': no bound opname '%s' " "for precondition in '%s'"),
"for precondition in '%s'"), xtensa_opcode_name (isa, opcode),
xtensa_opcode_name (isa, opcode), precond->opname1, from_string);
precond->opname1, from_string);
return NULL;
}
} }
if (precond->opname2) if (precond->opname2)
{ {
op2 = get_opmatch (&initial_insn->t.operand_map, precond->opname2); op2 = get_opmatch (&initial_insn->t.operand_map, precond->opname2);
if (op2 == NULL) if (op2 == NULL)
{ as_fatal (_("opcode '%s': no bound opname '%s' "
as_fatal (_("opcode '%s': no bound opname '%s' " "for precondition in %s"),
"for precondition in %s"), xtensa_opcode_name (isa, opcode),
xtensa_opcode_name (isa, opcode), precond->opname2, from_string);
precond->opname2, from_string);
return NULL;
}
} }
if (op1 == NULL && op2 == NULL) if (op1 == NULL && op2 == NULL)
{ as_fatal (_("opcode '%s': precondition only contains "
as_fatal (_("opcode '%s': precondition only contains " "constants in '%s'"),
"constants in '%s'"), xtensa_opcode_name (isa, opcode), from_string);
xtensa_opcode_name (isa, opcode), from_string);
return NULL;
}
else if (op1 != NULL && op2 != NULL) else if (op1 != NULL && op2 != NULL)
append_value_condition (tr, precond->cmpop, append_value_condition (tr, precond->cmpop,
op1->operand_num, op2->operand_num); op1->operand_num, op2->operand_num);
@ -1806,14 +1797,9 @@ build_transition (insn_pattern *initial_insn,
orig_op = get_opmatch (&initial_insn->t.operand_map, orig_op = get_opmatch (&initial_insn->t.operand_map,
op->operand_name); op->operand_name);
if (orig_op == NULL) if (orig_op == NULL)
{ as_fatal (_("opcode %s: unidentified operand '%s' in '%s'"),
as_fatal (_("opcode %s: unidentified operand '%s' in '%s'"), opcode_name, op->operand_name, to_string);
opcode_name, op->operand_name, to_string); append_field_op (bi, op->operand_num, orig_op->operand_num);
append_constant_op (bi, op->operand_num, 0);
}
else
append_field_op (bi, op->operand_num, orig_op->operand_num);
} }
else if (parse_special_fn (op->operand_name, else if (parse_special_fn (op->operand_name,
&fn_name, &operand_arg_name)) &fn_name, &operand_arg_name))
@ -1837,30 +1823,20 @@ build_transition (insn_pattern *initial_insn,
orig_op = get_opmatch (&initial_insn->t.operand_map, orig_op = get_opmatch (&initial_insn->t.operand_map,
operand_arg_name); operand_arg_name);
if (orig_op == NULL) if (orig_op == NULL)
{ as_fatal (_("opcode %s: unidentified operand '%s' in '%s'"),
as_fatal (_("opcode %s: unidentified operand '%s' in '%s'"), opcode_name, op->operand_name, to_string);
opcode_name, op->operand_name, to_string); append_user_fn_field_op (bi, op->operand_num,
append_constant_op (bi, op->operand_num, 0); typ, orig_op->operand_num);
}
else
append_user_fn_field_op (bi, op->operand_num,
typ, orig_op->operand_num);
} }
else else
{ as_fatal (_("opcode %s: could not parse operand '%s' in '%s'"),
as_fatal (_("opcode %s: could not parse operand '%s' in '%s'"), opcode_name, op->operand_name, to_string);
opcode_name, op->operand_name, to_string);
append_constant_op (bi, op->operand_num, 0);
}
} }
} }
if (has_label && max_label_count >= label_count) if (has_label && max_label_count >= label_count)
{ as_fatal (_("opcode %s: replacement label %d >= label_count(%d)"),
as_fatal (_("opcode %s: replacement label %d >= label_count(%d)"), xtensa_opcode_name (isa, opcode),
xtensa_opcode_name (isa, opcode), max_label_count, label_count);
max_label_count, label_count);
return NULL;
}
return tr; return tr;
} }
@ -1898,20 +1874,11 @@ build_transition_table (const string_pattern_pair *transitions,
init_insn_pattern (&initial_insn); init_insn_pattern (&initial_insn);
if (!parse_insn_pattern (from_string, &initial_insn)) if (!parse_insn_pattern (from_string, &initial_insn))
{ as_fatal (_("could not parse INSN_PATTERN '%s'"), from_string);
as_fatal (_("could not parse INSN_PATTERN '%s'"), from_string);
clear_insn_pattern (&initial_insn);
continue;
}
init_insn_repl (&replace_insns); init_insn_repl (&replace_insns);
if (!parse_insn_repl (to_string, &replace_insns)) if (!parse_insn_repl (to_string, &replace_insns))
{ as_fatal (_("could not parse INSN_REPL '%s'"), to_string);
as_fatal (_("could not parse INSN_REPL '%s'"), to_string);
clear_insn_pattern (&initial_insn);
clear_insn_repl (&replace_insns);
continue;
}
if (transition_applies (&initial_insn, from_string, to_string)) if (transition_applies (&initial_insn, from_string, to_string))
{ {