xref: /freebsd/contrib/file/magic/Magdir/arm (revision 7fdf597e96a02165cfe22ff357b857d5fa15ed8a)
1#------------------------------------------------------------------------------
2# $File: arm,v 1.4 2024/02/18 14:15:22 christos Exp $
3# arm: file(1) magic for ARM COFF
4#
5# https://docs.microsoft.com/en-us/windows/win32/debug/pe-format
6
7# Aarch64
80	leshort		0xaa64
9# test for unused flag bits in f_flags
10>18	uleshort&0x8E80	0
11# use little endian variant of subroutine to
12# display name+variables+flags for common object formatted files
13>>0	use				display-coff
14!:strength -10
15
16# ARM
170	leshort		0x01c0
18# test for unused flag bits in f_flags
19>18	uleshort&0x8E80	0
20# use little endian variant of subroutine to
21# display name+variables+flags for common object formatted files
22>>0	use				display-coff
23!:strength -10
24
25# ARM Thumb
260	leshort		0x01c2
27# test for unused flag bits in f_flags
28>18	uleshort&0x8E80	0
29# use little endian variant of subroutine to
30# display name+variables+flags for common object formatted files
31>>0	use				display-coff
32!:strength -10
33
34# ARMv7 Thumb
350	leshort		0x01c4
36# test for unused flag bits in f_flags
37>18	uleshort&0x8E80	0
38# use little endian variant of subroutine to
39# display name+variables+flags for common object formatted files
40>>0	use				display-coff
41!:strength -10
42
43# ARM64 Compiled Hybrid PE X86
440	leshort		0x3a64
45# test for unused flag bits in f_flags
46>18	uleshort&0x8E80	0
47# use little endian variant of subroutine to
48# display name+variables+flags for common object formatted files
49>>0	use				display-coff
50!:strength -10
51
52# ARM64EC
530	leshort		0xa641
54# test for unused flag bits in f_flags
55>18	uleshort&0x8E80	0
56# use little endian variant of subroutine to
57# display name+variables+flags for common object formatted files
58>>0	use				display-coff
59!:strength -10
60