1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23: #include "sysdep.h"
24: #include "bfd.h"
25: #include "libbfd.h"
26:
27: #define ARC(mach, print_name, default_p, next) \
28: { \
29: 32, \
30: 32, \
31: 8, \
32: bfd_arch_arc, \
33: mach, \
34: "arc", \
35: print_name, \
36: 4, \
37: default_p, \
38: bfd_default_compatible, \
39: bfd_default_scan, \
40: next, \
41: }
42:
43: static const bfd_arch_info_type arch_info_struct[] =
44: {
45: ARC ( bfd_mach_arc_5, "arc5", FALSE, &arch_info_struct[1] ),
46: ARC ( bfd_mach_arc_5, "base", FALSE, &arch_info_struct[2] ),
47: ARC ( bfd_mach_arc_6, "arc6", FALSE, &arch_info_struct[3] ),
48: ARC ( bfd_mach_arc_7, "arc7", FALSE, &arch_info_struct[4] ),
49: ARC ( bfd_mach_arc_8, "arc8", FALSE, NULL ),
50: };
51:
52: const bfd_arch_info_type bfd_arc_arch =
53: ARC ( bfd_mach_arc_6, "arc", TRUE, &arch_info_struct[0] );
54:
55:
56:
57:
58:
59:
60: int arc_get_mach PARAMS ((char *));
61:
62: int
63: arc_get_mach (name)
64: char *name;
65: {
66: const bfd_arch_info_type *p;
67:
68: for (p = &bfd_arc_arch; p != NULL; p = p->next)
69: if (strcmp (name, p->printable_name) == 0)
70: return p->mach;
71: return -1;
72: }