* varasm.c (const_str_htab_hash, const_str_htab_eq, STRHASH,
commitb2fd8d520226e9b3d33916132dc06bc915a4fd31
authorzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Apr 2003 18:57:51 +0000 (27 18:57 +0000)
committerzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Apr 2003 18:57:51 +0000 (27 18:57 +0000)
tree74a2cd3ab97d99f3f1a03ae468e26032ae8717fa
parentbc4dba53afd2abe2b16f1bd51205b86be4b79be6
* 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
gcc/ChangeLog
gcc/doc/rtl.texi
gcc/rtl.def
gcc/rtl.h
gcc/varasm.c