X-Git-Url: http://drtracing.org/?a=blobdiff_plain;ds=sidebyside;f=gas%2Fconfig%2Ftc-d30v.c;h=88fc124377a3f410f2221dfc8f4fc769e694416b;hb=945e0f82dad31db89a107b496532886fe215c011;hp=64c46662ceb2bc51abfaf27760f9a3d25acbe0d6;hpb=69da848e6ebe8d0b4196f2b630b112fa43dc9348;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-d30v.c b/gas/config/tc-d30v.c index 64c46662ce..88fc124377 100644 --- a/gas/config/tc-d30v.c +++ b/gas/config/tc-d30v.c @@ -1,6 +1,5 @@ /* tc-d30v.c -- Assembler code for the Mitsubishi D30V - Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2008, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1997-2016 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -246,7 +245,7 @@ md_show_usage (FILE *stream) } int -md_parse_option (int c, char *arg ATTRIBUTE_UNUSED) +md_parse_option (int c, const char *arg ATTRIBUTE_UNUSED) { switch (c) { @@ -286,7 +285,7 @@ md_undefined_symbol (char *name ATTRIBUTE_UNUSED) return 0; } -char * +const char * md_atof (int type, char *litP, int *sizeP) { return ieee_md_atof (type, litP, sizeP, TRUE); @@ -304,7 +303,7 @@ valueT md_section_align (asection *seg, valueT addr) { int align = bfd_get_section_alignment (stdoutput, seg); - return ((addr + (1 << align) - 1) & (-1 << align)); + return ((addr + (1 << align) - 1) & -(1 << align)); } void @@ -1243,12 +1242,10 @@ find_format (struct d30v_opcode *opcode, /* Calculate the current address by running through the previous frags and adding our current offset. */ - value = 0; + value = frag_now_fix_octets (); for (f = frchain_now->frch_root; f; f = f->fr_next) value += f->fr_fix + f->fr_offset; - value = (S_GET_VALUE (myops[j].X_add_symbol) - value - - (obstack_next_free (&frchain_now->frch_obstack) - - frag_now->fr_literal)); + value = S_GET_VALUE (myops[j].X_add_symbol) - value; if (check_range (value, bits, flags)) match = 0; } @@ -1763,8 +1760,8 @@ arelent * tc_gen_reloc (asection *seg ATTRIBUTE_UNUSED, fixS *fixp) { arelent *reloc; - reloc = xmalloc (sizeof (arelent)); - reloc->sym_ptr_ptr = xmalloc (sizeof (asymbol *)); + reloc = XNEW (arelent); + reloc->sym_ptr_ptr = XNEW (asymbol *); *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); reloc->address = fixp->fx_frag->fr_address + fixp->fx_where; reloc->howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type); @@ -1843,7 +1840,7 @@ d30v_start_line (void) } static void -check_size (long value, int bits, char *file, int line) +check_size (long value, int bits, const char *file, int line) { int tmp, max; @@ -1885,7 +1882,8 @@ d30v_cons_align (int size) int log_size; /* Don't specially align anything in debug sections. */ - if ((now_seg->flags & SEC_ALLOC) == 0) + if ((now_seg->flags & SEC_ALLOC) == 0 + || strcmp (now_seg->name, ".eh_frame") == 0) return; log_size = 0;