import gdb-1999-06-21 snapshot
[external/binutils.git] / gas / config / obj-generic.h
1 /* This file is obj-generic.h
2    Copyright (C) 1987-1992 Free Software Foundation, Inc.
3
4    This file is part of GAS, the GNU Assembler.
5
6    GAS is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 2, or (at your option)
9    any later version.
10
11    GAS is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with GAS; see the file COPYING.  If not, write to
18    the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
19
20 /*
21  * This file is obj-generic.h and is intended to be a template for
22  * object format specific header files.
23  */
24
25 /* define an obj specific macro off which target cpu back ends may key. */
26 #define OBJ_GENERIC 1
27
28 /* include whatever target cpu is appropriate. */
29 #include "targ-cpu.h"
30
31 /*
32  * SYMBOLS
33  */
34
35 /*
36  * If your object format needs to reorder symbols, define this.  When
37  * defined, symbols are kept on a doubly linked list and functions are
38  * made available for push, insert, append, and delete.  If not defined,
39  * symbols are kept on a singly linked list, only the append and clear
40  * facilities are available, and they are macros.
41  */
42
43 /* #define SYMBOLS_NEED_PACKPOINTERS */
44
45 /*  */
46 typedef struct
47   {
48     void *nothing;
49   }
50
51 obj_symbol_type;                /* should be the format's symbol structure */
52
53 typedef void *object_headers;
54
55 /* symbols have names */
56 #define S_GET_NAME(s)           ("foo") /* get the name of a symbolP */
57 #define S_SET_NAME(s,v)         ;
58 /* symbols have segments */
59 #define S_GET_SEGMENT(s)        (SEG_UNKNOWN)
60 #define S_SET_SEGMENT(s,v)      ;
61 /* symbols may be external */
62 #define S_IS_EXTERNAL(s)        (0)
63 #define S_SET_EXTERNAL(s)       ;
64
65 /* symbols may or may not be defined */
66 #define S_IS_DEFINED(s)         (0)
67
68
69 #define DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE (0)        /* your magic number */
70
71 #define OBJ_EMIT_LINENO(a,b,c)  /* must be *something*.  This no-op's it out. */
72
73 /*
74  * Local Variables:
75  * comment-column: 0
76  * fill-column: 131
77  * End:
78  */
79
80 /* end of obj-generic.h */