diff options
author | Nick Clifton <nickc@redhat.com> | 1998-06-11 22:58:05 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 1998-06-11 22:58:05 +0000 |
commit | d32f7037b2fd00f8f65364607805c23270039d36 (patch) | |
tree | fabbe3ed8acd7fbaa1b284b752352cd577cd66bf /gas/config | |
parent | bee3033d5abca9d8ea219c08303e03c0d4de18a9 (diff) | |
download | gdb-d32f7037b2fd00f8f65364607805c23270039d36.zip gdb-d32f7037b2fd00f8f65364607805c23270039d36.tar.gz gdb-d32f7037b2fd00f8f65364607805c23270039d36.tar.bz2 |
Fix for PR11938 - display suitable error messages for bogus .byte, .short and .quad directives.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-d30v.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gas/config/tc-d30v.c b/gas/config/tc-d30v.c index dbf657b..46e5eb9 100644 --- a/gas/config/tc-d30v.c +++ b/gas/config/tc-d30v.c @@ -1628,6 +1628,24 @@ md_apply_fix3 (fixp, valuep, seg) switch (fixp->fx_r_type) { + case BFD_RELOC_8: + /* Caused by a bad .byte directive. */ + as_fatal (_("line %d: unable to place address of symbol '%s' into a byte"), + fixp->fx_line, S_GET_NAME (fixp->fx_addsy)); + break; + + case BFD_RELOC_16: + /* Caused by a bad .short directive. */ + as_fatal (_("line %d: unable to place address of symbol '%s' into a short"), + fixp->fx_line, S_GET_NAME (fixp->fx_addsy)); + break; + + case BFD_RELOC_64: + /* Caused by a bad .quad directive. */ + as_fatal (_("line %d: unable to place address of symbol '%s' into a .quad"), + fixp->fx_line, S_GET_NAME (fixp->fx_addsy)); + break; + case BFD_RELOC_D30V_6: check_size (value, 6, fixp->fx_file, fixp->fx_line); insn |= value & 0x3F; |