This is the mail archive of the egcs-cvs@egcs.cygnus.com mailing list for the EGCS project. See the EGCS home page for more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

egcs/gcc Tag: egcs_gc_branch ChangeLog c-decl. ...


CVSROOT:	/egcs/carton/cvsfiles
Module name:	egcs
Changes by:	rth@egcs.cygnus.com	99/03/27 19:40:18

Modified files:
	gcc            : Tag: egcs_gc_branch ChangeLog c-decl.c 
	                 emit-rtl.c function.c function.h gengenrtl.c 
	                 ggc-simple.c ggc.h integrate.c output.h 
	                 profile.c rtl.h varasm.c 

Log message:
	Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
	
	* c-decl.c (init_decl_processing): Don't mark global_binding_level.
	* emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
	(gen_rtx): Special case CONST_DOUBLEs.
	* gengenrtl.c (special_rtx): Special case CONST_DOUBLEs.
	* rtl.h (gen_rtx_CONST_DOUBLE): Declare.
	* ggc-simple.c (ggc_mark_rtx): For CONST_DOUBLEs, walk
	CONST_DOUBLE_CHAIN.
	* function.h (struct function): Add new element VARASM.  Delete the
	varasm-specific fields.
	(save_varasm_status): Delete declaration.
	(restore_varasm_status): Delete declaration.
	(init_varasm_status): Declare.
	(init_const_rtx_hash_table): Declare here.
	* output.h (init_const_rtx_hash_table): Don't declare here.
	* function.c (push_function_context_to): Don't call
	save_varasm_status.
	(pop_function_context_from): Don't call restore_varasm_status.
	(prepare_function_start): Call init_varasm_status instead of
	init_const_rtx_hash_table.
	(mark_function_chain): Call mark_varasm_state instead of marking
	the relevant bits here.
	* ggc.h (mark_pool_constant): Don't declare.
	(mark_varasm_state): Declare.
	* integrate.c (output_inline_function): init_const_rtx_hash_table now
	takes an arg.
	* varasm.c (struct varasm_status): Define; move global variables
	into it and define accessor macros.
	(const_double_chain): Moved into struct varasm_status.
	(const_rtx_hash_table): Likewise.
	(const_rtx_sym_hash_table): Likewise.
	(first_pool): Likewise.
	(last_pool): Likewise.
	(pool_offset): Likewise.
	(immed_double_const): Don't touch const_double_chain outside a
	function.
	Delete obstack nonsense.
	Don't handle nested functions specially.
	(immed_real_const_1): Likewise.
	(clear_const_double_mem): Don't handle nested functions specially.
	(init_const_rtx_hash_table): Take new arg, pointer to struct function,
	and modify its contents.
	Use xmalloc not oballoc.
	(save_varasm_status): Delete.
	(restore_varasm_status): Delete.
	(init_varasm_status): New function.
	(free_varasm_status): Free memory allocated in
	init_const_rtx_hash_table.
	(mark_pool_constant): Now static.
	(mark_varasm_state): New function.
	(force_const_mem): Don't handle nested functions specially.
	(init_const_rtx_hash_table_once): Do nothing here.
	
	* profile.c (output_func_start_profiler): Comment out apparently
	nonsensical call to start_sequence.