* config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
'B' operand for PA2.0 bb instruction.
This commit is contained in:
parent
50e05050cd
commit
afbf211f5a
|
@ -1,3 +1,8 @@
|
||||||
|
Wed Nov 24 20:27:58 1999 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
|
* config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
|
||||||
|
'B' operand for PA2.0 bb instruction.
|
||||||
|
|
||||||
1999-11-18 Nick Clifton <nickc@cygnus.com>
|
1999-11-18 Nick Clifton <nickc@cygnus.com>
|
||||||
|
|
||||||
* config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
|
* config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
|
||||||
|
|
|
@ -2794,6 +2794,30 @@ pa_ip (str)
|
||||||
flag = 1;
|
flag = 1;
|
||||||
s += 3;
|
s += 3;
|
||||||
}
|
}
|
||||||
|
else if (strncasecmp (s, "swz", 3) == 0)
|
||||||
|
{
|
||||||
|
cmpltr = 1;
|
||||||
|
flag = 0;
|
||||||
|
s += 3;
|
||||||
|
}
|
||||||
|
else if (strncasecmp (s, "swc", 3) == 0)
|
||||||
|
{
|
||||||
|
cmpltr = 5;
|
||||||
|
flag = 0;
|
||||||
|
s += 3;
|
||||||
|
}
|
||||||
|
else if (strncasecmp (s, "nwz", 3) == 0)
|
||||||
|
{
|
||||||
|
cmpltr = 1;
|
||||||
|
flag = 1;
|
||||||
|
s += 3;
|
||||||
|
}
|
||||||
|
else if (strncasecmp (s, "nwc", 3) == 0)
|
||||||
|
{
|
||||||
|
cmpltr = 5;
|
||||||
|
flag = 1;
|
||||||
|
s += 3;
|
||||||
|
}
|
||||||
/* ",*" is a valid condition. */
|
/* ",*" is a valid condition. */
|
||||||
else if (*args != 'U')
|
else if (*args != 'U')
|
||||||
as_bad (_("Invalid Unit Instruction Condition."));
|
as_bad (_("Invalid Unit Instruction Condition."));
|
||||||
|
@ -3307,6 +3331,20 @@ pa_ip (str)
|
||||||
opcode |= (num & 0x20) << 6;
|
opcode |= (num & 0x20) << 6;
|
||||||
INSERT_FIELD_AND_CONTINUE (opcode, num & 0x1f, 5);
|
INSERT_FIELD_AND_CONTINUE (opcode, num & 0x1f, 5);
|
||||||
|
|
||||||
|
/* Handle a 5 bit immediate at 10 with 'd' as the complement
|
||||||
|
of the high bit of the immediate. */
|
||||||
|
case 'B':
|
||||||
|
num = pa_get_absolute_expression (&the_insn, &s);
|
||||||
|
if (strict && the_insn.exp.X_op != O_constant)
|
||||||
|
break;
|
||||||
|
s = expr_end;
|
||||||
|
CHECK_FIELD (num, 63, 0, strict);
|
||||||
|
if (num & 0x20)
|
||||||
|
;
|
||||||
|
else
|
||||||
|
opcode |= (1 << 13);
|
||||||
|
INSERT_FIELD_AND_CONTINUE (opcode, num & 0x1f, 21);
|
||||||
|
|
||||||
/* Handle a 5 bit immediate at 10. */
|
/* Handle a 5 bit immediate at 10. */
|
||||||
case 'Q':
|
case 'Q':
|
||||||
num = pa_get_absolute_expression (&the_insn, &s);
|
num = pa_get_absolute_expression (&the_insn, &s);
|
||||||
|
|
Loading…
Reference in New Issue