diff options
author | Nick Clifton <nickc@redhat.com> | 1997-09-16 21:16:15 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 1997-09-16 21:16:15 +0000 |
commit | 752851788a0a9976575a6efffa672120d7a45353 (patch) | |
tree | 423ff2f46ff3d6c73c564f814230fc5dec9cc8f2 | |
parent | 9f6badd09db5024d18f63b38a0a97b4f8acaeff2 (diff) | |
download | gdb-752851788a0a9976575a6efffa672120d7a45353.zip gdb-752851788a0a9976575a6efffa672120d7a45353.tar.gz gdb-752851788a0a9976575a6efffa672120d7a45353.tar.bz2 |
Add support for a 16 bit relocation against the TDA register!
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-v850.c | 13 |
2 files changed, 13 insertions, 5 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 98ba42b..ee2372b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Tue Sep 16 14:18:22 1997 Nick Clifton <nickc@cygnus.com> + + * config/tc-v850.c (v850_reloc_prefix): Add support for a 16 bit + displacement from the tiny data area pointer. + Mon Sep 15 21:28:09 1997 Jeffrey A Law (law@cygnus.com) * config/tc-hppa.c (fix_new_hppa): Make declaration match diff --git a/gas/config/tc-v850.c b/gas/config/tc-v850.c index 39f1c72..333a809 100644 --- a/gas/config/tc-v850.c +++ b/gas/config/tc-v850.c @@ -1082,16 +1082,19 @@ v850_reloc_prefix (const struct v850_operand * operand) { input_line_pointer += 6; - if (operand == NULL) return BFD_RELOC_V850_TDA_7_7_OFFSET; - if (operand->bits == 6 && operand->shift == 1) return BFD_RELOC_V850_TDA_6_8_OFFSET; + if (operand == NULL) return BFD_RELOC_V850_TDA_7_7_OFFSET; + if (operand->bits == 6 && operand->shift == 1) return BFD_RELOC_V850_TDA_6_8_OFFSET; /* sld.w/sst.w, operand: D8_6 */ /* start-sanitize-v850e */ - if (operand->bits == 4 && operand->insert != NULL) return BFD_RELOC_V850_TDA_4_5_OFFSET; - if (operand->bits == 4 && operand->insert == NULL) return BFD_RELOC_V850_TDA_4_4_OFFSET; + if (operand->bits == 4 && operand->insert != NULL) return BFD_RELOC_V850_TDA_4_5_OFFSET; /* sld.hu, operand: D5-4 */ + if (operand->bits == 4 && operand->insert == NULL) return BFD_RELOC_V850_TDA_4_4_OFFSET; /* sld.bu, operand: D4 */ /* end-sanitize-v850e */ + if (operand->bits == 16 && operand->shift == 16) return BFD_RELOC_V850_TDA_16_16_OFFSET; /* set1 & chums, operands: D16 */ assert (operand->bits == 7); - return operand->insert != NULL ? BFD_RELOC_V850_TDA_7_8_OFFSET : BFD_RELOC_V850_TDA_7_7_OFFSET; + return operand->insert != NULL + ? BFD_RELOC_V850_TDA_7_8_OFFSET /* sld.h/sst.h, operand: D8_7 */ + : BFD_RELOC_V850_TDA_7_7_OFFSET; /* sld.b/sst.b, opreand: D7 */ } if (paren_skipped) |