aboutsummaryrefslogtreecommitdiff
path: root/gas/symbols.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-10-12 21:07:07 +0000
committerAlan Modra <amodra@gmail.com>2011-10-12 21:07:07 +0000
commit6885131b49b28d67e4dc4758edb7e765b8b9f8b7 (patch)
tree8490fe62a6376d5398dfc36ec34d6e0abb27621c /gas/symbols.c
parentadabb602f9140476a47dec04581214e644b52bc6 (diff)
downloadgdb-6885131b49b28d67e4dc4758edb7e765b8b9f8b7.zip
gdb-6885131b49b28d67e4dc4758edb7e765b8b9f8b7.tar.gz
gdb-6885131b49b28d67e4dc4758edb7e765b8b9f8b7.tar.bz2
* as.c (main): Define .gasversion. rather than __GAS_VERSION__.
* frags.h (bss_address_frag): Delete (predefined_address_frag): New. * frags.c (frag_init): Init predefined_address_frag. Delete ref to bss_addres_frag. * symbols.c (S_CAN_BE_REDEFINED): New function. * symbols.h (S_CAN_BE_REDEFINED): Declare. * read.c (assign_symbol): Use S_CAN_BE_REDEFINED.
Diffstat (limited to 'gas/symbols.c')
-rw-r--r--gas/symbols.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gas/symbols.c b/gas/symbols.c
index b5d5a43..086e01d 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -2137,6 +2137,16 @@ S_IS_STABD (symbolS *s)
}
int
+S_CAN_BE_REDEFINED (const symbolS *s)
+{
+ if (LOCAL_SYMBOL_CHECK (s))
+ return (local_symbol_get_frag ((struct local_symbol *) s)
+ == &predefined_address_frag);
+ /* Permit register names to be redefined. */
+ return s->bsym->section == reg_section;
+}
+
+int
S_IS_VOLATILE (const symbolS *s)
{
if (LOCAL_SYMBOL_CHECK (s))