X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gas%2Fconfig%2Ftc-xstormy16.c;h=c2bab0d9657788c1157a61ef94e3463f66ae734d;hb=a65b5de624a20f37f0fed484d6208d014f10a6f8;hp=2ea849082129a36334a414e8171e2bf3f4a79009;hpb=6f2750feaf2827ef8a1a0a5b2f90c1e9a6cabbd1;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-xstormy16.c b/gas/config/tc-xstormy16.c index 2ea8490821..c2bab0d965 100644 --- a/gas/config/tc-xstormy16.c +++ b/gas/config/tc-xstormy16.c @@ -1,5 +1,5 @@ /* tc-xstormy16.c -- Assembler for the Sanyo XSTORMY16. - Copyright (C) 2000-2016 Free Software Foundation, Inc. + Copyright (C) 2000-2020 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -66,7 +66,7 @@ size_t md_longopts_size = sizeof (md_longopts); int md_parse_option (int c ATTRIBUTE_UNUSED, - char * arg ATTRIBUTE_UNUSED) + const char * arg ATTRIBUTE_UNUSED) { return 0; } @@ -277,7 +277,7 @@ xstormy16_cgen_record_fixup_exp (fragS * frag, 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)); } @@ -382,6 +382,7 @@ md_cgen_lookup_reloc (const CGEN_INSN * insn ATTRIBUTE_UNUSED, case XSTORMY16_OPERAND_REL8_4: fixP->fx_addnumber -= 2; + /* Fall through. */ case XSTORMY16_OPERAND_REL8_2: fixP->fx_addnumber -= 2; fixP->fx_pcrel = 1; @@ -389,7 +390,7 @@ md_cgen_lookup_reloc (const CGEN_INSN * insn ATTRIBUTE_UNUSED, case XSTORMY16_OPERAND_REL12: fixP->fx_where += 2; - /* Fall through... */ + /* Fall through. */ case XSTORMY16_OPERAND_REL12A: fixP->fx_addnumber -= 2; fixP->fx_pcrel = 1; @@ -486,13 +487,14 @@ xstormy16_md_apply_fix (fixS * fixP, const CGEN_OPERAND *operand = cgen_operand_lookup_by_num (cd, opindex); const char *errmsg; bfd_reloc_code_real_type reloc_type; - CGEN_FIELDS *fields = alloca (CGEN_CPU_SIZEOF_FIELDS (cd)); const CGEN_INSN *insn = fixP->fx_cgen.insn; /* If the reloc has been fully resolved finish the operand here. */ /* FIXME: This duplicates the capabilities of code in BFD. */ if (fixP->fx_done) { + CGEN_FIELDS *fields = xmalloc (CGEN_CPU_SIZEOF_FIELDS (cd)); + CGEN_CPU_SET_FIELDS_BITSIZE (cd) (fields, CGEN_INSN_BITSIZE (insn)); CGEN_CPU_SET_VMA_OPERAND (cd) (cd, opindex, fields, (bfd_vma) value); @@ -516,6 +518,8 @@ xstormy16_md_apply_fix (fixS * fixP, #endif if (errmsg) as_bad_where (fixP->fx_file, fixP->fx_line, "%s", errmsg); + + free (fields); } if (fixP->fx_done) @@ -593,7 +597,7 @@ md_number_to_chars (char * buf, valueT val, int n) number_to_chars_littleendian (buf, val, n); } -char * +const char * md_atof (int type, char * litP, int * sizeP) { return ieee_md_atof (type, litP, sizeP, FALSE);