* config/tc-hppa.c (pa_ip): Promote architecture from PA 1.0 to 1.1

only if an instruction match is found.
This commit is contained in:
Dave Anglin 2005-05-22 01:40:28 +00:00
parent 8eb60b5cd8
commit 9f45e54b87
2 changed files with 17 additions and 14 deletions

View file

@ -1,3 +1,8 @@
2005-05-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* config/tc-hppa.c (pa_ip): Promote architecture from PA 1.0 to 1.1
only if an instruction match is found.
2005-05-20 Bob Wilson <bob.wilson@acm.org>
* config/tc-xtensa.c (xg_assemble_vliw_tokens): Change subtraction

View file

@ -1641,21 +1641,9 @@ pa_ip (str)
the_insn.reloc = R_HPPA_NONE;
/* If this instruction is specific to a particular architecture,
then set a new architecture. */
/* But do not automatically promote to pa2.0. The automatic promotion
crud is for compatibility with HP's old assemblers only. */
if (insn->arch < 20
if (insn->arch >= 20
&& bfd_get_mach (stdoutput) < insn->arch)
{
if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, insn->arch))
as_warn (_("could not update architecture and machine"));
}
else if (bfd_get_mach (stdoutput) < insn->arch)
{
match = FALSE;
goto failed;
}
goto failed;
/* Build the opcode, checking as we go to make
sure that the operands match. */
@ -3962,6 +3950,16 @@ pa_ip (str)
break;
}
/* If this instruction is specific to a particular architecture,
then set a new architecture. This automatic promotion crud is
for compatibility with HP's old assemblers only. */
if (match == TRUE
&& bfd_get_mach (stdoutput) < insn->arch)
{
if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, insn->arch))
as_warn (_("could not update architecture and machine"));
}
failed:
/* Check if the args matched. */
if (!match)