* config/tc-mips.c (mips_fix_loongson2f, mips_fix_loongson2f_nop,
mips_fix_loongson2f_jump): New variables.
        (md_longopts): Add New options -mfix-loongson2f-nop/jump,
        -mno-fix-loongson2f-nop/jump.
        (md_parse_option): Initialize variables via above options.
        (options): New enums for the above options.
        (md_begin): Initialize nop_insn from LOONGSON2F_NOP_INSN.
        (fix_loongson2f, fix_loongson2f_nop, fix_loongson2f_jump):
        New functions.
        (append_insn): call fix_loongson2f().
        (mips_handle_align): Replace the implicit nops.
        * config/tc-mips.h (MAX_MEM_FOR_RS_ALIGN_CODE): Modified
        for the new mips_handle_align().
        * doc/c-mips.texi: Document the new options.
        * gas/mips/loongson-2f-2.s: New test of -mfix-loongson2f-nop.
        * gas/mips/loongson-2f-2.d: Likewise.
        * gas/mips/loongson-2f-3.s: New test of -mfix-loongson2f-jump.
        * gas/mips/loongson-2f-3.d: Likewise.
        * gas/mips/mips.exp: Run the new tests.
        * opcode/mips.h (LOONGSON2F_NOP_INSN): New macro.
			
			
This commit is contained in:
		| @@ -1,3 +1,7 @@ | ||||
| 2010-02-25  Wu Zhangjin  <wuzhangjin@gmail.com> | ||||
|  | ||||
| 	* mips.h: (LOONGSON2F_NOP_INSN): New macro. | ||||
|  | ||||
| 2010-02-08  Philipp Tomsich  <philipp.tomsich@theobroma-systems.com> | ||||
|  | ||||
| 	* opcode/ppc.h (PPC_OPCODE_TITAN): Define. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| /* mips.h.  Mips opcode list for GDB, the GNU debugger. | ||||
|    Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, | ||||
|    2003, 2004, 2005, 2008, 2009 | ||||
|    2003, 2004, 2005, 2008, 2009, 2010 | ||||
|    Free Software Foundation, Inc. | ||||
|    Contributed by Ralph Campbell and OSF | ||||
|    Commented and modified by Ian Lance Taylor, Cygnus Support | ||||
| @@ -1106,4 +1106,8 @@ extern int bfd_mips_num_opcodes; | ||||
| extern const struct mips_opcode mips16_opcodes[]; | ||||
| extern const int bfd_mips16_num_opcodes; | ||||
|  | ||||
| /* A NOP insn impemented as "or at,at,zero". | ||||
|    Used to implement -mfix-loongson2f.  */ | ||||
| #define LOONGSON2F_NOP_INSN	0x00200825 | ||||
|  | ||||
| #endif /* _MIPS_H_ */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user