Fix overflow detection in the Z80 assembler.
[binutils-gdb.git] / gas / config / tc-ip2k.c
index ab00b05235557a8c84afc4d5a130bd9040e0f41e..0adc672a12044fbd3af7d7b0a5089726836ec806 100644 (file)
@@ -1,5 +1,5 @@
 /* tc-ip2k.c -- Assembler for the Scenix IP2xxx.
-   Copyright (C) 2000-2019 Free Software Foundation, Inc.
+   Copyright (C) 2000-2021 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
@@ -160,6 +160,8 @@ md_begin (void)
 
   /* Set the machine type.  */
   bfd_default_set_arch_mach (stdoutput, bfd_arch_ip2k, ip2k_mach);
+
+  literal_prefix_dollar_hex = true;
 }
 
 
@@ -211,7 +213,7 @@ md_assemble (char * str)
 valueT
 md_section_align (segT segment, valueT size)
 {
-  int align = bfd_get_section_alignment (stdoutput, segment);
+  int align = bfd_section_alignment (segment);
 
   return ((size + (1 << align) - 1) & -(1 << align));
 }
@@ -313,7 +315,7 @@ md_number_to_chars (char * buf, valueT val, int n)
 const char *
 md_atof (int type, char * litP, int *  sizeP)
 {
-  return ieee_md_atof (type, litP, sizeP, TRUE);
+  return ieee_md_atof (type, litP, sizeP, true);
 }
 
 
@@ -383,7 +385,8 @@ ip2k_apply_fix (fixS *fixP, valueT *valueP, segT seg)
       CGEN_CPU_DESC cd = gas_cgen_cpu_desc;
       CGEN_INSN_INT insn_value
        = cgen_get_insn_value (cd, (unsigned char *) where,
-                              CGEN_INSN_BITSIZE (fixP->fx_cgen.insn));
+                              CGEN_INSN_BITSIZE (fixP->fx_cgen.insn),
+                              gas_cgen_cpu_desc->insn_endian);
       /* Preserve (DP) or (SP) specification.  */
       *valueP += (insn_value & 0x180);
     }