diff options
author | Jan Beulich <jbeulich@novell.com> | 2005-11-17 07:29:28 +0000 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2005-11-17 07:29:28 +0000 |
commit | 92757bc91688685a680cc6c6cd03324b894c4501 (patch) | |
tree | af7f90015e9fa7a13331367da0e55c3fbe02b9b7 /gas/doc | |
parent | 2be701a30fd949e7a486fcf6843fdb34f6bc00dc (diff) | |
download | gdb-92757bc91688685a680cc6c6cd03324b894c4501.zip gdb-92757bc91688685a680cc6c6cd03324b894c4501.tar.gz gdb-92757bc91688685a680cc6c6cd03324b894c4501.tar.bz2 |
gas/
2005-11-17 Jan Beulich <jbeulich@novell.com>
* symbols.h (S_CLEAR_VOLATILE): Declare.
* symbols.c (colon): Also accept redefinable symbols for
redefinition. Clone them before modifying.
(S_CLEAR_VOLATILE): Define.
* cond.c (s_ifdef): Also test for equated symbols.
* read.c (s_comm_internal): Also exclude non-redefinable
equated symbols. Clone redefinable ones before modifying.
(s_weakref): Clone redefinable symbols before modifying.
* doc/internals.texi: Document sy_volatile, sy_forward_ref,
S_IS_VOLATILE, S_SET_VOLATILE, S_CLEAR_VOLATILE,
S_IS_FORWARD_REF, and S_SET_FORWARD_REF.
gas/testsuite/
2005-11-17 Jan Beulich <jbeulich@novell.com>
* gas/all/cond.s: Also check ifdef works on equates and
commons.
* gas/all/cond.l: Adjust.
* gas/all/redef2.s: Also test redefining equate to label.
* gas/all/redef2.d: Adjust.
* gas/all/redef3.[sd]: New.
* gas/all/redef4.s: New.
* gas/all/redef5.s: New.
* gas/elf/redef.s: New, copied from original gas/all/redef2.s.
* gas/elf/redef.d: Remove #source.
* gas/all/gas.exp: Remove exclusion of iq2000-*-* from and
adjust xfails for redefinition tests. Run new tests. Exclude
alpha*-*-*, mips*-*-*, *c54x*-*-* from weakref tests.
Diffstat (limited to 'gas/doc')
-rw-r--r-- | gas/doc/internals.texi | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gas/doc/internals.texi b/gas/doc/internals.texi index 51b4061..dffdb1e 100644 --- a/gas/doc/internals.texi +++ b/gas/doc/internals.texi @@ -93,6 +93,12 @@ responsible for setting it when a symbol is used in backend routines. Whether the symbol is an MRI common symbol created by the @code{COMMON} pseudo-op when assembling in MRI mode. +@item sy_volatile +Whether the symbol can be re-defined. + +@item sy_forward_ref +Whether the symbol's value must only be evaluated upon use. + @item sy_weakrefr Whether the symbol is a @code{weakref} alias to another symbol. @@ -165,6 +171,16 @@ Return non-zero if the symbol is a @code{weakref} alias. Return non-zero if the symbol was aliased by a @code{weakref} alias and has not had any strong references. +@item S_IS_VOLATILE +@cindex S_IS_VOLATILE +Return non-zero if the symbol may be re-defined. Such symbols get created by +the @code{=} operator, @code{equ}, or @code{set}. + +@item S_IS_FORWARD_REF +@cindex S_IS_FORWARD_REF +Return non-zero if the symbol is a forward reference, that is its value must +only be determined upon use. + @item S_IS_COMMON @cindex S_IS_COMMON Return non-zero if this is a common symbol. Common symbols are sometimes @@ -222,6 +238,19 @@ Clear the @code{weakref} aliased status of a symbol. This is implicitly called whenever the symbol is looked up, as part of a direct reference or a definition, but not as part of a @code{weakref} directive. +@item S_SET_VOLATILE +@cindex S_SET_VOLATILE +Indicate that the symbol may be re-defined. + +@item S_CLEAR_VOLATILE +@cindex S_CLEAR_VOLATILE +Indicate that the symbol may no longer be re-defined. + +@item S_SET_FORWARD_REF +@cindex S_SET_FORWARD_REF +Indicate that the symbol is a forward reference, that is its value must only +be determined upon use. + @item S_GET_TYPE @item S_GET_DESC @item S_GET_OTHER |