aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorZack Weinberg <zack@codesourcery.com>2003-04-27 18:57:51 +0000
committerZack Weinberg <zack@gcc.gnu.org>2003-04-27 18:57:51 +0000
commit32a619073cabf92631b4a7d017de59f7390cae62 (patch)
tree74a2cd3ab97d99f3f1a03ae468e26032ae8717fa /gcc/doc
parent2d9d52359cf173f784d1649f0ae2e77b27e87b36 (diff)
downloadgcc-32a619073cabf92631b4a7d017de59f7390cae62.zip
gcc-32a619073cabf92631b4a7d017de59f7390cae62.tar.gz
gcc-32a619073cabf92631b4a7d017de59f7390cae62.tar.bz2
varasm.c (const_str_htab_hash, [...]): Kill.
* varasm.c (const_str_htab_hash, const_str_htab_eq, STRHASH, struct deferred_string, const_str_htab): Kill. (n_deferred_strings): New static variable. (build_constant_desc): Set SYMBOL_REF_DECL of the new symbol_ref to point to the constant. (output_constant_def): When a deferred string is forced out, just clear STRING_POOL_ADDRESS_P and decrement n_deferred_strings. (mark_constant): Likewise. (maybe_output_constant_def_contents): When deferring a string constant, just set STRING_POOL_ADDRESS_P and increment n_deferred_strings. (mark_constant_pool): Check n_deferred_strings, not the size of const_str_htab. (init_varasm_once): No need to create const_str_htab. * rtl.def, rtl.h, doc/rtl.texi: Document possibility that SYMBOL_REF_DECL points to a constant. From-SVN: r66133
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/rtl.texi7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi
index 8a97a5d..e906ccf 100644
--- a/gcc/doc/rtl.texi
+++ b/gcc/doc/rtl.texi
@@ -438,7 +438,12 @@ declaration, this is the offset into that logical storage.
If the @code{symbol_ref} @var{x} was created for a @code{VAR_DECL} or
a @code{FUNCTION_DECL}, that tree is recorded here. If this value is
null, then @var{x} was created by back end code generation routines,
-and so there is no associated front end symbol table entry.
+and there is no associated front end symbol table entry.
+
+@code{SYMBOL_REF_DECL} may also point to a tree of class @code{'c'},
+that is, some sort of constant. In this case, the @code{symbol_ref}
+is an entry in the per-file constant pool; again, there is no associated
+front end symbol table entry.
@findex SYMBOL_REF_FLAGS
@item SYMBOL_REF_FLAGS (@var{x})