gcc/gcc ChangeLog Makefile.in c-common.h c-obj ...

geoffk@gcc.gnu.org geoffk@gcc.gnu.org
Fri Oct 25 23:12:00 GMT 2002


CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	pch-branch
Changes by:	geoffk@gcc.gnu.org	2002-10-25 23:12:50

Modified files:
	gcc            : ChangeLog Makefile.in c-common.h 
	                 c-objc-common.c c-parse.in c-pch.c emit-rtl.c 
	                 fold-const.c gengtype.c ggc-common.c ggc-page.c 
	                 ggc.h stringpool.c tree.c 
	gcc/cp         : ChangeLog lex.c 

Log message:
	Index: ChangeLog
	2002-10-23  Geoffrey Keating  <geoffk@apple.com>
	
	* gengtype.c (struct write_types_data): New.
	(struct walk_type_data): Make `cookie' const; add extra
	prev_val item; add `orig_s' field.
	(walk_type): Update prev_val[3].
	(write_types_process_field): New.
	(write_func_for_structure): Take write_types_data structure.
	(write_types): New.
	(ggc_wtd): New.
	(pch_wtd): New.
	(write_types_local_process_field): New.
	(gc_mark_process_field): Delete.
	(write_local_func_for_structure): New.
	(gc_mark_func_name): Delete.
	(write_gc_types): Delete.
	(write_local): New.
	(finish_root_table): Don't include 'ggc_' in PFX.
	(write_root): Rename from write_root.  Fill pchw field of structures.
	(write_array): New.
	(write_roots): Rename from write_gc_roots.  Split out to write_array.
	Update to changes to other routines.  Write gt_pch_cache_rtab table.
	(main): Write PCH walking routines.
	* ggc-common.c: Include toplev.h, sys/mman.h.
	(ggc_mark_roots): For cache hashtables, also mark the hash table
	and the array of entries.
	(saving_htab): New.
	(struct ptr_data): New.
	(POINTER_HASH): New.
	(gt_pch_note_object): New.
	(saving_htab_hash): New.
	(saving_htab_eq): New.
	(struct traversal_state): New.
	(call_count): New.
	(call_alloc): New.
	(compare_ptr_data): New.
	(relocate_ptrs): New.
	(write_pch_globals): New.
	(struct mmap_info): New.
	(gt_pch_save): New.
	(gt_pch_restore): New.
	* ggc-page.c (ROUND_UP_VALUE): New.
	(ROUND_UP): New.
	(struct page_entry): Add field `pch_page'.
	(init_ggc): Use ROUND_UP.
	(struct ggc_pch_data): Declare.
	(init_ggc_pch): New.
	(ggc_pch_count_object): New.
	(ggc_pch_total_size): New.
	(ggc_pch_this_base): New.
	(ggc_pch_alloc_object): New.
	(ggc_pch_prepare_write): New.
	(ggc_pch_write_object): New.
	(ggc_pch_finish): New.
	(ggc_pch_read): New.
	* ggc.h (gt_pointer_operator): New.
	(gt_note_pointers): New.
	(gt_pch_note_object): New prototype.
	(gt_pointer_walker): New.
	(struct ggc_root_tab): Use gt_pointer_walker, add `pchw' field.
	(LAST_GGC_ROOT_TAB): Update.
	(gt_pch_cache_rtab): Declare.
	(gt_pch_scalar_rtab): Declare.
	(struct ggc_cache_tab): Use gt_pointer_walker, add `pchw' field.
	(LAST_GGC_CACHE_TAB): Update.
	(gt_pch_save_stringpool): Declare.
	(gt_pch_restore_stringpool): Declare.
	(gt_pch_p_S): Declare.
	(gt_pch_n_S): Declare.
	(struct ggc_pch_data): Forward-declare.
	(init_ggc_pch): Declare.
	(ggc_pch_count_object): Declare.
	(ggc_pch_total_size): Declare.
	(ggc_pch_this_base): Declare.
	(ggc_pch_alloc_object): Declare.
	(ggc_pch_prepare_write): Declare.
	(ggc_pch_write_object): Declare.
	(ggc_pch_finish): Declare.
	(ggc_pch_read): Declare.
	(gt_pch_save): Declare.
	(gt_pch_restore): Declare.
	* fold-const.c (size_int_type_wide): Allocate size_htab using GGC.
	* emit-rtl.c (init_emit_once): Allocate const_int_htab,
	const_double_htab, mem_attrs_htab using GGC.
	* c-pch.c: Include ggc.h.
	(pch_init): Allow reading PCH file back.
	(c_common_write_pch): Call gt_pch_save.
	(c_common_read_pch): Call gt_pch_restore.
	* c-parse.in (init_reswords): Delete now-untrue comment.
	Allocate ridpointers using GGC.
	* c-objc-common.c (c_objc_common_finish_file): Write PCH before
	calling expand_deferred_fns.
	* c-common.h (ridpointers): Mark for GTY machinery.
	* Makefile.in (stringpool.o): Update dependencies.
	(c-pch.o): Update dependencies.
	(ggc-common.o): Update dependencies.
	* stringpool.c: Include gt-stringpool.h.
	(gt_pch_p_S): New.
	(gt_pch_n_S): New.
	(struct string_pool_data): New.
	(spd): New.
	(gt_pch_save_stringpool): New.
	(gt_pch_restore_stringpool): New.
	* tree.c (init_ttree): Make type_hash_table allocated using GC.
	
	Index: cp/ChangeLog
	2002-10-25  Geoffrey Keating  <geoffk@apple.com>
	
	* lex.c  (init_reswords): Delete now-untrue comment.
	Allocate ridpointers using GGC.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.12690.2.74&r2=1.12690.2.75
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/Makefile.in.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.822.2.34&r2=1.822.2.35
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.h.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.112.4.18&r2=1.112.4.19
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-objc-common.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.2.6.10&r2=1.2.6.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-parse.in.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.125.4.10&r2=1.125.4.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-pch.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.1.2.3&r2=1.1.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/emit-rtl.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.242.4.15&r2=1.242.4.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fold-const.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.181.4.11&r2=1.181.4.12
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/gengtype.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.1.2.36&r2=1.1.2.37
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ggc-common.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.46.4.23&r2=1.46.4.24
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ggc-page.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.48.4.3&r2=1.48.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ggc.h.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.39.6.22&r2=1.39.6.23
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/stringpool.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.14.6.3&r2=1.14.6.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.230.2.15&r2=1.230.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.2639.2.28&r2=1.2639.2.29
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/lex.c.diff?cvsroot=gcc&only_with_tag=pch-branch&r1=1.262.2.8&r2=1.262.2.9



More information about the Gcc-cvs mailing list