diff options
Diffstat (limited to 'gas/expr.h')
-rw-r--r-- | gas/expr.h | 25 |
1 files changed, 13 insertions, 12 deletions
@@ -1,5 +1,5 @@ /* expr.h -> header file for expr.c - Copyright (C) 1987, 92-97, 1998 Free Software Foundation, Inc. + Copyright (C) 1987, 92-98, 1999 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -102,6 +102,8 @@ typedef enum O_logical_and, /* (X_add_symbol || X_op_symbol) + X_add_number. */ O_logical_or, + /* X_op_symbol [ X_add_symbol ] */ + O_index, /* this must be the largest value */ O_max } operatorT; @@ -109,18 +111,18 @@ typedef enum typedef struct expressionS { /* The main symbol. */ - struct symbol *X_add_symbol; + symbolS *X_add_symbol; /* The second symbol, if needed. */ - struct symbol *X_op_symbol; + symbolS *X_op_symbol; /* A number to add. */ offsetT X_add_number; /* The type of the expression. We can't assume that an arbitrary compiler can handle a bitfield of enum type. FIXME: We could check this using autoconf. */ #ifdef __GNUC__ - operatorT X_op : 5; + operatorT X_op : 7; #else - unsigned X_op : 5; + unsigned X_op : 7; #endif /* Non-zero if X_add_number should be regarded as unsigned. This is only valid for O_constant expressions. It is only used when an @@ -149,14 +151,13 @@ extern void expr_begin PARAMS ((void)); extern void expr_set_precedence PARAMS ((void)); extern segT expr PARAMS ((int rank, expressionS * resultP)); extern unsigned int get_single_number PARAMS ((void)); -extern struct symbol *make_expr_symbol PARAMS ((expressionS * expressionP)); +extern symbolS *make_expr_symbol PARAMS ((expressionS * expressionP)); extern int expr_symbol_where - PARAMS ((struct symbol *, char **, unsigned int *)); + PARAMS ((symbolS *, char **, unsigned int *)); -extern struct symbol * expr_build_uconstant PARAMS ((offsetT)); -extern struct symbol * expr_build_unary PARAMS ((operatorT, struct symbol *)); -extern struct symbol * expr_build_binary - PARAMS ((operatorT, struct symbol *, struct symbol *)); -extern struct symbol * expr_build_dot PARAMS ((void)); +extern symbolS *expr_build_uconstant PARAMS ((offsetT)); +extern symbolS *expr_build_unary PARAMS ((operatorT, symbolS *)); +extern symbolS *expr_build_binary PARAMS ((operatorT, symbolS *, symbolS *)); +extern symbolS *expr_build_dot PARAMS ((void)); /* end of expr.h */ |