Prevent the V850 assembler from generating an internal error if it is asked to
authorNick Clifton <nickc@redhat.com>
Sat, 17 May 2014 16:45:18 +0000 (17:45 +0100)
committerNick Clifton <nickc@redhat.com>
Sat, 17 May 2014 16:48:44 +0000 (17:48 +0100)
handle a ctoff() pseudo-op when running in RH850 ABI mode.

PR gas/16946
* config/tc-v850.c (handle_ctoff): Generate an error if called
when using the RH850 ABI.

gas/ChangeLog
gas/config/tc-v850.c

index fa1d46b50e034f484c59bb892ddf7fc7bfa83cf1..5db5e377ce80375f468d8c0d0e457e6539e9cb05 100644 (file)
@@ -1,3 +1,9 @@
+2014-05-17  Nick Clifton  <nickc@redhat.com>
+
+       PR gas/16946
+       * config/tc-v850.c (handle_ctoff): Generate an error if called
+       when using the RH850 ABI.
+
 2014-05-16  Kaushik Phata  <Kaushik.Phatak@kpit.com>
 
        * config/tc-rl78.c (enum options): Add OPTION_32BIT_DOUBLES
index d5b9d7ab26487e28684f355ae1a511ccd444c23a..91acec4e69b0b451bcc5c5c55046306d14084900 100644 (file)
@@ -2029,6 +2029,12 @@ handle_lo16 (const struct v850_operand *operand, const char **errmsg)
 static bfd_reloc_code_real_type
 handle_ctoff (const struct v850_operand *operand, const char **errmsg)
 {
+  if (v850_target_arch == bfd_arch_v850_rh850)
+    {
+      *errmsg = _("ctoff() is not supported by the rh850 ABI. Use -mgcc-abi instead");
+      return BFD_RELOC_64;  /* Used to indicate an error condition.  */
+    }
+
   if (operand == NULL)
     return BFD_RELOC_V850_CALLT_16_16_OFFSET;