* config/obj-evax.h (S_SET_OTHER, S_SET_TYPE, S_SET_DESC): Don't define.

* config/tc-crx.c (gettrap): Constify arg.
	(handle_LoadStor, get_cinv_parameters): Likewise.
	(getreg_image): Fix enum warning
	(md_assemble): Restore input line char.
	* config/tc-hppa.c (tc_gen_reloc): Fix enum warning.
	* config/tc-i960.c (mem_fmt): Rename var to fix shadow warning.
	* config/tc-sh.c (sh_fdpic): Only define when OBJ_ELF.
	(build_Mytes): Fix build failure for non-elf targets.
	* config/tc-tic4x.c (tic4x_eval): Restore terminator char.
	* config/tc-xtensa.c (xtensa_end_directive): Fix switch enum warning.

	* cgen.c (gas_cgen_md_apply_fix): Avoid set but unused warning.
	* ecoff.c (add_ecoff_symbol): Likewise.
	* itbl-ops.c (append_insns_as_macros): Likewise.
	* listing.c (debugging_pseudo): Likewise.
	* read.c (s_mri_common, stringer): Likewise.
	* config/obj-coff.c (coff_frob_section): Likewise.
	* config/tc-alpha.c (emit_ldgp, s_alpha_proc): Likewise.
	* config/tc-arm.c (my_get_expression): Likewise.
	* config/tc-hppa.c (process_exit, pa_type_args): Likewise.
	* config/tc-m32c.c (md_assemble): Likewise.
	* config/tc-microblaze.c (md_convert_frag): Likewise.
	* config/tc-mips.c (s_change_section): Likewise.
	* config/tc-mt.c (mt_fix_adjustable): Likewise.
	* config/tc-xtensa.c (xtensa_literal_pseudo): Likewise.

	* config/obj-aout.c (obj_aout_frob_symbol): Delete set but otherwise
	unused vars.
	* config/tc-alpha.c (load_expression): Likewise.
	(s_alpha_rdata, s_alpha_section, s_alpha_prologue): Likewise.
	* config/tc-arm.c (parse_neon_el_struct_list): Likewise.
	* config/tc-avr.c (extract_word): Likewise.
	* config/tc-cris.c (cris_get_expression): Likewise.
	* config/tc-d30v.c (build_insn, find_format): Likewise.
	* config/tc-dlx.c (machine_ip): Likewise.
	* config/tc-hppa.c (pa_get_absolute_expression): Likewise.
	* config/tc-i370.c (md_assemble): Likewise.
	* config/tc-i960.c (brtab_emit): Likewise.
	* config/tc-iq2000.c (s_iq2000_ent): Likewise.
	* config/tc-m32c.c (md_convert_frag): Likewise.
	* config/tc-m68hc11.c (fixup24, build_jump_insn): Likewise.
	(md_estimate_size_before_relax, md_apply_fix): Likewise.
	* config/tc-m68k.c (md_show_usage): Likewise.
	* config/tc-microblaze.c (microblaze_s_lcomm): Likewise.
	* config/tc-mips.c (s_mips_end): Likewise.
	* config/tc-mmix.c (mmix_byte, mmix_cons): Likewise.
	* config/tc-mn10300.c (md_assemble): Likewise.
	* config/tc-msp430.c (extract_word): Likewise.
	* config/tc-mt.c (md_assemble): Likewise.
	* config/tc-or32.c (machine_ip): Likewise.
	* config/tc-pj.c (md_apply_fix): Likewise.
	* config/tc-s390.c (md_gather_operands): Likewise.
	* config/tc-sh.c (sh_cons_align): Likewise.
	* config/tc-sparc.c (sparc_cons_align): Likewise.
	* config/tc-tic4x.c (tic4x_sect): Likewise.
	* config/tc-tic54x.c (tic54x_stringer): Likewise.
	* config/tc-vax.c (vip_op): Likewise.
	* config/tc-xstormy16.c (xstormy16_cons_fix_new): Likewise.
	* config/tc-xtensa.c (md_assemble): Likewise.
	(xtensa_fix_short_loop_frags, convert_frag_immed): Likewise.
	(xtensa_move_literals): Likewise.
This commit is contained in:
Alan Modra 2010-06-28 14:06:57 +00:00
parent 8e56076649
commit 87975d2a60
39 changed files with 231 additions and 254 deletions

View File

@ -1,3 +1,68 @@
2010-06-28 Alan Modra <amodra@gmail.com>
* config/obj-evax.h (S_SET_OTHER, S_SET_TYPE, S_SET_DESC): Don't define.
* config/tc-crx.c (gettrap): Constify arg.
(handle_LoadStor, get_cinv_parameters): Likewise.
(getreg_image): Fix enum warning
(md_assemble): Restore input line char.
* config/tc-hppa.c (tc_gen_reloc): Fix enum warning.
* config/tc-i960.c (mem_fmt): Rename var to fix shadow warning.
* config/tc-sh.c (sh_fdpic): Only define when OBJ_ELF.
(build_Mytes): Fix build failure for non-elf targets.
* config/tc-tic4x.c (tic4x_eval): Restore terminator char.
* config/tc-xtensa.c (xtensa_end_directive): Fix switch enum warning.
* cgen.c (gas_cgen_md_apply_fix): Avoid set but unused warning.
* ecoff.c (add_ecoff_symbol): Likewise.
* itbl-ops.c (append_insns_as_macros): Likewise.
* listing.c (debugging_pseudo): Likewise.
* read.c (s_mri_common, stringer): Likewise.
* config/obj-coff.c (coff_frob_section): Likewise.
* config/tc-alpha.c (emit_ldgp, s_alpha_proc): Likewise.
* config/tc-arm.c (my_get_expression): Likewise.
* config/tc-hppa.c (process_exit, pa_type_args): Likewise.
* config/tc-m32c.c (md_assemble): Likewise.
* config/tc-microblaze.c (md_convert_frag): Likewise.
* config/tc-mips.c (s_change_section): Likewise.
* config/tc-mt.c (mt_fix_adjustable): Likewise.
* config/tc-xtensa.c (xtensa_literal_pseudo): Likewise.
* config/obj-aout.c (obj_aout_frob_symbol): Delete set but otherwise
unused vars.
* config/tc-alpha.c (load_expression): Likewise.
(s_alpha_rdata, s_alpha_section, s_alpha_prologue): Likewise.
* config/tc-arm.c (parse_neon_el_struct_list): Likewise.
* config/tc-avr.c (extract_word): Likewise.
* config/tc-cris.c (cris_get_expression): Likewise.
* config/tc-d30v.c (build_insn, find_format): Likewise.
* config/tc-dlx.c (machine_ip): Likewise.
* config/tc-hppa.c (pa_get_absolute_expression): Likewise.
* config/tc-i370.c (md_assemble): Likewise.
* config/tc-i960.c (brtab_emit): Likewise.
* config/tc-iq2000.c (s_iq2000_ent): Likewise.
* config/tc-m32c.c (md_convert_frag): Likewise.
* config/tc-m68hc11.c (fixup24, build_jump_insn): Likewise.
(md_estimate_size_before_relax, md_apply_fix): Likewise.
* config/tc-m68k.c (md_show_usage): Likewise.
* config/tc-microblaze.c (microblaze_s_lcomm): Likewise.
* config/tc-mips.c (s_mips_end): Likewise.
* config/tc-mmix.c (mmix_byte, mmix_cons): Likewise.
* config/tc-mn10300.c (md_assemble): Likewise.
* config/tc-msp430.c (extract_word): Likewise.
* config/tc-mt.c (md_assemble): Likewise.
* config/tc-or32.c (machine_ip): Likewise.
* config/tc-pj.c (md_apply_fix): Likewise.
* config/tc-s390.c (md_gather_operands): Likewise.
* config/tc-sh.c (sh_cons_align): Likewise.
* config/tc-sparc.c (sparc_cons_align): Likewise.
* config/tc-tic4x.c (tic4x_sect): Likewise.
* config/tc-tic54x.c (tic54x_stringer): Likewise.
* config/tc-vax.c (vip_op): Likewise.
* config/tc-xstormy16.c (xstormy16_cons_fix_new): Likewise.
* config/tc-xtensa.c (md_assemble): Likewise.
(xtensa_fix_short_loop_frags, convert_frag_immed): Likewise.
(xtensa_move_literals): Likewise.
2010-06-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* config/tc-arm.c (parse_neon_alignment): New function.

View File

@ -1,6 +1,6 @@
/* GAS interface for targets using CGEN: Cpu tools GENerator.
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2009 Free Software Foundation, Inc.
2006, 2007, 2009, 2010 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -893,6 +893,7 @@ gas_cgen_md_apply_fix (fixP, valP, seg)
bfd_reloc_code_real_type reloc_type;
CGEN_FIELDS *fields = alloca (CGEN_CPU_SIZEOF_FIELDS (cd));
const CGEN_INSN *insn = fixP->fx_cgen.insn;
#ifdef OBJ_COMPLEX_RELC
int start;
int length;
int signed_p = 0;
@ -917,6 +918,7 @@ gas_cgen_md_apply_fix (fixP, valP, seg)
values will be signed relocs, but it's possible. */
if (operand && (operand->hw_type == HW_H_SINT))
signed_p = 1;
#endif
/* If the reloc has been fully resolved finish the operand here. */
/* FIXME: This duplicates the capabilities of code in BFD. */

View File

@ -1,6 +1,7 @@
/* a.out object file format
Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -31,12 +32,10 @@ obj_aout_frob_symbol (symbolS *sym, int *punt ATTRIBUTE_UNUSED)
{
flagword flags;
asection *sec;
int desc, type, other;
int type;
flags = symbol_get_bfdsym (sym)->flags;
desc = aout_symbol (symbol_get_bfdsym (sym))->desc;
type = aout_symbol (symbol_get_bfdsym (sym))->type;
other = aout_symbol (symbol_get_bfdsym (sym))->other;
sec = S_GET_SEGMENT (sym);
/* Only frob simple symbols this way right now. */

View File

@ -1,6 +1,6 @@
/* coff object file format
Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS.
@ -1730,17 +1730,18 @@ coff_frob_section (segT sec)
segT strsec;
char *p;
fragS *fragp;
bfd_vma size, n_entries, mask;
bfd_vma align_power = (bfd_vma)sec->alignment_power + OCTETS_PER_BYTE_POWER;
bfd_vma n_entries;
/* The COFF back end in BFD requires that all section sizes be
rounded up to multiples of the corresponding section alignments,
supposedly because standard COFF has no other way of encoding alignment
for sections. If your COFF flavor has a different way of encoding
section alignment, then skip this step, as TICOFF does. */
size = bfd_get_section_size (sec);
mask = ((bfd_vma) 1 << align_power) - 1;
bfd_vma size = bfd_get_section_size (sec);
#if !defined(TICOFF)
bfd_vma align_power = (bfd_vma) sec->alignment_power + OCTETS_PER_BYTE_POWER;
bfd_vma mask = ((bfd_vma) 1 << align_power) - 1;
if (size & mask)
{
bfd_vma new_size;

View File

@ -1,5 +1,6 @@
/* This file is obj-evax.h
Copyright 1996, 2000, 2005, 2007, 2009 Free Software Foundation, Inc.
Copyright 1996, 2000, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
Contributed by Klaus Kämpf (kkaempf@progis.de) of
proGIS Software, Aachen, Germany.
@ -78,9 +79,6 @@ typedef void *object_headers;
#define obj_frob_file_before_adjust evax_frob_file_before_adjust
#define obj_frob_file_before_fix evax_frob_file_before_fix
#define S_SET_OTHER(S,V)
#define S_SET_TYPE(S,T)
#define S_SET_DESC(S,D)
#define S_GET_OTHER(S) 0
#define S_GET_TYPE(S) 0
#define S_GET_DESC(S) 0

View File

@ -1,6 +1,6 @@
/* tc-alpha.c - Processor-specific code for the DEC Alpha AXP CPU.
Copyright 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Carnegie Mellon University, 1993.
Written by Alessandro Forin, based on earlier gas-1.38 target CPU files.
@ -1383,7 +1383,6 @@ load_expression (int targreg,
/* Add a NOP fixup for 'ldX $26,YYY..NAME..lk'. */
char *ensymname;
symbolS *ensym;
volatile asymbol *dummy;
/* Build the entry name as 'NAME..en'. */
ptr1 = strstr (symname, "..") + 2;
@ -1409,7 +1408,7 @@ load_expression (int targreg,
/* ??? Force bsym to be instantiated now, as it will be
too late to do so in tc_gen_reloc. */
dummy = symbol_get_bfdsym (exp->X_add_symbol);
symbol_get_bfdsym (exp->X_add_symbol);
}
else if (alpha_flag_replace && targreg == 27)
{
@ -2954,7 +2953,7 @@ emit_retjcr (const expressionS *tok,
/* Implement the ldgp macro. */
static void
emit_ldgp (const expressionS *tok,
emit_ldgp (const expressionS *tok ATTRIBUTE_UNUSED,
int ntok ATTRIBUTE_UNUSED,
const void * unused ATTRIBUTE_UNUSED)
{
@ -3009,10 +3008,7 @@ FIXME
insn.sequence = next_sequence_num--;
emit_insn (&insn);
#else /* OBJ_ECOFF || OBJ_ELF */
/* Avoid warning. */
tok = NULL;
#endif
#endif /* OBJ_ECOFF || OBJ_ELF */
}
/* The macro table. */
@ -3657,9 +3653,7 @@ s_alpha_comm (int ignore ATTRIBUTE_UNUSED)
static void
s_alpha_rdata (int ignore ATTRIBUTE_UNUSED)
{
int temp;
temp = get_absolute_expression ();
get_absolute_expression ();
subseg_new (".rdata", 0);
demand_empty_rest_of_line ();
alpha_insn_label = NULL;
@ -3677,9 +3671,7 @@ s_alpha_rdata (int ignore ATTRIBUTE_UNUSED)
static void
s_alpha_sdata (int ignore ATTRIBUTE_UNUSED)
{
int temp;
temp = get_absolute_expression ();
get_absolute_expression ();
subseg_new (".sdata", 0);
demand_empty_rest_of_line ();
alpha_insn_label = NULL;
@ -4302,7 +4294,6 @@ static char *section_name[EVAX_SECTION_COUNT + 1] =
static void
s_alpha_section (int secid)
{
int temp;
char *name, *beg;
segT sec;
flagword vms_flags = 0;
@ -4347,7 +4338,7 @@ s_alpha_section (int secid)
}
else
{
temp = get_absolute_expression ();
get_absolute_expression ();
subseg_new (section_name[secid], 0);
}
@ -4478,9 +4469,7 @@ s_alpha_frame (int ignore ATTRIBUTE_UNUSED)
static void
s_alpha_prologue (int ignore ATTRIBUTE_UNUSED)
{
int arg;
arg = get_absolute_expression ();
get_absolute_expression ();
demand_empty_rest_of_line ();
alpha_prologue_label = symbol_new
(FAKE_LABEL_NAME, now_seg, (valueT) frag_now_fix (), frag_now);
@ -4990,6 +4979,7 @@ s_alpha_proc (int is_static ATTRIBUTE_UNUSED)
temp = get_absolute_expression ();
}
/* *symbol_get_obj (symbolP) = (signed char) temp; */
(void) symbolP;
as_warn (_("unhandled: .proc %s,%d"), name, temp);
demand_empty_rest_of_line ();
}

View File

@ -942,6 +942,8 @@ my_get_expression (expressionS * ep, char ** str, int prefix_mode)
input_line_pointer = save_in;
return 1;
}
#else
(void) seg;
#endif
/* Get rid of any bignums now, so that we don't generate an error for which
@ -1881,7 +1883,6 @@ parse_neon_el_struct_list (char **str, unsigned *pbase,
int lane = -1;
int leading_brace = 0;
enum arm_reg_type rtype = REG_TYPE_NDQ;
int addregs = 1;
const char *const incr_error = _("register stride must be 1 or 2");
const char *const type_error = _("mismatched element/structure types in list");
struct neon_typed_alias firsttype;
@ -1906,7 +1907,6 @@ parse_neon_el_struct_list (char **str, unsigned *pbase,
if (rtype == REG_TYPE_NQ)
{
reg_incr = 1;
addregs = 2;
}
firsttype = atype;
}

View File

@ -367,7 +367,6 @@ skip_space (char *s)
static char *
extract_word (char *from, char *to, int limit)
{
char *op_start;
char *op_end;
int size = 0;
@ -376,7 +375,7 @@ extract_word (char *from, char *to, int limit)
*to = 0;
/* Find the op code end. */
for (op_start = op_end = from; *op_end != 0 && is_part_of_name (*op_end);)
for (op_end = from; *op_end != 0 && is_part_of_name (*op_end);)
{
to[size++] = *op_end++;
if (size + 1 >= limit)

View File

@ -1,5 +1,5 @@
/* tc-cris.c -- Assembler code for the CRIS CPU core.
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Axis Communications AB, Lund, Sweden.
@ -3085,7 +3085,6 @@ static int
cris_get_expression (char **cPP, expressionS *exprP)
{
char *saved_input_line_pointer;
segT exp;
/* The "expression" function expects to find an expression at the
global variable input_line_pointer, so we have to save it to give
@ -3104,7 +3103,7 @@ cris_get_expression (char **cPP, expressionS *exprP)
return 0;
}
exp = expression (exprP);
expression (exprP);
if (exprP->X_op == O_illegal || exprP->X_op == O_absent)
{
input_line_pointer = saved_input_line_pointer;

View File

@ -1,5 +1,6 @@
/* tc-crx.c -- Assembler code for the CRX CPU core.
Copyright 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Tomer Levi, NSC, Israel.
Originally written for GAS 2.12 by Tomer Levi, NSC, Israel.
@ -147,9 +148,9 @@ static int get_opbits (operand_type);
static int get_opflags (operand_type);
static int get_number_of_operands (void);
static void parse_operand (char *, ins *);
static int gettrap (char *);
static void handle_LoadStor (char *);
static int get_cinv_parameters (char *);
static int gettrap (const char *);
static void handle_LoadStor (const char *);
static int get_cinv_parameters (const char *);
static long getconstant (long, int);
static op_err check_range (long *, int, unsigned int, int);
static int getreg_image (reg);
@ -986,7 +987,7 @@ parse_operands (ins * crx_ins, char *operands)
This routine is used by assembling the 'excp' instruction. */
static int
gettrap (char *s)
gettrap (const char *s)
{
const trap_entry *trap;
@ -1006,7 +1007,7 @@ gettrap (char *s)
Otherwise, the insn will be mistakenly identified as of type LD_STOR_INS. */
static void
handle_LoadStor (char *operands)
handle_LoadStor (const char *operands)
{
/* Post-Increment instructions precede Store-Immediate instructions in
CRX instruction table, hence they are handled before.
@ -1071,9 +1072,9 @@ parse_insn (ins *insn, char *operands)
/* Cinv instruction requires special handling. */
static int
get_cinv_parameters (char * operand)
get_cinv_parameters (const char *operand)
{
char *p = operand;
const char *p = operand;
int d_used = 0, i_used = 0, u_used = 0, b_used = 0;
while (*++p != ']')
@ -1118,7 +1119,7 @@ getreg_image (reg r)
if (r < MAX_REG)
rreg = &crx_regtab[r];
/* Check whether the register is in coprocessor registers table. */
else if (r < MAX_COPREG)
else if (r < (int) MAX_COPREG)
rreg = &crx_copregtab[r-MAX_REG];
/* Register not found. */
else
@ -1986,6 +1987,7 @@ md_assemble (char *op)
if (instruction == NULL)
{
as_bad (_("Unknown opcode: `%s'"), op);
param[-1] = c;
return;
}
@ -1997,8 +1999,12 @@ md_assemble (char *op)
/* Assemble the instruction - return upon failure. */
if (assemble_insn (op, &crx_ins) == 0)
return;
{
param[-1] = c;
return;
}
/* Print the instruction. */
param[-1] = c;
print_insn (&crx_ins);
}

View File

@ -1,6 +1,6 @@
/* tc-d30v.c -- Assembler code for the Mitsubishi D30V
Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2008,
2009 Free Software Foundation, Inc.
2009, 2010 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -485,7 +485,7 @@ get_operands (expressionS exp[], int cmp_hack)
static long long
build_insn (struct d30v_insn *opcode, expressionS *opers)
{
int i, length, bits, shift, flags;
int i, bits, shift, flags;
unsigned long number, id = 0;
long long insn;
struct d30v_opcode *op = opcode->op;
@ -507,7 +507,6 @@ build_insn (struct d30v_insn *opcode, expressionS *opers)
if (flags & OPERAND_SHIFT)
bits += 3;
length = d30v_operand_table[form->operands[i]].length;
shift = 12 - d30v_operand_table[form->operands[i]].position;
if (opers[i].X_op != O_symbol)
number = opers[i].X_add_number;
@ -1133,14 +1132,14 @@ find_format (struct d30v_opcode *opcode,
int fsize,
int cmp_hack)
{
int numops, match, opcode_index, i = 0, j, k;
int match, opcode_index, i = 0, j, k;
struct d30v_format *fm;
if (opcode == NULL)
return NULL;
/* Get all the operands and save them as expressions. */
numops = get_operands (myops, cmp_hack);
get_operands (myops, cmp_hack);
while ((opcode_index = opcode->format[i++]) != 0)
{

View File

@ -1,5 +1,5 @@
/* tc-ldx.c -- Assemble for the DLX
Copyright 2002, 2003, 2004, 2005, 2007, 2009
Copyright 2002, 2003, 2004, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -657,7 +657,6 @@ machine_ip (char *str)
char *s;
const char *args;
struct machine_opcode *insn;
char *argsStart;
unsigned long opcode;
expressionS the_operand;
expressionS *operand = &the_operand;
@ -706,7 +705,6 @@ machine_ip (char *str)
return;
}
argsStart = s;
opcode = insn->opcode;
memset (&the_insn, '\0', sizeof (the_insn));
the_insn.reloc = NO_RELOC;

View File

@ -1,6 +1,7 @@
/* tc-hppa.c -- Assemble for the PA
Copyright 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -1401,7 +1402,8 @@ tc_gen_reloc (asection *section, fixS *fixp)
/* ??? It might be better to hide this +8 stuff in tc_cfi_emit_pcrel_expr,
undefine DIFF_EXPR_OK, and let these sorts of complex expressions fail
when R_HPPA_COMPLEX == R_PARISC_UNIMPLEMENTED. */
if (fixp->fx_r_type == R_HPPA_COMPLEX && fixp->fx_pcrel)
if (fixp->fx_r_type == (bfd_reloc_code_real_type) R_HPPA_COMPLEX
&& fixp->fx_pcrel)
{
fixp->fx_r_type = R_HPPA_PCREL_CALL;
fixp->fx_offset += 8;
@ -2561,7 +2563,6 @@ pa_get_absolute_expression (struct pa_it *insn, char **strp)
if (insn->exp.X_op == O_modulus)
{
char *s, c;
int retval;
input_line_pointer = *strp;
s = *strp;
@ -2571,7 +2572,7 @@ pa_get_absolute_expression (struct pa_it *insn, char **strp)
c = *s;
*s = 0;
retval = pa_get_absolute_expression (insn, strp);
pa_get_absolute_expression (insn, strp);
input_line_pointer = save_in;
*s = c;
@ -6502,6 +6503,7 @@ process_exit (void)
/* Mark the end of the function, stuff away the location of the frag
for the end of the function, and finally call pa_build_unwind_subspace
to add an entry in the unwind table. */
(void) where;
hppa_elf_mark_end_of_function ();
pa_build_unwind_subspace (last_call_info);
#else
@ -6643,6 +6645,8 @@ pa_type_args (symbolS *symbolP, int is_export)
to the SOM BFD backend. */
#ifdef obj_set_symbol_type
obj_set_symbol_type (bfdsym, (int) type);
#else
(void) type;
#endif
/* Now that the type of the exported symbol has been handled,
@ -6665,6 +6669,8 @@ pa_type_args (symbolS *symbolP, int is_export)
arg_reloc = pa_align_arg_reloc (temp, pa_build_arg_reloc (name));
#if defined (OBJ_SOM) || defined (ELF_ARG_RELOC)
symbol_arg_reloc_info (symbolP) |= arg_reloc;
#else
(void) arg_reloc;
#endif
*input_line_pointer = c;
}
@ -6679,6 +6685,8 @@ pa_type_args (symbolS *symbolP, int is_export)
arg_reloc = pa_build_arg_reloc (name);
#if defined (OBJ_SOM) || defined (ELF_ARG_RELOC)
symbol_arg_reloc_info (symbolP) |= arg_reloc;
#else
(void) arg_reloc;
#endif
*input_line_pointer = c;
}

View File

@ -1,7 +1,7 @@
/* tc-i370.c -- Assembler for the IBM 360/370/390 instruction set.
Loosely based on the ppc files by Linas Vepstas <linas@linas.org> 1998, 99
Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
2004, 2005, 2006, 2007, 2009, 2010 Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of GAS, the GNU Assembler.
@ -1894,7 +1894,7 @@ i370_macro (char *str, const struct i370_macro *macro)
void
md_assemble (char *str)
{
char *s, *opcode_str;
char *s;
const struct i370_opcode *opcode;
i370_insn_t insn;
const unsigned char *opindex_ptr;
@ -1915,7 +1915,6 @@ md_assemble (char *str)
;
if (*s != '\0')
*s++ = '\0';
opcode_str = str;
/* Look up the opcode in the hash table. */
opcode = (const struct i370_opcode *) hash_find (i370_hash, str);
@ -2033,12 +2032,10 @@ md_assemble (char *str)
for (opindex_ptr = opcode->operands; *opindex_ptr != 0; opindex_ptr++)
{
const struct i370_operand *operand;
const char *errmsg;
char *hold;
expressionS ex;
operand = &i370_operands[*opindex_ptr];
errmsg = NULL;
/* If this is an index operand, and we are skipping it,
just insert a zero. */

View File

@ -1,6 +1,6 @@
/* tc-i960.c - All the i80960-specific stuff
Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2009
1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS.
@ -1069,7 +1069,7 @@ mem_fmt (char *args[], /* args[0]->opcode mnemonic, args[1-3]->operands. */
char opdesc; /* Operand descriptor byte. */
memS instr; /* Description of binary to be output. */
char *outP; /* Where the binary was output to. */
expressionS expr; /* Parsed expression. */
expressionS exp; /* Parsed expression. */
/* ->description of deferred address fixup. */
fixS *fixP;
@ -1097,7 +1097,7 @@ mem_fmt (char *args[], /* args[0]->opcode mnemonic, args[1-3]->operands. */
/* Parse the displacement; this must be done before emitting the
opcode, in case it is an expression using `.'. */
parse_expr (instr.e, &expr);
parse_expr (instr.e, &exp);
/* Output opcode. */
outP = emit (instr.opcode);
@ -1106,7 +1106,7 @@ mem_fmt (char *args[], /* args[0]->opcode mnemonic, args[1-3]->operands. */
return;
/* Process the displacement. */
switch (expr.X_op)
switch (exp.X_op)
{
case O_illegal:
as_bad (_("expression syntax error"));
@ -1114,23 +1114,23 @@ mem_fmt (char *args[], /* args[0]->opcode mnemonic, args[1-3]->operands. */
case O_constant:
if (instr.disp == 32)
(void) emit (offs (expr)); /* Output displacement. */
(void) emit (offs (exp)); /* Output displacement. */
else
{
/* 12-bit displacement. */
if (offs (expr) & ~0xfff)
if (offs (exp) & ~0xfff)
{
/* Won't fit in 12 bits: convert already-output
instruction to MEMB format, output
displacement. */
mema_to_memb (outP);
(void) emit (offs (expr));
(void) emit (offs (exp));
}
else
{
/* WILL fit in 12 bits: OR into opcode and
overwrite the binary we already put out. */
instr.opcode |= offs (expr);
instr.opcode |= offs (exp);
md_number_to_chars (outP, instr.opcode, 4);
}
}
@ -1148,7 +1148,7 @@ mem_fmt (char *args[], /* args[0]->opcode mnemonic, args[1-3]->operands. */
outP = emit ((long) 0);
fixP = fix_new_exp (frag_now,
outP - frag_now->fr_literal,
4, & expr, 0, NO_RELOC);
4, &exp, 0, NO_RELOC);
/* Steve's linker relaxing hack. Mark this 32-bit relocation as
being in the instruction stream, specifically as part of a callx
instruction. */
@ -2100,8 +2100,6 @@ brtab_emit (void)
char buf[20];
/* Where the binary was output to. */
char *p;
/* Pointer to description of deferred address fixup. */
fixS *fixP;
if (!instrument_branches)
return;
@ -2117,9 +2115,9 @@ brtab_emit (void)
{
sprintf (buf, "%s%d", BR_LABEL_BASE, i);
p = emit (0);
fixP = fix_new (frag_now,
p - frag_now->fr_literal,
4, symbol_find (buf), 0, 0, NO_RELOC);
fix_new (frag_now,
p - frag_now->fr_literal,
4, symbol_find (buf), 0, 0, NO_RELOC);
}
}

View File

@ -1,5 +1,5 @@
/* tc-iq2000.c -- Assembler for the Sitera IQ2000.
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation. Inc.
This file is part of GAS, the GNU Assembler.
@ -909,7 +909,6 @@ get_number (void)
static void
s_iq2000_ent (int aent)
{
int number = 0;
symbolS *symbolP;
int maybe_text;
@ -918,7 +917,7 @@ s_iq2000_ent (int aent)
input_line_pointer++;
SKIP_WHITESPACE ();
if (ISDIGIT (*input_line_pointer) || *input_line_pointer == '-')
number = get_number ();
get_number ();
if ((bfd_get_section_flags (stdoutput, now_seg) & SEC_CODE) != 0)
maybe_text = 1;

View File

@ -1,5 +1,5 @@
/* tc-m32c.c -- Assembler for the Renesas M32C.
Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation.
Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation.
Contributed by RedHat.
This file is part of GAS, the GNU Assembler.
@ -359,6 +359,7 @@ md_assemble (char * str)
last_insn_had_delay_slot
= CGEN_INSN_ATTR_VALUE (insn.insn, CGEN_INSN_DELAY_SLOT);
(void) last_insn_had_delay_slot;
insn_size = CGEN_INSN_BITSIZE(insn.insn);
rl_type = rl_for (insn);
@ -623,27 +624,20 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
{
int addend;
int operand;
int new_insn;
int where = fragP->fr_opcode - fragP->fr_literal;
int rl_where = fragP->fr_opcode - fragP->fr_literal;
unsigned char *op = (unsigned char *)fragP->fr_opcode;
int op_base = 0;
int op_op = 0;
int rl_addend = 0;
addend = target_address_for (fragP) - (fragP->fr_address + where);
new_insn = subtype_mappings[fragP->fr_subtype].insn;
fragP->fr_fix = where + subtype_mappings[fragP->fr_subtype].bytes;
op_base = 0;
switch (subtype_mappings[fragP->fr_subtype].insn)
{
case M32C_INSN_JCND16_5:
op[1] = addend - 1;
operand = M32C_OPERAND_LAB_8_8;
op_op = 1;
rl_addend = 0x21;
break;
@ -655,9 +649,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[4] = (addend - 3) >> 8;
operand = M32C_OPERAND_LAB_8_16;
where += 2;
new_insn = M32C_INSN_JMP16_W;
op_base = 2;
op_op = 3;
rl_addend = 0x51;
break;
@ -667,9 +658,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0xfc;
operand = M32C_OPERAND_LAB_8_24;
where += 2;
new_insn = M32C_INSN_JMP16_A;
op_base = 2;
op_op = 3;
rl_addend = 0x61;
break;
@ -677,8 +665,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
case M32C_INSN_JCND16:
op[2] = addend - 2;
operand = M32C_OPERAND_LAB_16_8;
op_base = 0;
op_op = 2;
rl_addend = 0x31;
break;
@ -690,9 +676,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[5] = (addend - 4) >> 8;
operand = M32C_OPERAND_LAB_8_16;
where += 3;
new_insn = M32C_INSN_JMP16_W;
op_base = 3;
op_op = 4;
rl_addend = 0x61;
break;
@ -702,17 +685,12 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[3] = 0xfc;
operand = M32C_OPERAND_LAB_8_24;
where += 3;
new_insn = M32C_INSN_JMP16_A;
op_base = 3;
op_op = 4;
rl_addend = 0x71;
break;
case M32C_INSN_JMP16_S:
op[0] = 0x60 | ((addend-2) & 0x07);
operand = M32C_OPERAND_LAB_5_3;
op_base = 0;
op_op = 0;
rl_addend = 0x10;
break;
@ -720,8 +698,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[0] = 0xfe;
op[1] = addend - 1;
operand = M32C_OPERAND_LAB_8_8;
op_base = 0;
op_op = 1;
rl_addend = 0x21;
break;
@ -730,8 +706,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[1] = addend - 1;
op[2] = (addend - 1) >> 8;
operand = M32C_OPERAND_LAB_8_16;
op_base = 0;
op_op = 1;
rl_addend = 0x31;
break;
@ -741,16 +715,12 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0;
op[3] = 0;
operand = M32C_OPERAND_LAB_8_24;
op_base = 0;
op_op = 1;
rl_addend = 0x41;
break;
case M32C_INSN_JCND32:
op[1] = addend - 1;
operand = M32C_OPERAND_LAB_8_8;
op_base = 0;
op_op = 1;
rl_addend = 0x21;
break;
@ -762,9 +732,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[4] = (addend - 3) >> 8;
operand = M32C_OPERAND_LAB_8_16;
where += 2;
new_insn = M32C_INSN_JMP32_W;
op_base = 2;
op_op = 3;
rl_addend = 0x51;
break;
@ -774,20 +741,13 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0xcc;
operand = M32C_OPERAND_LAB_8_24;
where += 2;
new_insn = M32C_INSN_JMP32_A;
op_base = 2;
op_op = 3;
rl_addend = 0x61;
break;
case M32C_INSN_JMP32_S:
addend = ((addend-2) & 0x07);
op[0] = 0x4a | (addend & 0x01) | ((addend << 3) & 0x30);
operand = M32C_OPERAND_LAB32_JMP_S;
op_base = 0;
op_op = 0;
rl_addend = 0x10;
break;
@ -795,8 +755,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[0] = 0xbb;
op[1] = addend - 1;
operand = M32C_OPERAND_LAB_8_8;
op_base = 0;
op_op = 1;
rl_addend = 0x21;
break;
@ -805,8 +763,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[1] = addend - 1;
op[2] = (addend - 1) >> 8;
operand = M32C_OPERAND_LAB_8_16;
op_base = 0;
op_op = 1;
rl_addend = 0x31;
break;
@ -816,8 +772,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0;
op[3] = 0;
operand = M32C_OPERAND_LAB_8_24;
op_base = 0;
op_op = 1;
rl_addend = 0x41;
break;
@ -827,8 +781,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[1] = addend - 1;
op[2] = (addend - 1) >> 8;
operand = M32C_OPERAND_LAB_8_16;
op_base = 0;
op_op = 1;
rl_addend = 0x31;
break;
@ -838,8 +790,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0;
op[3] = 0;
operand = M32C_OPERAND_LAB_8_24;
op_base = 0;
op_op = 1;
rl_addend = 0x41;
break;
@ -848,8 +798,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[1] = addend - 1;
op[2] = (addend - 1) >> 8;
operand = M32C_OPERAND_LAB_8_16;
op_base = 0;
op_op = 1;
rl_addend = 0x31;
break;
@ -859,8 +807,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
op[2] = 0;
op[3] = 0;
operand = M32C_OPERAND_LAB_8_24;
op_base = 0;
op_op = 1;
rl_addend = 0x41;
break;
@ -885,7 +831,6 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
operand = M32C_OPERAND_LAB_40_8;
break;
default:
printf("\nHey! Need more opcode converters! missing: %d %s\n\n",
fragP->fr_subtype,
@ -909,16 +854,16 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
|| (m32c_relax && (operand != M32C_OPERAND_LAB_5_3
&& operand != M32C_OPERAND_LAB32_JMP_S)))
{
fixS *fixP;
gas_assert (fragP->fr_cgen.insn != 0);
fixP = gas_cgen_record_fixup (fragP,
where,
fragP->fr_cgen.insn,
(fragP->fr_fix - where) * 8,
cgen_operand_lookup_by_num (gas_cgen_cpu_desc,
operand),
fragP->fr_cgen.opinfo,
fragP->fr_symbol, fragP->fr_offset);
gas_cgen_record_fixup (fragP,
where,
fragP->fr_cgen.insn,
(fragP->fr_fix - where) * 8,
cgen_operand_lookup_by_num (gas_cgen_cpu_desc,
operand),
fragP->fr_cgen.opinfo,
fragP->fr_symbol,
fragP->fr_offset);
}
}

View File

@ -1,5 +1,5 @@
/* tc-m68hc11.c -- Assembler code for the Motorola 68HC11 & 68HC12.
Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
Written by Stephane Carrez (stcarrez@nerim.fr)
@ -1463,11 +1463,9 @@ fixup24 (expressionS *oper, int mode, int opmode ATTRIBUTE_UNUSED)
}
else if (oper->X_op != O_register)
{
fixS *fixp;
/* Now create a 24-bit fixup. */
fixp = fix_new_exp (frag_now, f - frag_now->fr_literal, 3,
oper, FALSE, BFD_RELOC_M68HC11_24);
fix_new_exp (frag_now, f - frag_now->fr_literal, 3,
oper, FALSE, BFD_RELOC_M68HC11_24);
number_to_chars_bigendian (f, 0, 3);
}
else
@ -1517,8 +1515,6 @@ build_jump_insn (struct m68hc11_opcode *opcode, operand operands[],
unsigned char code;
char *f;
unsigned long n;
fragS *frag;
int where;
/* The relative branch conversion is not supported for
brclr and brset. */
@ -1539,9 +1535,6 @@ build_jump_insn (struct m68hc11_opcode *opcode, operand operands[],
&& (!check_range (n, opcode->format) &&
(jmp_mode == 1 || flag_fixed_branches == 0))))
{
frag = frag_now;
where = frag_now_fix ();
fix_new (frag_now, frag_now_fix (), 0,
&abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
@ -1599,9 +1592,6 @@ build_jump_insn (struct m68hc11_opcode *opcode, operand operands[],
}
else if (opcode->format & M6812_OP_JUMP_REL16)
{
frag = frag_now;
where = frag_now_fix ();
fix_new (frag_now, frag_now_fix (), 0,
&abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
@ -1614,9 +1604,6 @@ build_jump_insn (struct m68hc11_opcode *opcode, operand operands[],
{
char *op;
frag = frag_now;
where = frag_now_fix ();
fix_new (frag_now, frag_now_fix (), 0,
&abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
@ -3034,12 +3021,10 @@ md_estimate_size_before_relax (fragS *fragP, asection *segment)
}
else
{
fixS* fixp;
fragP->fr_opcode[0] = fragP->fr_opcode[0] << 3;
fragP->fr_opcode[0] |= 0xe2;
fixp = fix_new (fragP, fragP->fr_fix, 2, fragP->fr_symbol,
fragP->fr_offset, 1, BFD_RELOC_16_PCREL);
fix_new (fragP, fragP->fr_fix, 2, fragP->fr_symbol,
fragP->fr_offset, 1, BFD_RELOC_16_PCREL);
fragP->fr_fix += 2;
}
break;
@ -3182,7 +3167,6 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED)
{
char *where;
long value = * valP;
int op_type;
if (fixP->fx_addsy == (symbolS *) NULL)
fixP->fx_done = 1;
@ -3191,8 +3175,6 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED)
if (fixP->fx_subsy != (symbolS *) NULL)
as_bad_where (fixP->fx_file, fixP->fx_line, _("Expression too complex."));
op_type = fixP->fx_r_type;
/* Patch the instruction with the resolved operand. Elf relocation
info will also be generated to take care of linker/loader fixups.
The 68HC11 addresses only 64Kb, we are only concerned by 8 and 16-bit

View File

@ -1,6 +1,6 @@
/* tc-m68k.c -- Assemble for the m68k family
Copyright 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -7713,7 +7713,6 @@ md_show_usage (FILE *stream)
{
const char *default_cpu = TARGET_CPU;
int i;
unsigned int default_arch;
/* Get the canonical name for the default target CPU. */
if (*default_cpu == 'm')
@ -7722,7 +7721,6 @@ md_show_usage (FILE *stream)
{
if (strcasecmp (default_cpu, m68k_cpus[i].name) == 0)
{
default_arch = m68k_cpus[i].arch;
while (m68k_cpus[i].alias > 0)
i--;
while (m68k_cpus[i].alias < 0)

View File

@ -1,6 +1,6 @@
/* tc-microblaze.c -- Assemble code for Xilinx MicroBlaze
Copyright 2009 Free Software Foundation.
Copyright 2009, 2010 Free Software Foundation.
This file is part of GAS, the GNU Assembler.
@ -160,8 +160,6 @@ microblaze_s_lcomm (int xxx ATTRIBUTE_UNUSED)
offsetT size;
symbolS *symbolP;
offsetT align;
segT old_sec;
int old_subsec;
char *pfrag;
int align2;
segT current_seg = now_seg;
@ -227,8 +225,6 @@ microblaze_s_lcomm (int xxx ATTRIBUTE_UNUSED)
}
/* Allocate_bss. */
old_sec = now_seg;
old_subsec = now_subseg;
if (align)
{
/* Convert to a power of 2 alignment. */
@ -1800,6 +1796,7 @@ md_convert_frag (bfd * abfd ATTRIBUTE_UNUSED,
fixP = fix_new (fragP, fragP->fr_fix, INST_WORD_SIZE * 2, fragP->fr_symbol,
fragP->fr_offset, TRUE, BFD_RELOC_MICROBLAZE_64_PLT);
/* fixP->fx_plt = 1; */
(void) fixP;
fragP->fr_fix += INST_WORD_SIZE * 2;
fragP->fr_var = 0;
break;

View File

@ -12695,6 +12695,8 @@ s_change_section (int ignore ATTRIBUTE_UNUSED)
section_alignment = get_absolute_expression ();
else
section_alignment = 0;
/* FIXME: really ignore? */
(void) section_alignment;
section_name = xstrdup (section_name);
@ -15077,12 +15079,9 @@ s_mips_end (int x ATTRIBUTE_UNUSED)
{
segT saved_seg = now_seg;
subsegT saved_subseg = now_subseg;
valueT dot;
expressionS exp;
char *fragp;
dot = frag_now_fix ();
#ifdef md_flush_pending_output
md_flush_pending_output ();
#endif

View File

@ -1,5 +1,5 @@
/* tc-mmix.c -- Assembler for Don Knuth's MMIX.
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation.
This file is part of GAS, the GNU Assembler.
@ -4008,7 +4008,6 @@ static void
mmix_byte (void)
{
unsigned int c;
char *start;
if (now_seg == text_section)
text_has_contents = 1;
@ -4022,7 +4021,6 @@ mmix_byte (void)
{
case '\"':
++input_line_pointer;
start = input_line_pointer;
while (is_a_char (c = next_char_of_string ()))
{
FRAG_APPEND_1_CHAR (c);
@ -4098,7 +4096,6 @@ static void
mmix_cons (int nbytes)
{
expressionS exp;
char *start;
/* If we don't have any contents, then it's ok to have a specified start
address that is not a multiple of the max data size. We will then
@ -4179,7 +4176,6 @@ mmix_cons (int nbytes)
bytes. */
case '\"':
++input_line_pointer;
start = input_line_pointer;
while (is_a_char (c = next_char_of_string ()))
{
exp.X_op = O_constant;

View File

@ -1,6 +1,6 @@
/* tc-mn10300.c -- Assembler code for the Matsushita 10300
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009 Free Software Foundation, Inc.
2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -2065,7 +2065,6 @@ keep_going:
{
reloc_howto_type *reloc_howto;
int offset;
fixS *fixP;
reloc_howto = bfd_reloc_type_lookup (stdoutput,
fixups[i].reloc);
@ -2079,10 +2078,10 @@ keep_going:
abort ();
offset = 4 - size;
fixP = fix_new_exp (frag_now, f - frag_now->fr_literal + offset,
reloc_size, &fixups[i].exp,
reloc_howto->pc_relative,
fixups[i].reloc);
fix_new_exp (frag_now, f - frag_now->fr_literal + offset,
reloc_size, &fixups[i].exp,
reloc_howto->pc_relative,
fixups[i].reloc);
}
else
{

View File

@ -1,6 +1,6 @@
/* tc-msp430.c -- Assembler code for the Texas Instruments MSP430
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
Contributed by Dmitry Diky <diwil@mail.ru>
@ -678,7 +678,6 @@ msp430_profiler (int dummy ATTRIBUTE_UNUSED)
static char *
extract_word (char * from, char * to, int limit)
{
char *op_start;
char *op_end;
int size = 0;
@ -687,7 +686,7 @@ extract_word (char * from, char * to, int limit)
*to = 0;
/* Find the op code end. */
for (op_start = op_end = from; *op_end != 0 && is_part_of_name (*op_end);)
for (op_end = from; *op_end != 0 && is_part_of_name (*op_end);)
{
to[size++] = *op_end++;
if (size + 1 >= limit)

View File

@ -1,5 +1,5 @@
/* tc-mt.c -- Assembler for the Morpho Technologies mt .
Copyright (C) 2005, 2006, 2007 Free Software Foundation.
Copyright (C) 2005, 2006, 2007, 2010 Free Software Foundation.
This file is part of GAS, the GNU Assembler.
@ -294,6 +294,7 @@ md_assemble (char * str)
last_insn_had_delay_slot =
CGEN_INSN_ATTR_VALUE (insn.insn, CGEN_INSN_DELAY_SLOT);
(void) last_insn_had_delay_slot;
last_insn_has_load_delay =
CGEN_INSN_ATTR_VALUE (insn.insn, CGEN_INSN_LOAD_DELAY);
@ -458,8 +459,6 @@ mt_apply_fix (fixS *fixP, valueT *valueP, segT seg)
bfd_boolean
mt_fix_adjustable (fixS * fixP)
{
bfd_reloc_code_real_type reloc_type;
if ((int) fixP->fx_r_type >= (int) BFD_RELOC_UNUSED)
{
const CGEN_INSN *insn = NULL;
@ -467,10 +466,8 @@ mt_fix_adjustable (fixS * fixP)
const CGEN_OPERAND *operand;
operand = cgen_operand_lookup_by_num(gas_cgen_cpu_desc, opindex);
reloc_type = md_cgen_lookup_reloc (insn, operand, fixP);
md_cgen_lookup_reloc (insn, operand, fixP);
}
else
reloc_type = fixP->fx_r_type;
if (fixP->fx_addsy == NULL)
return TRUE;

View File

@ -1,5 +1,5 @@
/* Assembly backend for the OpenRISC 1000.
Copyright (C) 2002, 2003, 2005, 2007, 2009
Copyright (C) 2002, 2003, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
Contributed by Damjan Lampret <lampret@opencores.org>.
Modified bu Johan Rydberg, <johan.rydberg@netinsight.se>.
@ -333,7 +333,6 @@ machine_ip (char *str)
char *s;
const char *args;
const struct machine_opcode *insn;
char *argsStart;
unsigned long opcode;
expressionS the_operand;
expressionS *operand = &the_operand;
@ -369,7 +368,6 @@ machine_ip (char *str)
return;
}
argsStart = s;
opcode = 0;
memset (&the_insn, '\0', sizeof (the_insn));
the_insn.reloc = BFD_RELOC_NONE;

View File

@ -1,5 +1,5 @@
/* tc-pj.c -- Assemble code for Pico Java
Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2009
Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -366,10 +366,8 @@ md_apply_fix (fixS *fixP, valueT * valP, segT seg ATTRIBUTE_UNUSED)
char *buf = fixP->fx_where + fixP->fx_frag->fr_literal;
long val = *valP;
long max, min;
int shift;
max = min = 0;
shift = 0;
switch (fixP->fx_r_type)
{
case BFD_RELOC_VTABLE_INHERIT:

View File

@ -1,6 +1,6 @@
/* tc-s390.c -- Assemble for the S390
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
2009 Free Software Foundation, Inc.
2009, 2010 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of GAS, the GNU Assembler.
@ -1145,14 +1145,12 @@ md_gather_operands (char *str,
elf_suffix_type suffix;
bfd_reloc_code_real_type reloc;
int skip_optional;
int parentheses;
char *f;
int fc, i;
while (ISSPACE (*str))
str++;
parentheses = 0;
skip_optional = 0;
/* Gather the operands. */

View File

@ -145,8 +145,10 @@ static unsigned int preset_target_arch;
accommodate the insns seen so far. */
static unsigned int valid_arch;
#ifdef OBJ_ELF
/* Whether --fdpic was given. */
static int sh_fdpic;
#endif
const char EXP_CHARS[] = "eE";
@ -2347,7 +2349,9 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand)
int low_byte = target_big_endian ? 1 : 0;
int max_index = 4;
bfd_reloc_code_real_type r_type;
#ifdef OBJ_ELF
int unhandled_pic = 0;
#endif
nbuf[0] = 0;
nbuf[1] = 0;
@ -2358,6 +2362,7 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand)
nbuf[6] = 0;
nbuf[7] = 0;
#ifdef OBJ_ELF
for (indx = 0; indx < 3; indx++)
if (opcode->arg[indx] == A_IMM
&& operand[indx].type == A_IMM
@ -2365,6 +2370,7 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand)
|| sh_PIC_related_p (operand[indx].immediate.X_add_symbol)
|| sh_PIC_related_p (operand[indx].immediate.X_op_symbol)))
unhandled_pic = 1;
#endif
if (SH_MERGE_ARCH_SET (opcode->arch, arch_op32))
{
@ -2445,9 +2451,11 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand)
break;
case IMM0_20:
r_type = BFD_RELOC_SH_DISP20;
#ifdef OBJ_ELF
if (sh_check_fixup (&operand->immediate, &r_type))
as_bad (_("Invalid PIC expression."));
unhandled_pic = 0;
#endif
insert4 (output, r_type, 0, operand);
break;
case IMM0_20BY8:
@ -2507,8 +2515,10 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand)
}
}
}
#ifdef OBJ_ELF
if (unhandled_pic)
as_bad (_("misplaced PIC operand"));
#endif
if (!target_big_endian)
{
output[1] = (nbuf[0] << 4) | (nbuf[1]);
@ -3715,7 +3725,6 @@ void
sh_cons_align (int nbytes)
{
int nalign;
char *p;
if (sh_no_align_cons)
{
@ -3741,8 +3750,8 @@ sh_cons_align (int nbytes)
return;
}
p = frag_var (rs_align_test, 1, 1, (relax_substateT) 0,
(symbolS *) NULL, (offsetT) nalign, (char *) NULL);
frag_var (rs_align_test, 1, 1, (relax_substateT) 0,
(symbolS *) NULL, (offsetT) nalign, (char *) NULL);
record_alignment (now_seg, nalign);
}

View File

@ -1,6 +1,6 @@
/* tc-sparc.c -- Assemble for the SPARC
Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -4181,7 +4181,6 @@ void
sparc_cons_align (int nbytes)
{
int nalign;
char *p;
/* Only do this if we are enforcing aligned data. */
if (! enforce_aligned_data)
@ -4204,8 +4203,8 @@ sparc_cons_align (int nbytes)
return;
}
p = frag_var (rs_align_test, 1, 1, (relax_substateT) 0,
(symbolS *) NULL, (offsetT) nalign, (char *) NULL);
frag_var (rs_align_test, 1, 1, (relax_substateT) 0,
(symbolS *) NULL, (offsetT) nalign, (char *) NULL);
record_alignment (now_seg, nalign);
}

View File

@ -1,5 +1,5 @@
/* tc-tic4x.c -- Assemble for the Texas Instruments TMS320C[34]x.
Copyright (C) 1997,1998, 2002, 2003, 2005, 2006, 2007, 2008, 2009
Copyright (C) 1997,1998, 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation. Inc.
Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz)
@ -949,8 +949,9 @@ tic4x_eval (int x ATTRIBUTE_UNUSED)
}
name = input_line_pointer;
c = get_symbol_end (); /* Get terminator. */
demand_empty_rest_of_line ();
tic4x_insert_sym (name, value);
*input_line_pointer++ = c;
demand_empty_rest_of_line ();
}
/* Reset local labels. */
@ -967,7 +968,6 @@ tic4x_sect (int x ATTRIBUTE_UNUSED)
{
char c;
char *section_name;
char *subsection_name;
char *name;
segT seg;
offsetT num;
@ -988,7 +988,6 @@ tic4x_sect (int x ATTRIBUTE_UNUSED)
Volker Kuhlmann <v.kuhlmann@elec.canterbury.ac.nz>. */
if (c == ':')
{
subsection_name = input_line_pointer;
c = get_symbol_end (); /* Get terminator. */
input_line_pointer++; /* Skip null symbol terminator. */
as_warn (_(".sect: subsection name ignored"));

View File

@ -1,6 +1,6 @@
/* tc-tic54x.c -- Assembly code for the Texas Instruments TMS320C54X
Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
2009 Free Software Foundation, Inc.
2009, 2010 Free Software Foundation, Inc.
Contributed by Timothy Wall (twall@cygnus.com)
This file is part of GAS, the GNU Assembler.
@ -1570,7 +1570,6 @@ static void
tic54x_stringer (int type)
{
unsigned int c;
char *start;
int append_zero = type == 'S' || type == 'P';
int packed = type == 'p' || type == 'P';
int last_char = -1; /* Packed strings need two bytes at a time to encode. */
@ -1600,7 +1599,6 @@ tic54x_stringer (int type)
}
case '\"':
++input_line_pointer; /* -> 1st char of string. */
start = input_line_pointer;
while (is_a_char (c = next_char_of_string ()))
{
if (!packed)

View File

@ -1,6 +1,6 @@
/* tc-vax.c - vax-specific -
Copyright 1987, 1991, 1992, 1993, 1994, 1995, 1998, 2000, 2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008, 2009
2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -1271,10 +1271,8 @@ vip_op (char *optext, struct vop *vopP)
get the types wrong below, we lose at compile time rather than at
lint or run time. */
char access_mode; /* vop_access. */
char width; /* vop_width. */
access_mode = vopP->vop_access;
width = vopP->vop_width;
/* None of our code bugs (yet), no user text errors, no warnings
even. */
err = wrn = 0;

View File

@ -1,5 +1,5 @@
/* tc-xstormy16.c -- Assembler for the Sanyo XSTORMY16.
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
Free Software Foundation.
This file is part of GAS, the GNU Assembler.
@ -197,7 +197,6 @@ xstormy16_cons_fix_new (fragS *f,
expressionS *exp)
{
bfd_reloc_code_real_type code;
fixS *fix;
if (exp->X_op == O_fptr_symbol)
{
@ -239,7 +238,7 @@ xstormy16_cons_fix_new (fragS *f,
return;
}
fix = fix_new_exp (f, where, nbytes, exp, 0, code);
fix_new_exp (f, where, nbytes, exp, 0, code);
}
/* Called while parsing an instruction to create a fixup.

View File

@ -1,5 +1,5 @@
/* tc-xtensa.c -- Assemble Xtensa instructions.
Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009
Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -1321,18 +1321,18 @@ xtensa_end_directive (int ignore ATTRIBUTE_UNUSED)
md_flush_pending_output ();
switch (end_directive)
switch ((int) end_directive)
{
case (directiveE) XTENSA_UNDEFINED:
case XTENSA_UNDEFINED:
discard_rest_of_line ();
return;
case directive_density:
case (int) directive_density:
as_warn (_(".end [no-]density is ignored"));
demand_empty_rest_of_line ();
break;
case directive_absolute_literals:
case (int) directive_absolute_literals:
if (!absolute_literals_supported && !end_negated)
{
as_warn (_("Xtensa absolute literals option not supported; ignored"));
@ -1452,6 +1452,9 @@ xtensa_literal_pseudo (int ignored ATTRIBUTE_UNUSED)
if (use_literal_section || directive_state[directive_absolute_literals])
dest_seg = now_seg;
/* FIXME, despite the previous comments, dest_seg is unused... */
(void) dest_seg;
/* All literals are aligned to four-byte boundaries. */
frag_align (2, 0, 0);
record_alignment (now_seg, 2);
@ -5437,12 +5440,11 @@ md_assemble (char *str)
bfd_reloc_code_real_type reloc;
char *old_input_line_pointer;
expressionS *tok = &orig_insn.extra_arg;
segT t;
old_input_line_pointer = input_line_pointer;
input_line_pointer = arg_strings[num_args - 1];
t = expression (tok);
expression (tok);
if (tok->X_op == O_symbol
&& ((reloc = xtensa_elf_suffix (&input_line_pointer, tok))
== BFD_RELOC_XTENSA_TLS_CALL))
@ -7893,7 +7895,6 @@ xtensa_fix_short_loop_frags (void)
for (frchP = seg_info (s)->frchainP; frchP; frchP = frchP->frch_next)
{
fragS *fragP;
fragS *current_target = NULL;
xtensa_opcode current_opcode = XTENSA_UNDEFINED;
/* Walk over all of the fragments in a subsection. */
@ -7906,7 +7907,6 @@ xtensa_fix_short_loop_frags (void)
TInsn t_insn;
fragS *loop_frag = next_non_empty_frag (fragP);
tinsn_from_chars (&t_insn, loop_frag->fr_opcode, 0);
current_target = symbol_get_frag (fragP->fr_symbol);
current_opcode = t_insn.opcode;
gas_assert (xtensa_opcode_is_loop (xtensa_default_isa,
current_opcode) == 1);
@ -9598,7 +9598,6 @@ convert_frag_immed (segT segP,
symbolS *gen_label = NULL;
offsetT frag_offset;
bfd_boolean first = TRUE;
bfd_boolean last_is_jump;
/* It does not fit. Find something that does and
convert immediately. */
@ -9673,7 +9672,6 @@ convert_frag_immed (segT segP,
total_size = 0;
first = TRUE;
last_is_jump = FALSE;
for (i = 0; i < istack.ninsn; i++)
{
TInsn *tinsn = &istack.insn[i];
@ -10064,7 +10062,7 @@ xtensa_move_literals (void)
{
seg_list *segment;
frchainS *frchain_from, *frchain_to;
fragS *search_frag, *next_frag, *last_frag, *literal_pool, *insert_after;
fragS *search_frag, *next_frag, *literal_pool, *insert_after;
fragS **frag_splice;
emit_state state;
segT dest_seg;
@ -10106,7 +10104,6 @@ xtensa_move_literals (void)
frags in it. */
frag_variant (rs_fill, 0, 0, 0, NULL, 0, NULL);
xtensa_set_frag_assembly_state (frag_now);
last_frag = frag_now;
frag_variant (rs_fill, 0, 0, 0, NULL, 0, NULL);
xtensa_set_frag_assembly_state (frag_now);

View File

@ -1,6 +1,6 @@
/* ECOFF debugging support.
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008, 2009
2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Cygnus Support.
This file was put together by Ian Lance Taylor <ian@cygnus.com>. A
@ -1755,7 +1755,7 @@ add_ecoff_symbol (const char *str, /* symbol name */
ty = add_aux_sym_tir (&last_func_type_info,
hash_no,
&cur_file_ptr->thash_head[0]);
(void) ty;
/* This seems to be unnecessary. I'm not even sure what it is
* intended to do. It's from mips-tfile.
* if (last_func_sym_value != (symbolS *) NULL)

View File

@ -1,6 +1,6 @@
/* itbl-ops.c
Copyright 1997, 1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007,
2009 Free Software Foundation, Inc.
2009, 2010 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -300,7 +300,10 @@ append_insns_as_macros (void)
{
struct ITBL_OPCODE_STRUCT *new_opcodes, *o;
struct itbl_entry *e, **es;
int n, id, size, new_size, new_num_opcodes;
int n, size, new_size, new_num_opcodes;
#ifdef USE_MACROS
int id;
#endif
if (!itbl_have_entries)
return;
@ -335,7 +338,9 @@ append_insns_as_macros (void)
/* FIXME! some NUMOPCODES are calculated expressions.
These need to be changed before itbls can be supported. */
#ifdef USE_MACROS
id = ITBL_NUM_MACROS; /* begin the next macro id after the last */
#endif
o = &new_opcodes[ITBL_NUM_OPCODES]; /* append macro to opcodes list */
for (n = e_p0; n < e_nprocs; n++)
{

View File

@ -1075,17 +1075,22 @@ print_source (file_info_type * current_file,
static int
debugging_pseudo (list_info_type *list, const char *line)
{
#ifdef OBJ_ELF
static int in_debug;
int was_debug;
#endif
if (list->debugging)
{
#ifdef OBJ_ELF
in_debug = 1;
#endif
return 1;
}
#ifdef OBJ_ELF
was_debug = in_debug;
in_debug = 0;
#endif
while (ISSPACE (*line))
line++;

View File

@ -1610,6 +1610,8 @@ s_mri_common (int small ATTRIBUTE_UNUSED)
#ifdef S_SET_ALIGN
if (align != 0)
S_SET_ALIGN (sym, align);
#else
(void) align;
#endif
if (line_label != NULL)
@ -5155,7 +5157,9 @@ stringer (int bits_appendzero)
const int bitsize = bits_appendzero & ~7;
const int append_zero = bits_appendzero & 1;
unsigned int c;
#if !defined(NO_LISTING) && defined (OBJ_ELF)
char *start;
#endif
#ifdef md_flush_pending_output
md_flush_pending_output ();
@ -5195,7 +5199,9 @@ stringer (int bits_appendzero)
{
case '\"':
++input_line_pointer; /*->1st char of string. */
#if !defined(NO_LISTING) && defined (OBJ_ELF)
start = input_line_pointer;
#endif
while (is_a_char (c = next_char_of_string ()))
stringer_append_char (c, bitsize);
@ -5205,8 +5211,7 @@ stringer (int bits_appendzero)
know (input_line_pointer[-1] == '\"');
#ifndef NO_LISTING
#ifdef OBJ_ELF
#if !defined(NO_LISTING) && defined (OBJ_ELF)
/* In ELF, when gcc is emitting DWARF 1 debugging output, it
will emit .string with a filename in the .debug section
after a sequence of constants. See the comment in
@ -5222,7 +5227,6 @@ stringer (int bits_appendzero)
listing_source_file (start);
input_line_pointer[-1] = c;
}
#endif
#endif
break;