egcs/gcc ChangeLog varasm.c rtl.h expr.c tests ...

jakub@gcc.gnu.org jakub@gcc.gnu.org
Tue Nov 14 09:37:00 GMT 2000


CVSROOT:	/cvs/gcc
Module name:	egcs
Changes by:	jakub@gcc.gnu.org	2000-11-14 09:37:20

Modified files:
	gcc            : ChangeLog varasm.c rtl.h expr.c 
	gcc/testsuite  : ChangeLog 
	gcc/testsuite/gcc.c-torture/execute: 20000801-4.c 

Log message:
	* varasm.c (struct deferred_string): New structure.
	(const_str_htab): New variable.
	(STRHASH): New macro.
	(mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash,
	constr_str_htab_eq, const_str_htab_del): New functions.
	(output_constant_def): Add DEFER argument, defer string
	constants until mark_constant_pool time if requested.
	(mark_constant_pool): Walk the insn chain even if const_str_htab is
	not empty.
	(mark_constants): If a SYMBOL_REF for deferred string is found,
	output it and remove from hash table.
	(output_addressed_constants): Set DEFER to 0 in call to
	output_constant_def.
	* rtl.h (STRING_POOL_ADDRESS_P): Define.
	(output_constant_def): Adjust prototype.
	* expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def.
	
	* gcc.c-torture/execute/20000801-4.c: Make sure the second string is
	output.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.8273&r2=1.8274
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/varasm.c.diff?cvsroot=gcc&r1=1.139&r2=1.140
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/rtl.h.diff?cvsroot=gcc&r1=1.228&r2=1.229
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/expr.c.diff?cvsroot=gcc&r1=1.275&r2=1.276
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.825&r2=1.826
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.c-torture/execute/20000801-4.c.diff?cvsroot=gcc&r1=1.1&r2=1.2



More information about the Gcc-cvs mailing list