Add support for the Infineon XC16X.
This commit is contained in:
		| @@ -1,3 +1,9 @@ | ||||
| 2006-02-17  Shrirang Khisti  <shrirangk@kpitcummins.com> | ||||
|             Anil Paranjape   <anilp1@kpitcummins.com> | ||||
|             Shilin Shakti    <shilins@kpitcummins.com> | ||||
|  | ||||
| 	* dis-asm.h (print_insn_xc16c): New prototype. | ||||
|  | ||||
| 2006-02-06  Steve Ellcey  <sje@cup.hp.com> | ||||
|  | ||||
| 	* elf/ia64.h (SHF_IA_64_HP_TLS): New. | ||||
|   | ||||
| @@ -267,6 +267,7 @@ extern int print_insn_sh64		(bfd_vma, disassemble_info *); | ||||
| extern int print_insn_sh64x_media	(bfd_vma, disassemble_info *); | ||||
| extern int print_insn_frv		(bfd_vma, disassemble_info *); | ||||
| extern int print_insn_iq2000		(bfd_vma, disassemble_info *); | ||||
| extern int print_insn_xc16x		(bfd_vma, disassemble_info *); | ||||
| extern int print_insn_m32c	(bfd_vma, disassemble_info *); | ||||
|  | ||||
| extern disassembler_ftype arc_get_disassembler (void *); | ||||
|   | ||||
| @@ -1,3 +1,11 @@ | ||||
| 2006-02-17  Shrirang Khisti  <shrirangk@kpitcummins.com> | ||||
|             Anil Paranjape   <anilp1@kpitcummins.com> | ||||
|             Shilin Shakti    <shilins@kpitcummins.com> | ||||
|  | ||||
| 	* common.h (EM_XC16X): New entry for xc16x cpu. | ||||
| 	Sort other EM_* numbers into numerical order. | ||||
| 	* xc16x.h: New file. | ||||
|    	 | ||||
| 2006-02-10  H.J. Lu  <hongjiu.lu@intel.com> | ||||
|  | ||||
| 	PR binutils/2258 | ||||
|   | ||||
| @@ -198,79 +198,80 @@ | ||||
|    unofficial e_machine number should eventually ask registry@caldera.com for | ||||
|    an officially blessed number to be added to the list above.	*/ | ||||
|  | ||||
| #define EM_PJ_OLD      99	/* picoJava */ | ||||
|  | ||||
| /* Cygnus PowerPC ELF backend.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_POWERPC 0x9025 | ||||
|  | ||||
| /* Old version of Sparc v9, from before the ABI; this should be | ||||
|    removed shortly.  */ | ||||
| #define EM_OLD_SPARCV9	11 | ||||
| /* Old version of Sparc v9, from before the ABI; | ||||
|    This should be removed shortly.  */ | ||||
| #define EM_OLD_SPARCV9		11 | ||||
|  | ||||
| /* Old version of PowerPC, this should be removed shortly. */ | ||||
| #define EM_PPC_OLD	17 | ||||
| #define EM_PPC_OLD		17 | ||||
|  | ||||
| /* (Deprecated) Temporary number for the OpenRISC processor.  */ | ||||
| #define EM_OR32		0x8472 | ||||
| /* picoJava */ | ||||
| #define EM_PJ_OLD      		99 | ||||
|  | ||||
| /* Renesas M32C and M16C.  */ | ||||
| #define EM_M32C			0xFEB0 | ||||
| /* AVR magic number.  Written in the absense of an ABI.  */ | ||||
| #define EM_AVR_OLD		0x1057 | ||||
|  | ||||
| /* Cygnus M32R ELF backend.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_M32R	0x9041 | ||||
| /* MSP430 magic number.  Written in the absense of everything.  */ | ||||
| #define EM_MSP430_OLD		0x1059 | ||||
|  | ||||
| /* Alpha backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_ALPHA	0x9026 | ||||
|  | ||||
| /* old S/390 backend magic number. Written in the absence of an ABI.  */ | ||||
| #define EM_S390_OLD	0xa390 | ||||
|  | ||||
| /* D10V backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_D10V	0x7650 | ||||
|  | ||||
| /* D30V backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_D30V	0x7676 | ||||
|  | ||||
| /* V850 backend magic number.  Written in the absense of an ABI.  */ | ||||
| #define EM_CYGNUS_V850	0x9080 | ||||
|  | ||||
| /* mn10200 and mn10300 backend magic numbers. | ||||
|    Written in the absense of an ABI.  */ | ||||
| #define EM_CYGNUS_MN10200	0xdead | ||||
| #define EM_CYGNUS_MN10300	0xbeef | ||||
| /* Morpho MT.   Written in the absense of an ABI.  */ | ||||
| #define EM_MT                   0x2530 | ||||
|  | ||||
| /* FR30 magic number - no EABI available.  */ | ||||
| #define EM_CYGNUS_FR30		0x3330 | ||||
|  | ||||
| /* AVR magic number | ||||
|    Written in the absense of an ABI.  */ | ||||
| #define EM_AVR_OLD		0x1057 | ||||
|  | ||||
| /* OpenRISC magic number | ||||
|    Written in the absense of an ABI.  */ | ||||
| /* OpenRISC magic number.  Written in the absense of an ABI.  */ | ||||
| #define EM_OPENRISC_OLD		0x3426 | ||||
|  | ||||
| /* DLX magic number | ||||
|    Written in the absense of an ABI.  */ | ||||
| /* DLX magic number.  Written in the absense of an ABI.  */ | ||||
| #define EM_DLX			0x5aa5 | ||||
|  | ||||
| #define EM_XSTORMY16		0xad45 | ||||
|  | ||||
| /* FRV magic number - no EABI available??.  */ | ||||
| #define EM_CYGNUS_FRV		0x5441 | ||||
|  | ||||
| /* Ubicom IP2xxx; no ABI */ | ||||
| /* Infineon Technologies 16-bit microcontroller with C166-V2 core.  */ | ||||
| #define EM_XC16X   		0x4688 | ||||
|  | ||||
| /* D10V backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_D10V		0x7650 | ||||
|  | ||||
| /* D30V backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_D30V		0x7676 | ||||
|  | ||||
| /* Ubicom IP2xxx;   Written in the absense of an ABI.  */ | ||||
| #define EM_IP2K_OLD		0x8217 | ||||
|  | ||||
| #define EM_MT                   0x2530  /* Morpho MT; no ABI */ | ||||
| /* (Deprecated) Temporary number for the OpenRISC processor.  */ | ||||
| #define EM_OR32			0x8472 | ||||
|  | ||||
| /* MSP430 magic number | ||||
|       Written in the absense everything.  */ | ||||
| #define EM_MSP430_OLD		0x1059 | ||||
| /* Cygnus PowerPC ELF backend.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_POWERPC 	0x9025 | ||||
|  | ||||
| /* Alpha backend magic number.  Written in the absence of an ABI.  */ | ||||
| #define EM_ALPHA		0x9026 | ||||
|  | ||||
| /* Cygnus M32R ELF backend.  Written in the absence of an ABI.  */ | ||||
| #define EM_CYGNUS_M32R		0x9041 | ||||
|  | ||||
| /* V850 backend magic number.  Written in the absense of an ABI.  */ | ||||
| #define EM_CYGNUS_V850		0x9080 | ||||
|  | ||||
| /* old S/390 backend magic number. Written in the absence of an ABI.  */ | ||||
| #define EM_S390_OLD		0xa390 | ||||
|  | ||||
| /* Old, unofficial value for Xtensa.  */ | ||||
| #define EM_XTENSA_OLD		0xabc7 | ||||
|  | ||||
| #define EM_XSTORMY16		0xad45 | ||||
|  | ||||
| /* mn10200 and mn10300 backend magic numbers. | ||||
|    Written in the absense of an ABI.  */ | ||||
| #define EM_CYGNUS_MN10300	0xbeef | ||||
| #define EM_CYGNUS_MN10200	0xdead | ||||
|  | ||||
| /* Renesas M32C and M16C.  */ | ||||
| #define EM_M32C			0xFEB0 | ||||
|  | ||||
| /* Vitesse IQ2000.  */ | ||||
| #define EM_IQ2000		0xFEBA | ||||
|  | ||||
|   | ||||
							
								
								
									
										41
									
								
								include/elf/xc16x.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								include/elf/xc16x.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | ||||
| /* Infineon XC16X ELF support for BFD. | ||||
|    Copyright 2006 Free Software Foundation, Inc. | ||||
|    Contributed by KPIT Cummins Infosystems  | ||||
|  | ||||
|    This file is part of BFD, the Binary File Descriptor library. | ||||
|  | ||||
|    This program is free software; you can redistribute it and/or modify | ||||
|    it under the terms of the GNU General Public License as published by | ||||
|    the Free Software Foundation; either version 2 of the License, or | ||||
|    (at your option) any later version. | ||||
|  | ||||
|    This program is distributed in the hope that it will be useful, | ||||
|    but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|    GNU General Public License for more details. | ||||
|  | ||||
|    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., | ||||
|    51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */ | ||||
|  | ||||
|  | ||||
| #ifndef _ELF_XC16X_H | ||||
| #define _ELF_XC16X_H | ||||
|  | ||||
| #include "elf/reloc-macros.h" | ||||
|  | ||||
| /* Relocations.  */ | ||||
| START_RELOC_NUMBERS (elf_xc16x_reloc_type) | ||||
|   RELOC_NUMBER (R_XC16X_NONE, 0) | ||||
|   RELOC_NUMBER (R_XC16X_ABS_8, 1) | ||||
|   RELOC_NUMBER (R_XC16X_ABS_16, 2) | ||||
|   RELOC_NUMBER (R_XC16X_ABS_32, 3) | ||||
|   RELOC_NUMBER (R_XC16X_8_PCREL, 4) | ||||
|   RELOC_NUMBER (R_XC16X_PAG, 5) | ||||
|   RELOC_NUMBER (R_XC16X_POF, 6) | ||||
|   RELOC_NUMBER (R_XC16X_SEG, 7) | ||||
|   RELOC_NUMBER (R_XC16X_SOF, 8) | ||||
|  | ||||
| END_RELOC_NUMBERS (R_XC16X_max) | ||||
|  | ||||
| #endif /* _ELF_XC16X_H */ | ||||
		Reference in New Issue
	
	Block a user