summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/gas/expr.h
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
commita7e831079363e3bb45f3172f6e59ba48e335682b (patch)
treeee4324eac9a9d66f189fab60498ec42b8226b7fc /gnu/usr.bin/binutils/gas/expr.h
parent467cb0a471d13c5186a6ee166e60b47c30da64e9 (diff)
Bring Cygnus versions into the trunk, keeping our local patches
Diffstat (limited to 'gnu/usr.bin/binutils/gas/expr.h')
-rw-r--r--gnu/usr.bin/binutils/gas/expr.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/gnu/usr.bin/binutils/gas/expr.h b/gnu/usr.bin/binutils/gas/expr.h
index 35a1c7ebbca..5af0f738ed6 100644
--- a/gnu/usr.bin/binutils/gas/expr.h
+++ b/gnu/usr.bin/binutils/gas/expr.h
@@ -100,26 +100,27 @@ typedef enum
/* (X_add_symbol && X_op_symbol) + X_add_number. */
O_logical_and,
/* (X_add_symbol || X_op_symbol) + X_add_number. */
- O_logical_or
+ O_logical_or,
+ /* this must be the largest value */
+ O_max
} operatorT;
typedef struct expressionS
{
- /* The type of the expression. */
- operatorT X_op;
/* The main symbol. */
struct symbol *X_add_symbol;
/* The second symbol, if needed. */
struct symbol *X_op_symbol;
/* A number to add. */
offsetT X_add_number;
+ /* The type of the expression. */
+ unsigned X_op : 5;
/* 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
O_constant must be extended into a bignum (i.e., it is not used
when performing arithmetic on these values).
- FIXME: This field is not set very reliably.
- If we ever need more flags here, we can make them bitfields. */
- int X_unsigned;
+ FIXME: This field is not set very reliably. */
+ unsigned int X_unsigned : 1;
} expressionS;
/* "result" should be type (expressionS *). */