xref: /minix/external/bsd/file/dist/magic/magdir/elf (revision 0a6a1f1d)
1ef01931fSBen Gras
2ef01931fSBen Gras#------------------------------------------------------------------------------
3*0a6a1f1dSLionel Sambuc# $File: elf,v 1.68 2014/09/19 19:05:57 christos Exp $
4ef01931fSBen Gras# elf:  file(1) magic for ELF executables
5ef01931fSBen Gras#
6ef01931fSBen Gras# We have to check the byte order flag to see what byte order all the
7ef01931fSBen Gras# other stuff in the header is in.
8ef01931fSBen Gras#
9ef01931fSBen Gras# What're the correct byte orders for the nCUBE and the Fujitsu VPP500?
10ef01931fSBen Gras#
11ef01931fSBen Gras# Created by: unknown
12ef01931fSBen Gras# Modified by (1): Daniel Quinlan <quinlan@yggdrasil.com>
13ef01931fSBen Gras# Modified by (2): Peter Tobias <tobias@server.et-inf.fho-emden.de> (core support)
14ef01931fSBen Gras# Modified by (3): Christian 'Dr. Disk' Hechelmann <drdisk@ds9.au.s.shuttle.de> (fix of core support)
15ef01931fSBen Gras# Modified by (4): <gerardo.cacciari@gmail.com> (VMS Itanium)
16ef01931fSBen Gras# Modified by (5): Matthias Urlichs <smurf@debian.org> (Listing of many architectures)
1784d9c625SLionel Sambuc
1884d9c625SLionel Sambuc0	name		elf-le
1984d9c625SLionel Sambuc>16	leshort		0		no file type,
2084d9c625SLionel Sambuc!:mime	application/octet-stream
2184d9c625SLionel Sambuc>16	leshort		1		relocatable,
2284d9c625SLionel Sambuc!:mime	application/x-object
2384d9c625SLionel Sambuc>16	leshort		2		executable,
2484d9c625SLionel Sambuc!:mime	application/x-executable
2584d9c625SLionel Sambuc>16	leshort		3		shared object,
2684d9c625SLionel Sambuc!:mime	application/x-sharedlib
2784d9c625SLionel Sambuc>16	leshort		4		core file
2884d9c625SLionel Sambuc!:mime	application/x-coredump
2984d9c625SLionel Sambuc# Core file detection is not reliable.
3084d9c625SLionel Sambuc#>>>(0x38+0xcc) string	>\0		of '%s'
3184d9c625SLionel Sambuc#>>>(0x38+0x10) lelong	>0		(signal %d),
3284d9c625SLionel Sambuc>16	leshort		&0xff00		processor-specific,
33*0a6a1f1dSLionel Sambuc>18	clear		x
3484d9c625SLionel Sambuc>18	leshort		0		no machine,
35*0a6a1f1dSLionel Sambuc>18	leshort		1		AT&T WE32100,
36*0a6a1f1dSLionel Sambuc>18	leshort		2		SPARC,
3784d9c625SLionel Sambuc>18	leshort		3		Intel 80386,
38*0a6a1f1dSLionel Sambuc>18	leshort		4		Motorola m68k,
3984d9c625SLionel Sambuc>>4	byte		1
40*0a6a1f1dSLionel Sambuc>>>36	lelong		&0x01000000	68000,
41*0a6a1f1dSLionel Sambuc>>>36	lelong		&0x00810000	CPU32,
42*0a6a1f1dSLionel Sambuc>>>36	lelong		0		68020,
43*0a6a1f1dSLionel Sambuc>18	leshort		5		Motorola m88k,
4484d9c625SLionel Sambuc>18	leshort		6		Intel 80486,
4584d9c625SLionel Sambuc>18	leshort		7		Intel 80860,
4684d9c625SLionel Sambuc# The official e_machine number for MIPS is now #8, regardless of endianness.
4784d9c625SLionel Sambuc# The second number (#10) will be deprecated later. For now, we still
4884d9c625SLionel Sambuc# say something if #10 is encountered, but only gory details for #8.
4984d9c625SLionel Sambuc>18	leshort		8		MIPS,
5084d9c625SLionel Sambuc>>4	byte		1
5184d9c625SLionel Sambuc>>>36	lelong		&0x20		N32
5284d9c625SLionel Sambuc>18	leshort		10		MIPS,
5384d9c625SLionel Sambuc>>4	byte		1
5484d9c625SLionel Sambuc>>>36	lelong		&0x20		N32
5584d9c625SLionel Sambuc>18	leshort		8
5684d9c625SLionel Sambuc# only for 32-bit
5784d9c625SLionel Sambuc>>4	byte		1
5884d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x00000000	MIPS-I
5984d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x10000000	MIPS-II
6084d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x20000000	MIPS-III
6184d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x30000000	MIPS-IV
6284d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x40000000	MIPS-V
6384d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x50000000	MIPS32
6484d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x60000000	MIPS64
6584d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x70000000	MIPS32 rel2
6684d9c625SLionel Sambuc>>>36  lelong&0xf0000000	0x80000000	MIPS64 rel2
6784d9c625SLionel Sambuc# only for 64-bit
6884d9c625SLionel Sambuc>>4	byte		2
6984d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x00000000	MIPS-I
7084d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x10000000	MIPS-II
7184d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x20000000	MIPS-III
7284d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x30000000	MIPS-IV
7384d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x40000000	MIPS-V
7484d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x50000000	MIPS32
7584d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x60000000	MIPS64
7684d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x70000000	MIPS32 rel2
7784d9c625SLionel Sambuc>>>48  lelong&0xf0000000	0x80000000	MIPS64 rel2
78*0a6a1f1dSLionel Sambuc>18	leshort		9		Amdahl,
7984d9c625SLionel Sambuc>18	leshort		10		MIPS (deprecated),
80*0a6a1f1dSLionel Sambuc>18	leshort		11		RS6000,
81*0a6a1f1dSLionel Sambuc>18	leshort		15		PA-RISC,
8284d9c625SLionel Sambuc# only for 32-bit
8384d9c625SLionel Sambuc>>4	byte		1
8484d9c625SLionel Sambuc>>>38	leshort		0x0214		2.0
8584d9c625SLionel Sambuc>>>36	leshort		&0x0008		(LP64)
8684d9c625SLionel Sambuc# only for 64-bit
8784d9c625SLionel Sambuc>>4	byte		2
8884d9c625SLionel Sambuc>>>50	leshort		0x0214		2.0
8984d9c625SLionel Sambuc>>>48	leshort		&0x0008		(LP64)
9084d9c625SLionel Sambuc>18	leshort		16		nCUBE,
9184d9c625SLionel Sambuc>18	leshort		17		Fujitsu VPP500,
9284d9c625SLionel Sambuc>18	leshort		18		SPARC32PLUS,
9384d9c625SLionel Sambuc# only for 32-bit
9484d9c625SLionel Sambuc>>4	byte		1
9584d9c625SLionel Sambuc>>>36	lelong&0xffff00	0x000100	V8+ Required,
9684d9c625SLionel Sambuc>>>36	lelong&0xffff00	0x000200	Sun UltraSPARC1 Extensions Required,
9784d9c625SLionel Sambuc>>>36	lelong&0xffff00	0x000400	HaL R1 Extensions Required,
9884d9c625SLionel Sambuc>>>36	lelong&0xffff00	0x000800	Sun UltraSPARC3 Extensions Required,
99*0a6a1f1dSLionel Sambuc>18	leshort		19		Intel 80960,
10084d9c625SLionel Sambuc>18	leshort		20		PowerPC or cisco 4500,
10184d9c625SLionel Sambuc>18	leshort		21		64-bit PowerPC or cisco 7500,
10284d9c625SLionel Sambuc>18	leshort		22		IBM S/390,
10384d9c625SLionel Sambuc>18	leshort		23		Cell SPU,
10484d9c625SLionel Sambuc>18	leshort		24		cisco SVIP,
10584d9c625SLionel Sambuc>18	leshort		25		cisco 7200,
10684d9c625SLionel Sambuc>18	leshort		36		NEC V800 or cisco 12000,
10784d9c625SLionel Sambuc>18	leshort		37		Fujitsu FR20,
10884d9c625SLionel Sambuc>18	leshort		38		TRW RH-32,
10984d9c625SLionel Sambuc>18	leshort		39		Motorola RCE,
11084d9c625SLionel Sambuc>18	leshort		40		ARM,
11184d9c625SLionel Sambuc>>4	byte		1
11284d9c625SLionel Sambuc>>>36	lelong&0xff000000	0x04000000	EABI4
11384d9c625SLionel Sambuc>>>36	lelong&0xff000000	0x05000000	EABI5
11484d9c625SLionel Sambuc>>>36	lelong		&0x00800000	BE8
11584d9c625SLionel Sambuc>>>36	lelong		&0x00400000	LE8
11684d9c625SLionel Sambuc>18	leshort		41		Alpha,
11784d9c625SLionel Sambuc>18	leshort		42		Renesas SH,
11884d9c625SLionel Sambuc>18	leshort		43		SPARC V9,
11984d9c625SLionel Sambuc>>4	byte		2
12084d9c625SLionel Sambuc>>>48	lelong&0xffff00	0x000200	Sun UltraSPARC1 Extensions Required,
12184d9c625SLionel Sambuc>>>48	lelong&0xffff00	0x000400	HaL R1 Extensions Required,
12284d9c625SLionel Sambuc>>>48	lelong&0xffff00	0x000800	Sun UltraSPARC3 Extensions Required,
12384d9c625SLionel Sambuc>>>48	lelong&0x3	0		total store ordering,
12484d9c625SLionel Sambuc>>>48	lelong&0x3	1		partial store ordering,
12584d9c625SLionel Sambuc>>>48	lelong&0x3	2		relaxed memory ordering,
12684d9c625SLionel Sambuc>18	leshort		44		Siemens Tricore Embedded Processor,
12784d9c625SLionel Sambuc>18	leshort		45		Argonaut RISC Core, Argonaut Technologies Inc.,
12884d9c625SLionel Sambuc>18	leshort		46		Renesas H8/300,
12984d9c625SLionel Sambuc>18	leshort		47		Renesas H8/300H,
13084d9c625SLionel Sambuc>18	leshort		48		Renesas H8S,
13184d9c625SLionel Sambuc>18	leshort		49		Renesas H8/500,
13284d9c625SLionel Sambuc>18	leshort		50		IA-64,
13384d9c625SLionel Sambuc>18	leshort		51		Stanford MIPS-X,
13484d9c625SLionel Sambuc>18	leshort		52		Motorola Coldfire,
13584d9c625SLionel Sambuc>18	leshort		53		Motorola M68HC12,
13684d9c625SLionel Sambuc>18	leshort		54		Fujitsu MMA,
13784d9c625SLionel Sambuc>18	leshort		55		Siemens PCP,
13884d9c625SLionel Sambuc>18	leshort		56		Sony nCPU,
13984d9c625SLionel Sambuc>18	leshort		57		Denso NDR1,
14084d9c625SLionel Sambuc>18	leshort		58		Start*Core,
14184d9c625SLionel Sambuc>18	leshort		59		Toyota ME16,
14284d9c625SLionel Sambuc>18	leshort		60		ST100,
14384d9c625SLionel Sambuc>18	leshort		61		Tinyj emb.,
14484d9c625SLionel Sambuc>18	leshort		62		x86-64,
14584d9c625SLionel Sambuc>18	leshort		63		Sony DSP,
146*0a6a1f1dSLionel Sambuc>18	leshort		64		DEC PDP-10,
147*0a6a1f1dSLionel Sambuc>18	leshort		65		DEC PDP-11,
14884d9c625SLionel Sambuc>18	leshort		66		FX66,
14984d9c625SLionel Sambuc>18	leshort		67		ST9+ 8/16 bit,
15084d9c625SLionel Sambuc>18	leshort		68		ST7 8 bit,
15184d9c625SLionel Sambuc>18	leshort		69		MC68HC16,
15284d9c625SLionel Sambuc>18	leshort		70		MC68HC11,
15384d9c625SLionel Sambuc>18	leshort		71		MC68HC08,
15484d9c625SLionel Sambuc>18	leshort		72		MC68HC05,
15584d9c625SLionel Sambuc>18	leshort		73		SGI SVx or Cray NV1,
15684d9c625SLionel Sambuc>18	leshort		74		ST19 8 bit,
15784d9c625SLionel Sambuc>18	leshort		75		Digital VAX,
15884d9c625SLionel Sambuc>18	leshort		76		Axis cris,
15984d9c625SLionel Sambuc>18	leshort		77		Infineon 32-bit embedded,
16084d9c625SLionel Sambuc>18	leshort		78		Element 14 64-bit DSP,
16184d9c625SLionel Sambuc>18	leshort		79		LSI Logic 16-bit DSP,
16284d9c625SLionel Sambuc>18	leshort		80		MMIX,
16384d9c625SLionel Sambuc>18	leshort		81		Harvard machine-independent,
16484d9c625SLionel Sambuc>18	leshort		82		SiTera Prism,
16584d9c625SLionel Sambuc>18	leshort		83		Atmel AVR 8-bit,
16684d9c625SLionel Sambuc>18	leshort		84		Fujitsu FR30,
16784d9c625SLionel Sambuc>18	leshort		85		Mitsubishi D10V,
16884d9c625SLionel Sambuc>18	leshort		86		Mitsubishi D30V,
16984d9c625SLionel Sambuc>18	leshort		87		NEC v850,
17084d9c625SLionel Sambuc>18	leshort		88		Renesas M32R,
17184d9c625SLionel Sambuc>18	leshort		89		Matsushita MN10300,
17284d9c625SLionel Sambuc>18	leshort		90		Matsushita MN10200,
17384d9c625SLionel Sambuc>18	leshort		91		picoJava,
17484d9c625SLionel Sambuc>18	leshort		92		OpenRISC,
17584d9c625SLionel Sambuc>18	leshort		93		ARC Cores Tangent-A5,
17684d9c625SLionel Sambuc>18	leshort		94		Tensilica Xtensa,
177*0a6a1f1dSLionel Sambuc>18	leshort		95		Alphamosaic VideoCore,
178*0a6a1f1dSLionel Sambuc>18	leshort		96		Thompson Multimedia,
17984d9c625SLionel Sambuc>18	leshort		97		NatSemi 32k,
180*0a6a1f1dSLionel Sambuc>18	leshort		98		Tenor Network TPC,
181*0a6a1f1dSLionel Sambuc>18	leshort		99		Trebia SNP 1000,
182*0a6a1f1dSLionel Sambuc>18	leshort		100		STMicroelectronics ST200,
183*0a6a1f1dSLionel Sambuc>18	leshort		101		Ubicom IP2022,
184*0a6a1f1dSLionel Sambuc>18	leshort		102		MAX Processor,
185*0a6a1f1dSLionel Sambuc>18	leshort		103		NatSemi CompactRISC,
186*0a6a1f1dSLionel Sambuc>18	leshort		104		Fujitsu F2MC16,
187*0a6a1f1dSLionel Sambuc>18	leshort		105		TI msp430,
18884d9c625SLionel Sambuc>18	leshort		106		Analog Devices Blackfin,
189*0a6a1f1dSLionel Sambuc>18	leshort		107		S1C33 Family of Seiko Epson,
190*0a6a1f1dSLionel Sambuc>18	leshort		108		Sharp embedded,
191*0a6a1f1dSLionel Sambuc>18	leshort		109		Arca RISC,
192*0a6a1f1dSLionel Sambuc>18	leshort		110		PKU-Unity Ltd.,
193*0a6a1f1dSLionel Sambuc>18	leshort		111		eXcess: 16/32/64-bit,
194*0a6a1f1dSLionel Sambuc>18	leshort		112		Icera Deep Execution Processor,
19584d9c625SLionel Sambuc>18	leshort		113		Altera Nios II,
196*0a6a1f1dSLionel Sambuc>18	leshort		114		NatSemi CRX,
197*0a6a1f1dSLionel Sambuc>18	leshort		115		Motorola XGATE,
198*0a6a1f1dSLionel Sambuc>18	leshort		116		Infineon C16x/XC16x,
199*0a6a1f1dSLionel Sambuc>18	leshort		117		Renesas M16C series,
200*0a6a1f1dSLionel Sambuc>18	leshort		118		Microchip dsPIC30F,
201*0a6a1f1dSLionel Sambuc>18	leshort		119		Freescale RISC core,
202*0a6a1f1dSLionel Sambuc>18	leshort		120		Renesas M32C series,
203*0a6a1f1dSLionel Sambuc>18	leshort		131		Altium TSK3000 core,
204*0a6a1f1dSLionel Sambuc>18	leshort		132		Freescale RS08,
205*0a6a1f1dSLionel Sambuc>18	leshort		134		Cyan Technology eCOG2,
206*0a6a1f1dSLionel Sambuc>18	leshort		135		Sunplus S+core7 RISC,
207*0a6a1f1dSLionel Sambuc>18	leshort		136		New Japan Radio (NJR) 24-bit DSP,
208*0a6a1f1dSLionel Sambuc>18	leshort		137		Broadcom VideoCore III,
209*0a6a1f1dSLionel Sambuc>18	leshort		138		LatticeMico32,
210*0a6a1f1dSLionel Sambuc>18	leshort		139		Seiko Epson C17 family,
211*0a6a1f1dSLionel Sambuc>18	leshort		140		TI TMS320C6000 DSP family,
212*0a6a1f1dSLionel Sambuc>18	leshort		141		TI TMS320C2000 DSP family,
213*0a6a1f1dSLionel Sambuc>18	leshort		142		TI TMS320C55x DSP family,
214*0a6a1f1dSLionel Sambuc>18	leshort		160		STMicroelectronics 64bit VLIW DSP,
215*0a6a1f1dSLionel Sambuc>18	leshort		161		Cypress M8C,
216*0a6a1f1dSLionel Sambuc>18	leshort		162		Renesas R32C series,
217*0a6a1f1dSLionel Sambuc>18	leshort		163		NXP TriMedia family,
218*0a6a1f1dSLionel Sambuc>18	leshort		164		QUALCOMM DSP6,
219*0a6a1f1dSLionel Sambuc>18	leshort		165		Intel 8051 and variants,
220*0a6a1f1dSLionel Sambuc>18	leshort		166		STMicroelectronics STxP7x family,
221*0a6a1f1dSLionel Sambuc>18	leshort		167		Andes embedded RISC,
222*0a6a1f1dSLionel Sambuc>18	leshort		168		Cyan eCOG1X family,
223*0a6a1f1dSLionel Sambuc>18	leshort		169		Dallas MAXQ30,
224*0a6a1f1dSLionel Sambuc>18	leshort		170		New Japan Radio (NJR) 16-bit DSP,
225*0a6a1f1dSLionel Sambuc>18	leshort		171		M2000 Reconfigurable RISC,
226*0a6a1f1dSLionel Sambuc>18	leshort		172		Cray NV2 vector architecture,
227*0a6a1f1dSLionel Sambuc>18	leshort		173		Renesas RX family,
22884d9c625SLionel Sambuc>18	leshort		174		META,
229*0a6a1f1dSLionel Sambuc>18	leshort		175		MCST Elbrus,
230*0a6a1f1dSLionel Sambuc>18	leshort		176		Cyan Technology eCOG16 family,
231*0a6a1f1dSLionel Sambuc>18	leshort		177		NatSemi CompactRISC,
232*0a6a1f1dSLionel Sambuc>18	leshort		178		Freescale Extended Time Processing Unit,
233*0a6a1f1dSLionel Sambuc>18	leshort		179		Infineon SLE9X,
234*0a6a1f1dSLionel Sambuc>18	leshort		180		Intel L1OM,
235*0a6a1f1dSLionel Sambuc>18	leshort		181		Intel K1OM,
23684d9c625SLionel Sambuc>18	leshort		183		ARM aarch64,
237*0a6a1f1dSLionel Sambuc>18	leshort		185		Atmel 32-bit family,
238*0a6a1f1dSLionel Sambuc>18	leshort		186		STMicroeletronics STM8 8-bit,
23984d9c625SLionel Sambuc>18	leshort		187		Tilera TILE64,
24084d9c625SLionel Sambuc>18	leshort		188		Tilera TILEPro,
241*0a6a1f1dSLionel Sambuc>18	leshort		189		Xilinx MicroBlaze 32-bit RISC,
242*0a6a1f1dSLionel Sambuc>18	leshort		190		NVIDIA CUDA architecture,
24384d9c625SLionel Sambuc>18	leshort		191		Tilera TILE-Gx,
244*0a6a1f1dSLionel Sambuc>18	leshort		197		Renesas RL78 family,
245*0a6a1f1dSLionel Sambuc>18	leshort		199		Renesas 78K0R,
246*0a6a1f1dSLionel Sambuc>18	leshort		200		Freescale 56800EX,
247*0a6a1f1dSLionel Sambuc>18	leshort		201		Beyond BA1,
248*0a6a1f1dSLionel Sambuc>18	leshort		202		Beyond BA2,
249*0a6a1f1dSLionel Sambuc>18	leshort		203		XMOS xCORE,
250*0a6a1f1dSLionel Sambuc>18	leshort		204		Microchip 8-bit PIC(r),
251*0a6a1f1dSLionel Sambuc>18	leshort		210		KM211 KM32,
252*0a6a1f1dSLionel Sambuc>18	leshort		211		KM211 KMX32,
253*0a6a1f1dSLionel Sambuc>18	leshort		212		KM211 KMX16,
254*0a6a1f1dSLionel Sambuc>18	leshort		213		KM211 KMX8,
255*0a6a1f1dSLionel Sambuc>18	leshort		214		KM211 KVARC,
256*0a6a1f1dSLionel Sambuc>18	leshort		215		Paneve CDP,
257*0a6a1f1dSLionel Sambuc>18	leshort		216		Cognitive Smart Memory,
258*0a6a1f1dSLionel Sambuc>18	leshort		217		iCelero CoolEngine,
259*0a6a1f1dSLionel Sambuc>18	leshort		218		Nanoradio Optimized RISC,
260*0a6a1f1dSLionel Sambuc>18	leshort		243		UCB RISC-V,
261*0a6a1f1dSLionel Sambuc>18	leshort		0x1057		AVR (unofficial),
262*0a6a1f1dSLionel Sambuc>18	leshort		0x1059		MSP430 (unofficial),
263*0a6a1f1dSLionel Sambuc>18	leshort		0x1223		Adapteva Epiphany (unofficial),
264*0a6a1f1dSLionel Sambuc>18	leshort		0x2530		Morpho MT (unofficial),
265*0a6a1f1dSLionel Sambuc>18	leshort		0x3330		FR30 (unofficial),
26684d9c625SLionel Sambuc>18	leshort		0x3426		OpenRISC (obsolete),
267*0a6a1f1dSLionel Sambuc>18	leshort		0x4688		Infineon C166 (unofficial),
268*0a6a1f1dSLionel Sambuc>18	leshort		0x5441		Cygnus FRV (unofficial),
269*0a6a1f1dSLionel Sambuc>18	leshort		0x5aa5		DLX (unofficial),
270*0a6a1f1dSLionel Sambuc>18	leshort		0x7650		Cygnus D10V (unofficial),
271*0a6a1f1dSLionel Sambuc>18	leshort		0x7676		Cygnus D30V (unofficial),
272*0a6a1f1dSLionel Sambuc>18	leshort		0x8217		Ubicom IP2xxx (unofficial),
27384d9c625SLionel Sambuc>18	leshort		0x8472		OpenRISC (obsolete),
274*0a6a1f1dSLionel Sambuc>18	leshort		0x9025		Cygnus PowerPC (unofficial),
27584d9c625SLionel Sambuc>18	leshort		0x9026		Alpha (unofficial),
276*0a6a1f1dSLionel Sambuc>18	leshort		0x9041		Cygnus M32R (unofficial),
277*0a6a1f1dSLionel Sambuc>18	leshort		0x9080		Cygnus V850 (unofficial),
278*0a6a1f1dSLionel Sambuc>18	leshort		0xa390		IBM S/390 (obsolete),
279*0a6a1f1dSLionel Sambuc>18	leshort		0xabc7		Old Xtensa (unofficial),
280*0a6a1f1dSLionel Sambuc>18	leshort		0xad45		xstormy16 (unofficial),
281*0a6a1f1dSLionel Sambuc>18	leshort		0xbaab		Old MicroBlaze (unofficial),,
282*0a6a1f1dSLionel Sambuc>18	leshort		0xbeef		Cygnus MN10300 (unofficial),
283*0a6a1f1dSLionel Sambuc>18	leshort		0xdead		Cygnus MN10200 (unofficial),
284*0a6a1f1dSLionel Sambuc>18	leshort		0xf00d		Toshiba MeP (unofficial),
285*0a6a1f1dSLionel Sambuc>18	leshort		0xfeb0		Renesas M32C (unofficial),
286*0a6a1f1dSLionel Sambuc>18	leshort		0xfeba		Vitesse IQ2000 (unofficial),
287*0a6a1f1dSLionel Sambuc>18	leshort		0xfebb		NIOS (unofficial),
288*0a6a1f1dSLionel Sambuc>18	leshort		0xfeed		Moxie (unofficial),
289*0a6a1f1dSLionel Sambuc>18	default		x
290*0a6a1f1dSLionel Sambuc>>18	leshort		x		*unknown arch 0x%x*
29184d9c625SLionel Sambuc>20	lelong		0		invalid version
29284d9c625SLionel Sambuc>20	lelong		1		version 1
29384d9c625SLionel Sambuc
294ef01931fSBen Gras0	string		\177ELF		ELF
29584d9c625SLionel Sambuc!:strength *2
296ef01931fSBen Gras>4	byte		0		invalid class
297ef01931fSBen Gras>4	byte		1		32-bit
298ef01931fSBen Gras>4	byte		2		64-bit
299ef01931fSBen Gras>5	byte		0		invalid byte order
300ef01931fSBen Gras>5	byte		1		LSB
30184d9c625SLionel Sambuc>>0	use		elf-le
302ef01931fSBen Gras>5	byte		2		MSB
30384d9c625SLionel Sambuc>>0	use		\^elf-le
304ef01931fSBen Gras# Up to now only 0, 1 and 2 are defined; I've seen a file with 0x83, it seemed
305ef01931fSBen Gras# like proper ELF, but extracting the string had bad results.
306ef01931fSBen Gras>4      byte            <0x80
307ef01931fSBen Gras>>8	string		>\0		(%s)
308ef01931fSBen Gras>8	string		\0
309ef01931fSBen Gras>>7	byte		0		(SYSV)
310ef01931fSBen Gras>>7	byte		1		(HP-UX)
311ef01931fSBen Gras>>7	byte		2		(NetBSD)
312ef01931fSBen Gras>>7	byte		3		(GNU/Linux)
313ef01931fSBen Gras>>7	byte		4		(GNU/Hurd)
314ef01931fSBen Gras>>7	byte		5		(86Open)
315ef01931fSBen Gras>>7	byte		6		(Solaris)
316ef01931fSBen Gras>>7	byte		7		(Monterey)
317ef01931fSBen Gras>>7	byte		8		(IRIX)
318ef01931fSBen Gras>>7	byte		9		(FreeBSD)
319ef01931fSBen Gras>>7	byte		10		(Tru64)
320ef01931fSBen Gras>>7	byte		11		(Novell Modesto)
321ef01931fSBen Gras>>7	byte		12		(OpenBSD)
322ef01931fSBen Gras>8      string          \2
323ef01931fSBen Gras>>7     byte            13              (OpenVMS)
324ef01931fSBen Gras>>7	byte		97		(ARM)
325ef01931fSBen Gras>>7	byte		255		(embedded)
326