diff options
author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-04-27 18:57:51 +0000 |
---|---|---|
committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-04-27 18:57:51 +0000 |
commit | b2fd8d520226e9b3d33916132dc06bc915a4fd31 (patch) | |
tree | 74a2cd3ab97d99f3f1a03ae468e26032ae8717fa /gcc/doc | |
parent | bc4dba53afd2abe2b16f1bd51205b86be4b79be6 (diff) | |
download | ppe42-gcc-b2fd8d520226e9b3d33916132dc06bc915a4fd31.tar.gz ppe42-gcc-b2fd8d520226e9b3d33916132dc06bc915a4fd31.zip |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66133 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/rtl.texi | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi index 8a97a5d2e0b..e906ccf8358 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}) |