PR gas/827
* as.h (rs_dummy): Define. * symbols.c (symbol_X_add_number): New function. * symbols.h (symbol_X_add_number): Declare. * stabs.c (aout_process_stab): Tidy symbol frag setting. * read.c (assign_symbol): New function, split out from s_set. Use symbol_find_or_make. Leave fr_type of dummy frag as rs_dummy. Fix COFF hacks for multi-emulation gas. (s_set): Call assign_symbol. Remove "register" keyword. (set_zero_frag): New function. (pseudo_set): Always check for assignment to section syms. Always set segment and frag of symbol, and likewise extern for aout/bout. Handle assignment of sym=sym+/-const specially. Don't special case exp.X_add_number non-zero for O_symbol expressions. (equals): Use assign_symbol.
This commit is contained in:
parent
f0885a038a
commit
be95a9c15d
6 changed files with 149 additions and 130 deletions
|
@ -2022,6 +2022,19 @@ symbol_set_value_expression (symbolS *s, const expressionS *exp)
|
|||
s->sy_value = *exp;
|
||||
}
|
||||
|
||||
/* Return a pointer to the X_add_number component of a symbol. */
|
||||
|
||||
valueT *
|
||||
symbol_X_add_number (symbolS *s)
|
||||
{
|
||||
#ifdef BFD_ASSEMBLER
|
||||
if (LOCAL_SYMBOL_CHECK (s))
|
||||
return &((struct local_symbol *) s)->lsy_value;
|
||||
#endif
|
||||
|
||||
return &s->sy_value.X_add_number;
|
||||
}
|
||||
|
||||
/* Set the value of SYM to the current position in the current segment. */
|
||||
|
||||
void
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue