diff options
author | Alan Modra <amodra@gmail.com> | 2010-06-28 14:06:57 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2010-06-28 14:06:57 +0000 |
commit | 87975d2a60adf249212c1c031abb4dd0dbb800ac (patch) | |
tree | 2722bdca23be6f36fabde10b3e20fddfecc763b1 /gas/config/tc-crx.c | |
parent | 8e56076649ea3bc861ad1f5ddad9fd931293af10 (diff) | |
download | gdb-87975d2a60adf249212c1c031abb4dd0dbb800ac.zip gdb-87975d2a60adf249212c1c031abb4dd0dbb800ac.tar.gz gdb-87975d2a60adf249212c1c031abb4dd0dbb800ac.tar.bz2 |
* 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.
Diffstat (limited to 'gas/config/tc-crx.c')
-rw-r--r-- | gas/config/tc-crx.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/gas/config/tc-crx.c b/gas/config/tc-crx.c index fd93f41..b347d8b 100644 --- a/gas/config/tc-crx.c +++ b/gas/config/tc-crx.c @@ -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); } |