diff options
Diffstat (limited to 'gas/config/tc-alpha.c')
-rw-r--r-- | gas/config/tc-alpha.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gas/config/tc-alpha.c b/gas/config/tc-alpha.c index 791f15d..e55a9bc 100644 --- a/gas/config/tc-alpha.c +++ b/gas/config/tc-alpha.c @@ -96,8 +96,9 @@ struct alpha_macro /* Two extra symbols we want to see in our input. This is a blatent misuse of the expressionS.X_op field. */ -#define O_pregister (O_max+1) /* O_register, but in parentheses */ -#define O_cpregister (O_pregister+1) /* + a leading comma */ +#define O_pregister ((operatorT) (O_max+1)) /* O_register, in parentheses */ +#define O_cpregister ((operatorT) (O_pregister+1)) /* + a leading comma */ +#define O_alpha_max ((operatorT) (O_cpregister+1)) /* Macros for extracting the type and number of encoded register tokens */ @@ -709,6 +710,13 @@ md_begin () { unsigned int i; + /* Verify that X_op field is wide enough. */ + { + expressionS e; + e.X_op = O_alpha_max; + assert (e.X_op == O_alpha_max); + } + /* Create the opcode hash table */ alpha_opcode_hash = hash_new (); |