aboutsummaryrefslogtreecommitdiff
path: root/bfd/targets.c
blob: 22cda5c8c7aeaf21b3cff2f50451c625cd5b1ff9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
/* Copyright (C) 1990, 1991 Free Software Foundation, Inc.

This file is part of BFD, the Binary File Diddler.

BFD 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 1, or (at your option)
any later version.

BFD 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 BFD; see the file COPYING.  If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */

/* $Id$ */


/* This -*- C -*- source file will someday be machine-generated */

/*** Defines the target vector through which operations dispatch */
#include <sysdep.h>
#include "bfd.h"
#include "libbfd.h"

extern bfd_target ecoff_little_vec;
extern bfd_target ecoff_big_vec;
extern bfd_target sunos_big_vec;
extern bfd_target demo_64_vec;
extern bfd_target srec_vec;
extern bfd_target b_out_vec_little_host;
extern bfd_target b_out_vec_big_host;
extern bfd_target icoff_little_vec;
extern bfd_target icoff_big_vec;
extern bfd_target ieee_vec;
extern bfd_target oasys_vec;
extern bfd_target m88k_bcs_vec;
extern bfd_target m68kcoff_vec;
extern bfd_target i386coff_vec;

#ifdef DEFAULT_VECTOR
extern bfd_target DEFAULT_VECTOR;
#endif

#ifdef GNU960
#define ICOFF_LITTLE_VEC	icoff_little_vec
#define ICOFF_BIG_VEC		icoff_big_vec
#define B_OUT_VEC_LITTLE_HOST	b_out_vec_little_host
#define B_OUT_VEC_BIG_HOST	b_out_vec_big_host
#endif /* GNU960 */

#ifndef RESTRICTED
#define ECOFF_LITTLE_VEC	ecoff_little_vec
#define ECOFF_BIG_VEC		ecoff_big_vec
#define ICOFF_LITTLE_VEC	icoff_little_vec
#define ICOFF_BIG_VEC		icoff_big_vec
#define XB_OUT_VEC_LITTLE_HOST	b_out_vec_little_host
#define XB_OUT_VEC_BIG_HOST	b_out_vec_big_host
#define SUNOS_VEC_BIG_HOST	sunos_big_vec
#define DEMO_64_VEC		demo_64_vec
#define OASYS_VEC		oasys_vec
#define IEEE_VEC		ieee_vec
#define M88K_BCS_VEC		m88k_bcs_vec
#define SREC_VEC		srec_vec
#define M68KCOFF_VEC		m68kcoff_vec
#define I386COFF_VEC		i386coff_vec
#endif
bfd_target *target_vector[] = {

#ifdef DEFAULT_VECTOR
	&DEFAULT_VECTOR,
#endif /* DEFAULT_VECTOR */

#ifdef	I386COFF_VEC
	&I386COFF_VEC,
#endif	/* I386COFF_VEC */

#ifdef ECOFF_LITTLE_VEC
	&ECOFF_LITTLE_VEC,
#endif

#ifdef ECOFF_BIG_VEC
	&ECOFF_BIG_VEC,
#endif
#ifdef IEEE_VEC
	&IEEE_VEC,
#endif /* IEEE_VEC */

#ifdef OASYS_VEC
	&OASYS_VEC,
#endif /* OASYS_VEC */

#ifdef SUNOS_VEC_BIG_HOST
	&SUNOS_VEC_BIG_HOST,
#endif /* SUNOS_BIG_VEC */


#ifdef HOST_64_BIT
#ifdef DEMO_64_VEC
	&DEMO_64_VEC,
#endif
#endif

#ifdef M88K_BCS_VEC
	&M88K_BCS_VEC,
#endif /* M88K_BCS_VEC */

#ifdef SREC_VEC
	&SREC_VEC,
#endif /* SREC_VEC */
	
#ifdef ICOFF_LITTLE_VEC
	&ICOFF_LITTLE_VEC,
#endif /* ICOFF_LITTLE_VEC */

#ifdef ICOFF_BIG_VEC
	&ICOFF_BIG_VEC,
#endif /* ICOFF_BIG_VEC */

#ifdef B_OUT_VEC_LITTLE_HOST
	&B_OUT_VEC_LITTLE_HOST,
#endif /* B_OUT_VEC_LITTLE_HOST */

#ifdef B_OUT_VEC_BIG_HOST
	&B_OUT_VEC_BIG_HOST,
#endif /* B_OUT_VEC_BIG_HOST */

#ifdef	M68KCOFF_VEC
	&M68KCOFF_VEC,
#endif	/* M68KCOFF_VEC */

	NULL, /* end of list marker */
};


/* default_vector[0] contains either the address of the default vector,
   if there is one, or zero if there isn't.  */

bfd_target *default_vector[] = {
#ifdef DEFAULT_VECTOR
	&DEFAULT_VECTOR,
#endif
	0,
};