X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2Farchures.c;h=fc2f85ba1c042a0a1c24c33214cb8603acabf6cf;hb=d70c5fc7c56fa9915f594aca8de15b478f3ab5b0;hp=9a83fa45c6855bec4508063e70d3072959ab6e99;hpb=7499d566bb9495cac23109f01ded20f8849d08ae;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/archures.c b/bfd/archures.c index 9a83fa45c6..fc2f85ba1c 100644 --- a/bfd/archures.c +++ b/bfd/archures.c @@ -1,6 +1,6 @@ /* BFD library support routines for architectures. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004 + 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Hacked by John Gilmore and Steve Chamberlain of Cygnus Support. @@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ #include "bfd.h" #include "sysdep.h" @@ -80,16 +80,22 @@ DESCRIPTION .#define bfd_mach_m68040 6 .#define bfd_mach_m68060 7 .#define bfd_mach_cpu32 8 -.#define bfd_mach_mcf5200 9 -.#define bfd_mach_mcf5206e 10 -.#define bfd_mach_mcf5307 11 -.#define bfd_mach_mcf5407 12 -.#define bfd_mach_mcf528x 13 -.#define bfd_mach_mcfv4e 14 -.#define bfd_mach_mcf521x 15 -.#define bfd_mach_mcf5249 16 -.#define bfd_mach_mcf547x 17 -.#define bfd_mach_mcf548x 18 +.#define bfd_mach_mcf_isa_a 9 +.#define bfd_mach_mcf_isa_a_div 10 +.#define bfd_mach_mcf_isa_a_div_mac 11 +.#define bfd_mach_mcf_isa_a_div_emac 12 +.#define bfd_mach_mcf_isa_aplus 13 +.#define bfd_mach_mcf_isa_aplus_mac 14 +.#define bfd_mach_mcf_isa_aplus_emac 15 +.#define bfd_mach_mcf_isa_aplus_usp 16 +.#define bfd_mach_mcf_isa_aplus_usp_mac 17 +.#define bfd_mach_mcf_isa_aplus_usp_emac 18 +.#define bfd_mach_mcf_isa_b 19 +.#define bfd_mach_mcf_isa_b_mac 20 +.#define bfd_mach_mcf_isa_b_emac 21 +.#define bfd_mach_mcf_isa_b_usp_float 22 +.#define bfd_mach_mcf_isa_b_usp_float_mac 23 +.#define bfd_mach_mcf_isa_b_usp_float_emac 24 . bfd_arch_vax, {* DEC Vax *} . bfd_arch_i960, {* Intel 960 *} . {* The order of the following is important. @@ -111,7 +117,6 @@ DESCRIPTION . . bfd_arch_or32, {* OpenRISC 32 *} . -. bfd_arch_a29k, {* AMD 29000 *} . bfd_arch_sparc, {* SPARC *} .#define bfd_mach_sparc 1 .{* The difference between v8plus and v9 is that v9 is a true 64 bit env. *} @@ -149,6 +154,7 @@ DESCRIPTION .#define bfd_mach_mips6000 6000 .#define bfd_mach_mips7000 7000 .#define bfd_mach_mips8000 8000 +.#define bfd_mach_mips9000 9000 .#define bfd_mach_mips10000 10000 .#define bfd_mach_mips12000 12000 .#define bfd_mach_mips16 16 @@ -169,7 +175,6 @@ DESCRIPTION . bfd_arch_i860, {* Intel 860 *} . bfd_arch_i370, {* IBM 360/370 Mainframes *} . bfd_arch_romp, {* IBM ROMP PC/RT *} -. bfd_arch_alliant, {* Alliant *} . bfd_arch_convex, {* Convex *} . bfd_arch_m88k, {* Motorola 88xxx *} . bfd_arch_m98k, {* Motorola 98xxx *} @@ -234,10 +239,10 @@ DESCRIPTION .#define bfd_mach_sh_dsp 0x2d .#define bfd_mach_sh2a 0x2a .#define bfd_mach_sh2a_nofpu 0x2b -.#define bfd_mach_sh2a_fake1 0x2a1 -.#define bfd_mach_sh2a_fake2 0x2a2 -.#define bfd_mach_sh2a_fake3 0x2a3 -.#define bfd_mach_sh2a_fake4 0x2a4 +.#define bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu 0x2a1 +.#define bfd_mach_sh2a_nofpu_or_sh3_nommu 0x2a2 +.#define bfd_mach_sh2a_or_sh4 0x2a3 +.#define bfd_mach_sh2a_or_sh3e 0x2a4 .#define bfd_mach_sh2e 0x2e .#define bfd_mach_sh3 0x30 .#define bfd_mach_sh3_nommu 0x31 @@ -285,6 +290,9 @@ DESCRIPTION .#define bfd_mach_arc_6 6 .#define bfd_mach_arc_7 7 .#define bfd_mach_arc_8 8 +. bfd_arch_m32c, {* Renesas M16C/M32C. *} +.#define bfd_mach_m16c 0x75 +.#define bfd_mach_m32c 0x78 . bfd_arch_m32r, {* Renesas M32R (formerly Mitsubishi M32R/D) *} .#define bfd_mach_m32r 1 {* For backwards compatibility. *} .#define bfd_mach_m32rx 'x' @@ -315,6 +323,10 @@ DESCRIPTION . bfd_arch_iq2000, {* Vitesse IQ2000. *} .#define bfd_mach_iq2000 1 .#define bfd_mach_iq10 2 +. bfd_arch_mt, +.#define bfd_mach_ms1 1 +.#define bfd_mach_mrisc2 2 +.#define bfd_mach_ms2 3 . bfd_arch_pj, . bfd_arch_avr, {* Atmel AVR microcontrollers. *} .#define bfd_mach_avr1 1 @@ -322,6 +334,8 @@ DESCRIPTION .#define bfd_mach_avr3 3 .#define bfd_mach_avr4 4 .#define bfd_mach_avr5 5 +. bfd_arch_bfin, {* ADI Blackfin *} +.#define bfd_mach_bfin 1 . bfd_arch_cr16c, {* National Semiconductor CompactRISC. *} .#define bfd_mach_cr16c 1 . bfd_arch_crx, {* National Semiconductor CRX. *} @@ -344,7 +358,8 @@ DESCRIPTION .#define bfd_mach_msp13 13 .#define bfd_mach_msp14 14 .#define bfd_mach_msp15 15 -.#define bfd_mach_msp16 16 +.#define bfd_mach_msp16 16 +.#define bfd_mach_msp21 21 .#define bfd_mach_msp31 31 .#define bfd_mach_msp32 32 .#define bfd_mach_msp33 33 @@ -352,9 +367,20 @@ DESCRIPTION .#define bfd_mach_msp42 42 .#define bfd_mach_msp43 43 .#define bfd_mach_msp44 44 +. bfd_arch_xc16x, {* Infineon's XC16X Series. *} +.#define bfd_mach_xc16x 1 +.#define bfd_mach_xc16xl 2 +.#define bfd_mach_xc16xs 3 . bfd_arch_xtensa, {* Tensilica's Xtensa cores. *} .#define bfd_mach_xtensa 1 . bfd_arch_maxq, {* Dallas MAXQ 10/20 *} +.#define bfd_mach_maxq10 10 +.#define bfd_mach_maxq20 20 +. bfd_arch_z80, +.#define bfd_mach_z80strict 1 {* No undocumented opcodes. *} +.#define bfd_mach_z80 3 {* With ixl, ixh, iyl, and iyh. *} +.#define bfd_mach_z80full 7 {* All undocumented instructions. *} +.#define bfd_mach_r800 11 {* R800: successor with multiplication. *} . bfd_arch_last . }; */ @@ -393,11 +419,11 @@ DESCRIPTION . */ -extern const bfd_arch_info_type bfd_a29k_arch; extern const bfd_arch_info_type bfd_alpha_arch; extern const bfd_arch_info_type bfd_arc_arch; extern const bfd_arch_info_type bfd_arm_arch; extern const bfd_arch_info_type bfd_avr_arch; +extern const bfd_arch_info_type bfd_bfin_arch; extern const bfd_arch_info_type bfd_cr16c_arch; extern const bfd_arch_info_type bfd_cris_arch; extern const bfd_arch_info_type bfd_crx_arch; @@ -416,6 +442,7 @@ extern const bfd_arch_info_type bfd_i960_arch; extern const bfd_arch_info_type bfd_ia64_arch; extern const bfd_arch_info_type bfd_ip2k_arch; extern const bfd_arch_info_type bfd_iq2000_arch; +extern const bfd_arch_info_type bfd_m32c_arch; extern const bfd_arch_info_type bfd_m32r_arch; extern const bfd_arch_info_type bfd_m68hc11_arch; extern const bfd_arch_info_type bfd_m68hc12_arch; @@ -428,6 +455,7 @@ extern const bfd_arch_info_type bfd_mmix_arch; extern const bfd_arch_info_type bfd_mn10200_arch; extern const bfd_arch_info_type bfd_mn10300_arch; extern const bfd_arch_info_type bfd_msp430_arch; +extern const bfd_arch_info_type bfd_mt_arch; extern const bfd_arch_info_type bfd_ns32k_arch; extern const bfd_arch_info_type bfd_openrisc_arch; extern const bfd_arch_info_type bfd_or32_arch; @@ -449,6 +477,8 @@ extern const bfd_arch_info_type bfd_we32k_arch; extern const bfd_arch_info_type bfd_w65_arch; extern const bfd_arch_info_type bfd_xstormy16_arch; extern const bfd_arch_info_type bfd_xtensa_arch; +extern const bfd_arch_info_type bfd_xc16x_arch; +extern const bfd_arch_info_type bfd_z80_arch; extern const bfd_arch_info_type bfd_z8k_arch; static const bfd_arch_info_type * const bfd_archures_list[] = @@ -456,11 +486,11 @@ static const bfd_arch_info_type * const bfd_archures_list[] = #ifdef SELECT_ARCHITECTURES SELECT_ARCHITECTURES, #else - &bfd_a29k_arch, &bfd_alpha_arch, &bfd_arc_arch, &bfd_arm_arch, &bfd_avr_arch, + &bfd_bfin_arch, &bfd_cr16c_arch, &bfd_cris_arch, &bfd_crx_arch, @@ -479,6 +509,7 @@ static const bfd_arch_info_type * const bfd_archures_list[] = &bfd_ia64_arch, &bfd_ip2k_arch, &bfd_iq2000_arch, + &bfd_m32c_arch, &bfd_m32r_arch, &bfd_m68hc11_arch, &bfd_m68hc12_arch, @@ -490,6 +521,7 @@ static const bfd_arch_info_type * const bfd_archures_list[] = &bfd_mmix_arch, &bfd_mn10200_arch, &bfd_mn10300_arch, + &bfd_mt_arch, &bfd_msp430_arch, &bfd_ns32k_arch, &bfd_openrisc_arch, @@ -510,6 +542,8 @@ static const bfd_arch_info_type * const bfd_archures_list[] = &bfd_we32k_arch, &bfd_xstormy16_arch, &bfd_xtensa_arch, + &bfd_xc16x_arch, + &bfd_z80_arch, &bfd_z8k_arch, #endif 0 @@ -982,23 +1016,23 @@ bfd_default_scan (const bfd_arch_info_type *info, const char *string) break; case 5200: arch = bfd_arch_m68k; - number = bfd_mach_mcf5200; + number = bfd_mach_mcf_isa_a; break; case 5206: arch = bfd_arch_m68k; - number = bfd_mach_mcf5206e; + number = bfd_mach_mcf_isa_a_div_mac; break; case 5307: arch = bfd_arch_m68k; - number = bfd_mach_mcf5307; + number = bfd_mach_mcf_isa_a_div_mac; break; case 5407: arch = bfd_arch_m68k; - number = bfd_mach_mcf5407; + number = bfd_mach_mcf_isa_b_mac; break; case 5282: arch = bfd_arch_m68k; - number = bfd_mach_mcf528x; + number = bfd_mach_mcf_isa_b_usp_float_emac; break; case 32000: