aboutsummaryrefslogtreecommitdiff
path: root/gas/config/obj-elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'gas/config/obj-elf.c')
-rw-r--r--gas/config/obj-elf.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c
index 5f4f181..7d99c9a 100644
--- a/gas/config/obj-elf.c
+++ b/gas/config/obj-elf.c
@@ -530,7 +530,7 @@ obj_elf_stab_generic (what, secname)
subseg_new ((char *) saved_seg->name, subseg);
if ((what == 's' || what == 'n')
- && symbolP->sy_value.X_seg == absolute_section)
+ && symbolP->sy_value.X_op == O_constant)
{
/* symbol is not needed in the regular symbol table */
symbol_remove (symbolP, &symbol_rootP, &symbol_lastP);
@@ -718,7 +718,6 @@ obj_elf_size ()
char c = get_symbol_end ();
char *p;
expressionS exp;
- segT sec;
symbolS *sym;
p = input_line_pointer;
@@ -733,17 +732,17 @@ obj_elf_size ()
return;
}
input_line_pointer++;
- sec = expression (&exp);
- if (sec == absent_section)
+ expression (&exp);
+ if (exp.X_op == O_absent)
{
as_bad ("missing expression in .size directive");
- exp.X_seg = absolute_section;
+ exp.X_op = O_constant;
exp.X_add_number = 0;
}
*p = 0;
sym = symbol_find_or_make (name);
*p = c;
- if (sec == absolute_section)
+ if (exp.X_op == O_constant)
S_SET_SIZE (sym, exp.X_add_number);
else
{