Add support for a 16 bit relocation against the TDA register!
authorNick Clifton <nickc@redhat.com>
Tue, 16 Sep 1997 21:16:15 +0000 (21:16 +0000)
committerNick Clifton <nickc@redhat.com>
Tue, 16 Sep 1997 21:16:15 +0000 (21:16 +0000)
gas/ChangeLog
gas/config/tc-v850.c

index 98ba42bfe6b03378d176bb977f27de8613b621e9..ee2372b7b4c0ec814022701313e73ec68f823858 100644 (file)
@@ -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
index 39f1c72cfcf9056d24fe06fe61ae8c4a81d48141..333a80935933748b9c2a3056aefbd9d52a225ab6 100644 (file)
@@ -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)
This page took 0.033914 seconds and 4 git commands to generate.