]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libmach/obj.h
marshal(1): fix example: upas/mail -> mail (thanks fulton)
[plan9front.git] / sys / src / libmach / obj.h
1 /*
2  * obj.h -- defs for dealing with object files
3  */
4
5 typedef enum Kind               /* variable defs and references in obj */
6 {
7         aNone,                  /* we don't care about this prog */
8         aName,                  /* introduces a name */
9         aText,                  /* starts a function */
10         aData,                  /* references to a global object */
11 } Kind;
12
13 typedef struct  Prog    Prog;
14
15 struct Prog             /* info from .$O files */
16 {
17         Kind    kind;           /* what kind of symbol */
18         char    type;           /* type of the symbol: ie, 'T', 'a', etc. */
19         char    sym;            /* index of symbol's name */
20         char    *id;            /* name for the symbol, if it introduces one */
21         uint    sig;            /* type signature for symbol */
22 };
23
24 #define UNKNOWN '?'
25 void            _offset(int, vlong);