diff options
author | Martin Hunt <hunt@redhat.com> | 1997-10-10 18:22:59 +0000 |
---|---|---|
committer | Martin Hunt <hunt@redhat.com> | 1997-10-10 18:22:59 +0000 |
commit | b83565def8ba85bbac0b946b14fe0219602da410 (patch) | |
tree | 7c205d14468d29f4dfc807ad6d881def78a24c33 /gas | |
parent | 528859ea3ff07258da18c611ba58afb98335e06d (diff) | |
download | gdb-b83565def8ba85bbac0b946b14fe0219602da410.zip gdb-b83565def8ba85bbac0b946b14fe0219602da410.tar.gz gdb-b83565def8ba85bbac0b946b14fe0219602da410.tar.bz2 |
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.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-d10v.c | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index bd6d766..fce464c 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -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> * config/tc-d10v.c (parallel_ok): Flag SP as modified for @-sp diff --git a/gas/config/tc-d10v.c b/gas/config/tc-d10v.c index bc20d32..ec47194 100644 --- a/gas/config/tc-d10v.c +++ b/gas/config/tc-d10v.c @@ -433,8 +433,8 @@ get_operands (exp) /* then it was really a symbol, so change it to one */ exp[numops].X_op = O_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; input_line_pointer += 5; } @@ -533,7 +533,8 @@ build_insn (opcode, opers, insn) if (fixups->fc >= MAX_INSN_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; fixups->fix[fixups->fc].reloc = BFD_RELOC_D10V_18; @@ -1120,7 +1121,8 @@ find_opcode (opcode, myops) else 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) { |