Fri Oct 10 11:22:45 1997 Martin M. Hunt <hunt@cygnus.com>
* config/tc-d10v.c: Fixes to make sure the AT_WORD expression is not confused with -1.
This commit is contained in:
parent
528859ea3f
commit
b83565def8
2 changed files with 10 additions and 3 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Fri Oct 10 11:22:45 1997 Martin M. Hunt <hunt@cygnus.com>
|
||||||
|
|
||||||
|
* config/tc-d10v.c: Fixes to make sure the AT_WORD
|
||||||
|
expression is not confused with -1.
|
||||||
|
|
||||||
Fri Oct 10 11:54:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
|
Fri Oct 10 11:54:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
|
||||||
|
|
||||||
* config/tc-d10v.c (parallel_ok): Flag SP as modified for @-sp
|
* config/tc-d10v.c (parallel_ok): Flag SP as modified for @-sp
|
||||||
|
|
|
@ -433,8 +433,8 @@ get_operands (exp)
|
||||||
/* then it was really a symbol, so change it to one */
|
/* then it was really a symbol, so change it to one */
|
||||||
exp[numops].X_op = O_symbol;
|
exp[numops].X_op = O_symbol;
|
||||||
exp[numops].X_add_symbol = symbol_find_or_make ((char *)exp[numops].X_op_symbol);
|
exp[numops].X_add_symbol = symbol_find_or_make ((char *)exp[numops].X_op_symbol);
|
||||||
exp[numops].X_op_symbol = NULL;
|
|
||||||
}
|
}
|
||||||
|
exp[numops].X_op_symbol = (struct symbol *)-1;
|
||||||
exp[numops].X_add_number = AT_WORD;
|
exp[numops].X_add_number = AT_WORD;
|
||||||
input_line_pointer += 5;
|
input_line_pointer += 5;
|
||||||
}
|
}
|
||||||
|
@ -533,7 +533,8 @@ build_insn (opcode, opers, insn)
|
||||||
if (fixups->fc >= MAX_INSN_FIXUPS)
|
if (fixups->fc >= MAX_INSN_FIXUPS)
|
||||||
as_fatal ("too many fixups");
|
as_fatal ("too many fixups");
|
||||||
|
|
||||||
if (opers[i].X_op == O_symbol && number == AT_WORD)
|
if (opers[i].X_op == O_symbol && number == AT_WORD &&
|
||||||
|
opers[i].X_op_symbol == (struct symbol *)-1 )
|
||||||
{
|
{
|
||||||
number = opers[i].X_add_number = 0;
|
number = opers[i].X_add_number = 0;
|
||||||
fixups->fix[fixups->fc].reloc = BFD_RELOC_D10V_18;
|
fixups->fix[fixups->fc].reloc = BFD_RELOC_D10V_18;
|
||||||
|
@ -1120,7 +1121,8 @@ find_opcode (opcode, myops)
|
||||||
else
|
else
|
||||||
value = S_GET_VALUE(myops[opnum].X_add_symbol);
|
value = S_GET_VALUE(myops[opnum].X_add_symbol);
|
||||||
|
|
||||||
if (myops[opnum].X_add_number == AT_WORD)
|
if (myops[opnum].X_add_number == AT_WORD &&
|
||||||
|
myops[opnum].X_op_symbol == (struct symbol *)-1)
|
||||||
{
|
{
|
||||||
if (bits > 4)
|
if (bits > 4)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue