revert previous delta
This commit is contained in:
parent
9cac79d30b
commit
452a37f009
|
@ -1,9 +1,3 @@
|
|||
1999-10-25 Nick Clifton <nickc@cygnus.com>
|
||||
|
||||
* config/tc-mcore.c (parse_psrmod): New function: Parse the psr
|
||||
flag specifiers of a psrclr/psrset instruction.
|
||||
(md_assemble): Parse instructions of class OPSR.
|
||||
|
||||
Mon Oct 18 18:11:10 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
|
||||
|
||||
* tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
|
||||
|
|
|
@ -48,7 +48,6 @@ static char * parse_exp PARAMS ((char *, expressionS *));
|
|||
static char * parse_rt PARAMS ((char *, char **, int, expressionS *));
|
||||
static char * parse_imm PARAMS ((char *, unsigned *, unsigned, unsigned));
|
||||
static char * parse_mem PARAMS ((char *, unsigned *, unsigned *, unsigned));
|
||||
static char * parse_psrmod PARAMS ((char *, unsigned *));
|
||||
static void make_name PARAMS ((char *, char *, int));
|
||||
static int enter_literal PARAMS ((expressionS *, int));
|
||||
static void dump_literals PARAMS ((int));
|
||||
|
@ -589,46 +588,6 @@ parse_creg (s, reg)
|
|||
return s;
|
||||
}
|
||||
|
||||
static char *
|
||||
parse_psrmod (s, reg)
|
||||
char * s;
|
||||
unsigned * reg;
|
||||
{
|
||||
int i;
|
||||
char buf[10];
|
||||
static struct psrmods
|
||||
{
|
||||
char * name;
|
||||
unsigned int value;
|
||||
}
|
||||
psrmods[] =
|
||||
{
|
||||
{ "ie", 1 },
|
||||
{ "fe", 2 },
|
||||
{ "ee", 4 },
|
||||
{ "af", 8 } /* really 0 and non-combinable */
|
||||
};
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
buf[i] = isascii (s[i]) ? tolower (s[i]) : 0;
|
||||
|
||||
for (i = sizeof (psrmods) / sizeof (psrmods[0]); i--;)
|
||||
{
|
||||
if (! strncmp (psrmods[i].name, buf, 2))
|
||||
{
|
||||
* reg = psrmods[i].value;
|
||||
|
||||
return s + 2;
|
||||
}
|
||||
}
|
||||
|
||||
as_bad (_("bad/missing psr specifier"));
|
||||
|
||||
* reg = 0;
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
static char *
|
||||
parse_exp (s, e)
|
||||
char * s;
|
||||
|
@ -1635,29 +1594,6 @@ md_assemble (str)
|
|||
output = frag_more (2);
|
||||
break;
|
||||
|
||||
case OPSR:
|
||||
op_end = parse_psrmod (op_end + 1, & reg);
|
||||
|
||||
/* Look for further selectors. */
|
||||
while (* op_end == ',')
|
||||
{
|
||||
unsigned value;
|
||||
|
||||
op_end = parse_psrmod (op_end + 1, & value);
|
||||
|
||||
if (value & reg)
|
||||
as_bad (_("duplicated psr bit specifier"));
|
||||
|
||||
reg |= value;
|
||||
}
|
||||
|
||||
if (reg > 8)
|
||||
as_bad (_("`af' must appear alone"));
|
||||
|
||||
inst |= (reg & 0x7);
|
||||
output = frag_more (2);
|
||||
break;
|
||||
|
||||
default:
|
||||
as_bad (_("unimplemented opcode \"%s\""), name);
|
||||
}
|
||||
|
|
|
@ -1,11 +1,3 @@
|
|||
1999-10-25 Nick Clifton <nickc@cygnus.com>
|
||||
|
||||
* mcore-opc.h (enum mcore_opclass): Add class OPSR.
|
||||
(mcore_table): Add psrclr and psrset instructions.
|
||||
|
||||
* mcore-dis.c (array imsk): Add mask for OPSR class.
|
||||
(print_insn_mcore): Add decode for OPSR class insns.
|
||||
|
||||
1999-10-18 Michael Meissner <meissner@cygnus.com>
|
||||
|
||||
* alpha-opc.c (alpha_operands): Fill in missing initializer.
|
||||
|
|
|
@ -101,8 +101,6 @@ static const unsigned short imsk[] =
|
|||
/* OMc */ 0xFF00,
|
||||
/* SIa */ 0xFE00,
|
||||
|
||||
/* OPSR */ 0xFFF8, /* psrset/psrclr */
|
||||
|
||||
/* JC */ 0, /* JC,JU,JL don't appear in object */
|
||||
/* JU */ 0,
|
||||
/* JL */ 0,
|
||||
|
@ -283,18 +281,6 @@ print_insn_mcore (memaddr, info)
|
|||
}
|
||||
break;
|
||||
|
||||
case OPSR:
|
||||
{
|
||||
static char * fields[] =
|
||||
{
|
||||
"af", "ie", "fe", "fe,ie",
|
||||
"ee", "ee,ie", "ee,fe", "ee,fe,ie"
|
||||
};
|
||||
|
||||
fprintf (stream, "\t%s", fields[inst & 0x7]);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
/* if the disassembler lags the instruction set */
|
||||
fprintf (stream, "\tundecoded operands, inst is 0x%04x", inst);
|
||||
|
|
|
@ -23,7 +23,7 @@ typedef enum
|
|||
O0, OT, O1, OC, O2, X1, OI, OB,
|
||||
OMa, SI, I7, LS, BR, BL, LR, LJ,
|
||||
RM, RQ, JSR, JMP, OBRa, OBRb, OBRc, OBR2,
|
||||
O1R1, OMb, OMc, SIa, OPSR,
|
||||
O1R1, OMb, OMc, SIa,
|
||||
JC, JU, JL, RSI, DO21, OB2
|
||||
}
|
||||
mcore_opclass;
|
||||
|
@ -99,8 +99,6 @@ mcore_opcode_info mcore_table[] =
|
|||
{ "tst", O2, 0, 0x0E00 },
|
||||
{ "cmpne", O2, 0, 0x0F00 },
|
||||
{ "mfcr", OC, 0, 0x1000 },
|
||||
{ "psrclr", OPSR, 0, 0x11F0 },
|
||||
{ "psrset", OPSR, 0, 0x11F8 },
|
||||
{ "mov", O2, 0, 0x1200 },
|
||||
{ "bgenr", O2, 0, 0x1300 },
|
||||
{ "rsub", O2, 0, 0x1400 },
|
||||
|
|
Loading…
Reference in New Issue