Silence a warning that is incorrect on ARMv6 and later. In the smull, umull,

smlal, and umlal the output registers are allowed to be the same as either
input registers, where in ARMv4 and ARMv5 they could only be the same as the
last input register.
This commit is contained in:
Andrew Turner 2013-08-17 14:36:32 +00:00
parent 9a57f6e88c
commit fbc66a3be6
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=254449

View File

@ -7218,10 +7218,11 @@ do_mull (void)
inst.instruction |= inst.operands[2].reg;
inst.instruction |= inst.operands[3].reg << 8;
/* rdhi, rdlo and rm must all be different. */
/* rdhi, rdlo and rm must all be different prior to ARMv6. */
if (inst.operands[0].reg == inst.operands[1].reg
|| inst.operands[0].reg == inst.operands[2].reg
|| ((inst.operands[0].reg == inst.operands[2].reg
|| inst.operands[1].reg == inst.operands[2].reg)
&& !ARM_CPU_HAS_FEATURE (selected_cpu, arm_ext_v6)))
as_tsktsk (_("rdhi, rdlo and rm must all be different"));
}