aboutsummaryrefslogtreecommitdiff
path: root/gas/expr.h
diff options
context:
space:
mode:
Diffstat (limited to 'gas/expr.h')
-rw-r--r--gas/expr.h25
1 files changed, 13 insertions, 12 deletions
diff --git a/gas/expr.h b/gas/expr.h
index da90743..e376409 100644
--- a/gas/expr.h
+++ b/gas/expr.h
@@ -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 */