Commit Graph

30 Commits

Author SHA1 Message Date
Kelley Cook
366ccddb2b Update FSF address.
From-SVN: r101317
2005-06-25 02:02:01 +00:00
Gabriel Dos Reis
7973fd2aed libiberty.h (XOBFINISH): New.
libiberty/
2005-06-06  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * libiberty.h (XOBFINISH): New.

gcc/
2005-06-06  Gabriel Dos Reis  <gdr@integrable-solutions.net>

        * c-lex.c (lex_string): Use XOBFINISH.
        * collect2.c (extract_string, dump_file): Likewise.
        * dbxout.c (dbxout_finish_complex_stabs): Likewise.
        * gcc.c (init_spec, build_search_list, convert_filename,
        set_collect_gcc_options, do_spec_2, do_spec_1, main):
        * Likewise.
        * genpreds.c (write_predicate_subfunction): Likewise.
        * genflags.c (main): Likewise.
        * read-rtl.c (mode_attr_index, apply_macro_to_string,
        join_c_conditions, read_quoted_string, read_braced_string,
        read_rtx_1): Likewise.
        * stringpool.c (ggc_alloc_string): Likewise.
        * tlink.c (obstack_fgets, recompile_files): Likewise.

From-SVN: r100678
2005-06-06 21:14:31 +00:00
Kazu Hirata
a21309013c alloc-pool.c, [...]: Update copyright.
* alloc-pool.c, except.h, ggc-common.c, ggc-zone.c, ggc.h,
	stringpool.c, config/mips/mips-protos.h: Update copyright.

From-SVN: r96428
2005-03-14 13:10:51 +00:00
Daniel Jacobowitz
08cee789cd ggc-zone.c: Rewritten.
* ggc-zone.c: Rewritten.

	* alloc-pool.c (dump_alloc_pool_statistics): Don't print statistics
	if there are none.
	* configure.ac: Define GGC_ZONE for --with-gc=zone.
	* config.in: Regenerated.
	* configure: Regenerated.
	* gentype.c (write_types_process_field, write_func_for_structure):
	Pass new argument to gt_pch_note_object.
	* ggc-common.c (struct ptr_data): Add TYPE.
	(gt_pch_note_object): Take TYPE argument and save it.
	(call_count): Update call to ggc_pch_count_object.
	(call_alloc): Update call to ggc_pch_alloc_object.
	(gt_pch_save): Call ggc_pch_prepare_write after paddng the PCH
	file.
	* ggc-none.c (rtl_zone, garbage_zone, ggc_alloc_zone_stat): Delete.
	* ggc-page.c (rtl_zone, tree_zone, garbage_zone)
	(ggc_alloc_zone_stat): Delete.
	(ggc_pch_count_object, ggc_pch_alloc_object): Add TYPE argument.
	* ggc.h (gt_pch_note_object, ggc_pch_count_object)
	(ggc_pch_alloc_object): Update prototypes.
	(garbage_zone): Delete.
	(tree_zone, rtl_zone, ggc_alloc_zone_stat, ggc_alloc_zone): Move to
	GGC_ZONE conditional.  Update.  Change tree_zone and rtl_zone into
	pointers.
	(tree_id_zone): New variable.
	(ggc_alloc_cleared_zone): Remove unused.
	(ggc_alloc_zone): Define.
	(ggc_alloc_rtvec, ggc_alloc_tree): Update to use ggc_alloc_zone.
	* rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Use
	ggc_alloc_zone_stat.
	* stringpool.c (gt_pch_n_S): Update call to gt_pch_note_object.
	* tree.c (copy_node_stat, make_tree_binfo_stat, make_tree_vec_stat)
	(tree_cons_stat, build1_stat): Update call to ggc_alloc_zone_stat.
	(make_node_stat): Likewise.  Use tree_id_zone.

From-SVN: r96381
2005-03-13 18:09:55 +00:00
Geoffrey Keating
d8044160b7 Index: gcc/ChangeLog
2004-06-09  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.in (CPPLIB_H): Put files in order of inclusion.
	(CPP_ID_DATA_H): New.
	(gtype-desc.o): Update dependencies.
	(GTFILES): Use CPP_ID_DATA_H.

Index: gcc/testsuite/ChangeLog
2004-06-09  Geoffrey Keating  <geoffk@apple.com>

	* gcc.dg/pch/macro-4.c: New.
	* gcc.dg/pch/macro-4.hs: New.

Index: libcpp/ChangeLog
2004-06-09  Geoffrey Keating  <geoffk@apple.com>

	* traditional.c (push_replacement_text): Set macro->traditional.
	(save_replacement_text): Likewise.
	* pch.c (cpp_write_pch_state): Don't write list of defined macros.
	(struct save_macro_item): Delete.
	(struct save_macro_data): Use a character array not the previous
	structured format.
	(save_macros): Save macro as text not as internal structures.
	(cpp_prepare_state): Update for changes to save_macro_data.
	(cpp_read_state): Don't read macros defined in PCH.  Restore
	-D macros as text.
	* macro.c (create_iso_definition): Honour alloc_subobject.
	Clear traditional flag.
	(_cpp_create_definition): Honour alloc_subobject.
	* lex.c (cpp_token_val_index): New.
	* internal.h: Include cpp-id-data.h.
	(uchar): Move definition to cpp-id-data.h.
	(U): Likewise.
	(cpp_macro): Likewise.
	* directives.c (struct answer): Move to cpp-id-data.h.
	(do_assert): Honour alloc_subobject.

Index: libcpp/include/ChangeLog
2004-06-09  Geoffrey Keating  <geoffk@apple.com>

	* symtab.h (struct ht): Add field 'alloc_subobject'.
	* cpplib.h (struct cpp_string): Add GTY marker.
	(enum cpp_token_fld_kind): New.
	(struct cpp_token): Add GTY markers.
	(cpp_token_val_index): Prototype.
	(CPP_HASHNODE_VALUE_IDX): New.
	(struct cpp_hashnode): Don't skip fields of 'value' when marking.
	* cpp-id-data.h: New file.

From-SVN: r82851
2004-06-09 20:10:13 +00:00
Geoffrey Keating
b453c95fd3 Index: libcpp/ChangeLog
2004-05-29  Geoffrey Keating  <geoffk@apple.com>

	* symtab.c (ht_create): Set entries_owned.
	(ht_destroy): Honour entries_owned.
	(ht_expand): Likewise.
	(ht_load): New.

Index: libcpp/include/ChangeLog
2004-05-29  Geoffrey Keating  <geoffk@apple.com>

	* symtab.h (struct ht): New field 'entries_owned'
	(ht_load): New prototype.

Index: gcc/ChangeLog
2004-05-29  Geoffrey Keating  <geoffk@apple.com>

	* gengtype-yacc.y: Add NESTED_PTR token.
	(option): Record `nested_ptr' option.
	* gengtype-lex.l: Handle `nested_ptr' keyword.
	* gengtype.c (walk_type): Process `nested_ptr' option.
	* gengtype.h (struct nested_ptr_data): New.
	* doc/gty.texi (GTY Options): Document `nested_ptr' option.
	* stringpool.c (struct string_pool_data): Make 'entries' point to
	ht_identifier instead of tree.
	(gt_pch_save_stringpool): Don't adjust pointers.
	(gt_pch_restore_stringpool): Call ht_load.

From-SVN: r82438
2004-05-30 00:49:06 +00:00
Geoffrey Keating
4bb4ae964a * stringpool.c: Add comments to PCH saving/restoring routines.
From-SVN: r82380
2004-05-28 21:41:42 +00:00
Paolo Bonzini
4f4e53dd85 Makefile.def (host_modules): add libcpp.
ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.def (host_modules): add libcpp.
	* Makefile.tpl: Add dependencies on and for libcpp.
	* Makefile.in: Regenerate.
	* configure.in: Add libcpp host module.
	* configure: Regenerate.

config/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* acx.m4 (ACX_HEADER_STDBOOL, ACX_HEADER_STRING):
	From gcc.

gcc/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	Move libcpp to the toplevel.
	* Makefile.in: Remove references to libcpp files,
	use CPPLIBS instead of libcpp.a.  Define SYMTAB_H
	and change hashtable.h to that.
	* aclocal.m4 (gcc_AC_HEADER_STDBOOL,
	gcc_AC_HEADER_STRING, gcc_AC_C__BOOL): Remove.
	* configure.ac (gcc_AC_C__BOOL, HAVE_UCHAR): Remove tests.
	* configure: Regenerate.
	* config.in: Regenerate.
	* c-ppoutput.c: Include ../libcpp/internal.h instead of cpphash.h.
	* cppcharset.c: Removed.
	* cpperror.c: Removed.
	* cppexp.c: Removed.
	* cppfiles.c: Removed.
	* cpphash.c: Removed.
	* cpphash.h: Removed.
	* cppinit.c: Removed.
	* cpplex.c: Removed.
	* cpplib.c: Removed.
	* cpplib.h: Removed.
	* cppmacro.c: Removed.
	* cpppch.c: Removed.
	* cpptrad.c: Removed.
	* cppucnid.h: Removed.
	* cppucnid.pl: Removed.
	* cppucnid.tab: Removed.
	* hashtable.c: Removed.
	* hashtable.h: Removed.
	* line-map.c: Removed.
	* line-map.h: Removed.
	* mkdeps.c: Removed.
	* mkdeps.h: Removed.
	* stringpool.h: Include symtab.h instead of hashtable.h.
	* tree.h: Include symtab.h instead of hashtable.h.
	* system.h (O_NONBLOCK, O_NOCTTY): Do not define.

gcc/cp/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* Make-lang.in: No need to specify $(LIBCPP).

gcc/java/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* Make-lang.in: Link in $(LIBCPP) instead of mkdeps.o.

libcpp/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	Moved libcpp from the gcc subdirectory to the toplevel.
	* Makefile.am: New file.
	* Makefile.in: Regenerate.
	* configure.ac: New file.
	* configure: Regenerate.
	* config.in: Regenerate.
	* charset.c: Moved from gcc/cppcharset.c.  Add note about
	brokenness of input charset detection.  Adjust for change
	in name of cppucnid.h.
	* errors.c: Moved from gcc/cpperror.c.  Do not include intl.h.
	* expr.c: Moved from gcc/cppexp.c.
	* files.c: Moved from gcc/cppfiles.c.  Do not include intl.h.
	Remove #define of O_BINARY, it is in system.h.
	* identifiers.c: Moved from gcc/cpphash.c.
	* internal.h: Moved from gcc/cpphash.h.  Change header
	guard name.  All other files adjusted to match name change.
	* init.c: Moved from gcc/cppinit.c.
	(init_library) [ENABLE_NLS]: Call bindtextdomain.
	* lex.c: Moved from gcc/cpplex.c.
	* directives.c: Moved from gcc/cpplib.c.
	* macro.c: Moved from gcc/cppmacro.c.
	* pch.c: Moved from gcc/cpppch.c.  Do not include intl.h.
	* traditional.c: Moved from gcc/cpptrad.c.
	* ucnid.h: Moved from gcc/cppucnid.h.  Change header
	guard name.
	* ucnid.pl: Moved from gcc/cppucnid.pl.
	* ucnid.tab: Moved from gcc/cppucnid.tab.  Change header
	guard name.
	* symtab.c: Moved from gcc/hashtable.c.
	* line-map.c: Moved from gcc.  Do not include intl.h.
	* mkdeps.c: Moved from gcc.
	* system.h: New file.

libcpp/include/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* cpplib.h: Moved from gcc.  Change header guard name.
	* line-map.h: Moved from gcc.  Change header guard name.
	* mkdeps.h: Moved from gcc.  Change header guard name.
	* symtab.h: Moved from gcc/hashtable.h.  Change header
	guard name.

libcpp/po/ChangeLog:

2004-05-23  Paolo Bonzini  <bonzini@gnu.org>

	* be.po: Extracted from gcc/po/be.po.
	* ca.po: Extracted from gcc/po/ca.po.
	* da.po: Extracted from gcc/po/da.po.
	* de.po: Extracted from gcc/po/de.po.
	* el.po: Extracted from gcc/po/el.po.
	* es.po: Extracted from gcc/po/es.po.
	* fr.po: Extracted from gcc/po/fr.po.
	* ja.po: Extracted from gcc/po/ja.po.
	* nl.po: Extracted from gcc/po/nl.po.
	* sv.po: Extracted from gcc/po/sv.po.
	* tr.po: Extracted from gcc/po/tr.po.

From-SVN: r82199
2004-05-24 10:50:45 +00:00
Roger Sayle
7bb3fbbb4d * tree.h (get_identifier) Define a macro form of get_identifier
that calls get_identifier_with_length when the string is constant.
	(get_identifier_with_length): Change type of second argument to
	size_t in prototype.
	* stringpool.c (get_identifier): Undefine the macro before giving
	the function definition.
	(get_identifier_with_length): Change  type of second argument to
	size_t in function definition.
	* hashtable.c (calc_hash): Change type of second argument to size_t.
  	(ht_lookup): Change type of third argument to size_t.  Reorganize
	to speed-up the cases where the hash table slot is empty, or the
	first probe matches (i.e. there isn't a collision).
	* hashtable.h (ht_lookup): Adjust function prototype.

From-SVN: r70256
2003-08-08 20:23:06 +00:00
Andreas Jaeger
46c5ad278b sbitmap.c: Convert prototypes to ISO C90.
* sbitmap.c: Convert prototypes to ISO C90.
	* sbitmap.h: Likewise.
	* scan-decls.c: Likewise.
	* scan.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.
	* sched-vis.c: Likewise.
	* sibcall.c: Likewise.
	* simplify-rtx.c: Likewise.
	* sreal.c: Likewise.
	* sreal.h: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa-dce.c: Likewise.
	* ssa.c: Likewise.
	* ssa.h: Likewise.
	* stack.h: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* stringpool.c: Likewise.
	* target.h: Likewise.
	* timevar.c: Likewise.
	* timevar.h: Likewise.
	* tlink.c: Likewise.
	* tracer.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-inline.h: Likewise.
	* tree.c: Likewise.
	* tree.h: Likewise.

From-SVN: r69002
2003-07-06 14:35:56 +02:00
Kaveh R. Ghazi
fad205ffba decl.c, [...]: Don't use the PTR macro.
cp:
	* cp/decl.c, cp/pt.c, cp/search.c, cp/tree.c: Don't use the PTR
	macro.

gcc:
	* bitmap.c, builtins.c, c-incpath.c, cgraph.c, config/frv/frv.c,
	config/mips/mips.c, cppfiles.c, cpphash.c, cppinit.c, cpplib.c,
	dwarf2out.c, dwarfout.c, except.c, expr.c, expr.h, fold-const.c,
	function.c, gcc.c, genoutput.c, gensupport.c, global.c,
	haifa-sched.c, hashtable.c, ifcvt.c, integrate.c, local-alloc.c,
	loop.c, mips-tdump.c, mips-tfile.c, mkdeps.c, protoize.c,
	read-rtl.c, recog.h, reload1.c, sbitmap.c, ssa-dce.c,
	stringpool.c, tlink.c, tree.c, varasm.c, varray.c: Don't use
	the PTR macro.

From-SVN: r68043
2003-06-16 21:41:10 +00:00
Matt Austern
d24ecd21b3 cpppch.c (reset_ht): Remove.
* cpppch.c (reset_ht): Remove.
	(cpp_read_state): Remove loop to reset hashtable identifiers.
	* ggc-common.c (gt_pch_save): Add call to gt_pch_fixup_stringpool
	after pch file is written.
	* ggc.h (gt_pch_fixup_stringpool): Declare.
	* stringpool.c (ht_copy_and_clear): Define.  Callback.  Copy
	hashnode's value to another hashtable, then clear the original.
	(saved_ident_hash): Define.
	(gt_pch_save_stringpool): Create saved_ident_hash, use it to
	store definitions in ident_hash, and clear ident_hash.
	(gt_pch_fixup_stringpool): Define.  Restore definitions from
	saved_ident_hash to ident_hash, then destroy saved_ident_hash.

From-SVN: r65215
2003-04-03 21:00:56 +00:00
Geoffrey Keating
17211ab553 Merge from pch-branch.
From-SVN: r61136
2003-01-10 02:22:34 +00:00
Zack Weinberg
4977bab6ed Merge basic-improvements-branch to trunk
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Geoffrey Keating
e2500fedef Merge from pch-branch up to tag pch-commit-20020603.
From-SVN: r54232
2002-06-04 07:11:05 +00:00
Kazu Hirata
786de7eb9a sbitmap.c: Fix formatting.
* sbitmap.c: Fix formatting.
	* scan.c: Likewise.
	* scan-decls.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-rgn.c: Likewise.
	* sched-vis.c: Likewise.
	* sdbout.c: Likewise.
	* sibcall.c: Likewise.
	* simplify-rtx.c: Likewise.
	* ssa.c: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa-dce.c: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* stringpool.c: Likewise.

From-SVN: r53324
2002-05-09 12:02:29 +00:00
Neil Booth
3ac88239fc c-lang.c (LANG_HOOKS_NAME): New.
* c-lang.c (LANG_HOOKS_NAME): New.
	(lang_hooks): Constify.
	(c_init_options): Update.
	(lang_identify): Remove.
	* c-parse.in (language_string): Remove.
	* dbxout.c: Include langhooks.h.
	(dbxout_symbol_location): Update.
	* dwarf2out.c: Include langhooks.h.
	(gen_compile_unit_die): Update.
	* dwarfout.c: Include langhooks.h.
	(prototyped_attribute, output_compile_unit_die): Update.
	* langhooks-def.h (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.h (struct lang_hooks): New members.  Constify.
	* stringpool.c: Don't include toplev.h.
	(set_identifier_size): Remove.
	* toplev.c (toplev_main): Initialize identifier size.
	(print_version): Update.
	* tree.h (language_string, init_lex, lang_identify,
	set_identifier_size): Remove.
	* Makefile.in: Update dependencies.
	* config/darwin.c: Include langhooks.h.
	(func_name_maybe_scoped): Update.
	* config/darwin.h (ASM_END_FILE): Update.
	* config/nextstep.h (ASM_END_FILE): Update.
	* config/nextstep21.h (ASM_END_FILE): Update.
	* config/i386/sun386.h (ASM_END_FILE): Update.
	* config/rs6000/rs6000.c (ASM_END_FILE): Include langhooks.h.
	(rs6000_output_function_epilogue): Update.
ada:
	* misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
	(struct lang_hooks): Constify.
	(language_string, lang_identify): Remove.
	* utils.c (init_decl_processing): Update.
cp:
	* cp-lang.c (LANG_HOOKS_NAME): Override.
	(struct lang_hooks): Constify.
	* lex.c (cxx_init_options): Update.
	(lang_identify): Remove.
	* parse.y (language_string): Remove.
f:
	* com.c (language_string, lang_identify): Remove.
	(struct lang_hooks): Constify.
	(LANG_HOOKS_NAME): Override.
	(init_parse): Update.
java:
	* jcf-parse.c (init_lex): Remove.
	* lang.c (language_string, lang_identify): Remove.
	(struct lang_hooks): Constify.
	(LANG_HOOKS_NAME): Override.
	(init_parse): Update.
objc:
	* objc-act.c (LANG_HOOKS_NAME): Override.
	(struct lang_hooks): Constify.
	(objc_init_options): Update.
	(lang_identify): Remove.

From-SVN: r46874
2001-11-09 07:14:20 +00:00
Joseph Myers
ff7cc30768 ChangeLog.0, [...]: Fix spelling errors.
* ChangeLog.0, ChangeLog.1, ChangeLog.2, ChangeLog.3, ChangeLog.4,
	ChangeLog.5, ChangeLog, FSFChangeLog.10, FSFChangeLog.11,
	c-common.c, c-common.h, c-parse.in, c-typeck.c, cfg.c, config.gcc,
	configure, configure.in, except.c, except.h, flow.c, function.c,
	gcc.c, gcse.c, genrecog.c, libgcc2.c, loop.c, loop.h, params.def,
	predict.def, predict.h, reg-stack.c, regmove.c, sched-deps.c,
	sched-int.h, sibcall.c, ssa.c, stringpool.c, toplev.c, tree.c,
	unroll.c: Fix spelling errors.

From-SVN: r46595
2001-10-28 20:09:17 +00:00
Kaveh R. Ghazi
0df6c2c74e c-format.c (maybe_read_dollar_number): Use safe-ctype macros and/or fold extra calls into fewer ones.
* c-format.c (maybe_read_dollar_number): Use safe-ctype macros
	and/or fold extra calls into fewer ones.
	* collect2.c (dump_file): Likewise.
	* cppexp.c (parse_number): Likewise.
	* cpplex.c (_cpp_lex_direct): Likewise.
	* final.c (output_asm_insn, asm_fprintf): Likewise.
	* fix-header.c (inf_scan_ident, main): Likewise.
	* fixinc/fixfixes.c (char_macro_use_fix, char_macro_def_fix):
	Likewise.
	* fold-const.c (real_hex_to_f): Likewise.
	* gen-protos.c (parse_fn_proto): Likewise.
	* genattrtab.c (check_attr_test, check_attr_value): Likewise.
	* genrecog.c (change_state, write_action): Likewise.
	* gensupport.c (shift_output_template): Likewise.
	* local-alloc.c (requires_inout): Likewise.
	* mips-tfile.c (IS_ASM_IDENT): Likewise.
	* protoize.c (is_id_char, main): Likewise.
	* real.c (asctoeg): Likewise.
	* recog.c (asm_operand_ok): Likewise.
	* reload.c (find_reloads): Likewise.
	* scan.c (scan_identget_token): Likewise.
	* sched-vis.c (print_value): Likewise.
	* stringpool.c (ggc_alloc_string): Likewise.
	* toplev.c (read_integral_parameter, decode_g_option): Likewise.
	* tradcif.y (parse_number, yylex, parse_escape): Likewise.
	* tradcpp.c (rescan): Likewise.
	* tree.c (clean_symbol_name): Likewise.
	* varasm.c (decode_reg_name): Likewise.

	* alpha.h (ASM_OUTPUT_ASCII): Likewise.
	* darwin.c (name_needs_quotes, func_name_maybe_scoped): Likewise.
	* dsp16xx.h (ASM_OUTPUT_ASCII): Likewise.
	* m88k.c (output_ascii): Likewise.
	* m88k.h (OVERRIDE_OPTIONS): Likewise.
	* mcore.h (REG_CLASS_FROM_LETTER): Likewise.
	* ns32k/encore.h (ASM_OUTPUT_ASCII): Likewise.
	* sh.h (REG_CLASS_FROM_LETTER): Likewise.

cp:
	* xref.c (GNU_xref_member): Use safe-ctype macros and/or fold
	extra calls into fewer ones.

f:
	* bad.c (ffebad_finish): Use safe-ctype macros and/or fold extra
	calls into fewer ones.
	* implic.c (ffeimplic_lookup_): Likewise.
	* intdoc.c (dumpimp): Likewise.
	* intrin.c (ffeintrin_init_0): Likewise.
	* lex.c (ffelex_backslash_, ffelex_cfebackslash_, ffelex_hash_):
	Likewise.
	* lex.h (ffelex_is_firstnamechar): Likewise.
	* target.c (ffetarget_integerhex): Likewise.

java:
	* gjavah.c (jni_print_char, decode_signature_piece): Use
	safe-ctype macros and/or fold extra calls into fewer ones.
	* lex.c (java_read_unicode, java_lex): Likewise.
	* lex.h (JAVA_START_CHAR_P, JAVA_PART_CHAR_P, JAVA_ASCII_DIGIT,
	JAVA_ASCII_HEXDIGIT, JAVA_ASCII_LETTER): Likewise.
	* mangle_name.c (append_unicode_mangled_name,
	unicode_mangling_length): Likewise.

From-SVN: r46397
2001-10-21 21:32:15 +00:00
Alexandre Petit-Bianco
4bad9e39d1 stringpool.c (get_identifier_with_length): New function.
2001-09-19  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* stringpool.c (get_identifier_with_length): New function.
	* tree.h (get_identifier_with_length): New prototype.

( http://gcc.gnu.org/ml/gcc-patches/2001-09/msg00779.html )

From-SVN: r45731
2001-09-21 08:58:35 -07:00
Lars Brinkhoff
1322177dbd Makefile.in, [...]: replace "GNU CC" with "GCC".
* Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c,
	bitmap.h, builtin-types.def, builtins.c, builtins.def,
	c-aux-info.c, c-common.c, c-common.def, c-common.h,
	c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c,
	c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in,
	c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c,
	caller-save.c, calls.c, collect2.c, collect2.h, combine.c,
	conditions.h, config.gcc, configure.frag, configure.in,
	conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c,
	cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h,
	dependence.c, df.c, df.h, diagnostic.c, diagnostic.h,
	doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c,
	dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c,
	emit-rtl.c, errors.c, errors.h, except.c, except.h,
	exgettext, explow.c, expmed.c, expr.c, expr.h, final.c,
	fixproto, flags.h, flow.c, fold-const.c, fp-test.c,
	function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp,
	gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c,
	gencheck.c, gencodes.c, genconfig.c, genemit.c,
	genextract.c, genflags.c, gengenrtl.c, genmultilib,
	genopinit.c, genoutput.c, genpeep.c, genrecog.c,
	gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c,
	ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c,
	graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h,
	gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h,
	gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h,
	hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h,
	integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c,
	libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h,
	machmode.def, machmode.h, main.c, mbchar.c, mbchar.h,
	mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk,
	mkmap-symver.awk, optabs.c, output.h, params.c, params.def,
	params.h, predict.c, predict.def, predict.h, prefix.c,
	prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c,
	read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c,
	regclass.c, regmove.c, regrename.c, regs.h, reload.c,
	reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c,
	rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h,
	sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c,
	sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c,
	ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c,
	stringpool.c, system.h, timevar.c, timevar.def, timevar.h,
	tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h,
	tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h,
	unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h,
	unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c,
	xcoffout.h: replace "GNU CC" with "GCC".

From-SVN: r45105
2001-08-22 14:35:51 +00:00
Neil Booth
84b7783609 c-decl.c (init_decl_processing): Don't call start_identifier_warnings.
* c-decl.c (init_decl_processing):
	 Don't call start_identifier_warnings.
	* flags.h (warn_id_clash, id_clash_len): Remove.
	* stringpool.c: Don't include flags.h.
	(scan_for_clashes, do_identifier_warnings,
	start_identifier_warnings): Remove.
	* toplev.c (warn_id_clash, id_clash_len): Remove.
	(display_help): Don't document -Wid-clash.
	(decode_W_option): Print warning on -Wid-clash.
	* tree.h (start_identifier_warnings): Remove.
	* invoke.texi: Remove documentation of -Wid-clash.

From-SVN: r42665
2001-05-27 21:04:28 +00:00
Neil Booth
083e9f9217 c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
* c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
	* stringpool.c:	(IS_FE_IDENT, make_identifier): Delete.
	(maybe_get_identifier): Update.
	* tree.h (make_identifier): Delete.

From-SVN: r42432
2001-05-22 07:23:37 +00:00
Neil Booth
a078edf813 hashtable.c (calc_hash): Fix HASHSTEP definition.
* hashtable.c (calc_hash): Fix HASHSTEP definition.
	* stringpool.c (make_identifier): No statistics here anymore.
	* objc-act.c (steup_string_decl): Remove redundant check.

From-SVN: r42337
2001-05-20 08:13:32 +00:00
Neil Booth
2a967f3d3a Makefile.in (OBJS, [...]): Update.
* Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
	cpplib.o, cpphash.o, fix-header): Update.
	(hashtable.o): New target.
	* c-common.h: Include cpplib.h.  Define C_RID_CODE and
	struct c_common_identifier here.
	* c-lang.c (c_init_options): Update.  Call set_identifier_size.
	* c-lex.c (c_lex): Update.
	* c-pragma.h: Update.
	* c-tree.h (struct lang_identifier): Contain c_common_identifier.
	Delete rid_code.
	(C_RID_CODE): Delete.
	* cpphash.c: Rewrite to use hashtable.c.
	* cpphash.h: Update include guards.
	(struct cpp_reader): Remove hashtab.
	hash_ob and buffer_ob are no longer pointers.  Add hash_table
	and our_hashtable.
	(HASHSTEP, _cpp_init_hashtable,	_cpp_lookup_with_hash): Delete.
	(_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
	(_cpp_cleanup_stacks): Rename _cpp_init_directives.
	* cppinit.c (cpp_create_reader): Update.
	* cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
	(cpp_interpret_charconst): Eliminate warning.
	* cpplib.c (do_pragma, do_endif, push_conditional,
	cpp_push_buffer, cpp_pop_buffer): Update.
	(_cpp_init_stacks): Rename cpp_init_directives.
	(_cpp_cleanup_stacks): Remove.
	* cpplib.h: Update include guards.  Include tree-core.h and c-rid.h.
	(cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
	 cpp_forall_identifiers, cpp_create_reader): Update.
	(C_RID_CODE, cpp_make_node): New.
	(c_common_identifier): New identifier node for C front ends.
	* cppmain.c (main): Update.
	* fix-header.c (read_scan_file): Update.
	* flags.h (id_clash_len): Make unsigned.
	* ggc.h (ggc_mark_nonnull_tree): New.
	* hashtable.c: New.
	* hashtable.h: New.
	* stringpool.c: Update comments and copyright.  Update to use
	hashtable.c.
	* toplev.c (approx_sqrt): Move to hashtable.c.
	(id_clash_len): Make unsigned.
	* toplev.h (ident_hash): New.
	* tree.c (gcc_obstack_init): Move to hashtable.c.
	* tree.h: Include hashtable.h.
	(IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
	(GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
	(struct tree_identifier): Update.
	(make_identifier): New.
cp:
	* cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
	(C_RID_CODE): Remove.
	* lex.c (cxx_init_options): Call set_identifier_size.  Update.
	(init_parse): Don't do it here.
objc:
	* objc-act.c (objc_init_options): Call set_identifier_size. Update.

From-SVN: r42334
2001-05-20 06:26:45 +00:00
Neil Booth
4c521bad98 c-common.h (RID_FIRST_PQ): New.
* c-common.h (RID_FIRST_PQ): New.
	* c-parse.in (objc_pq_context): New.
	(objc parser): Set objc_pq_context rather than calling
	remember_protocol_qualifiers and forget_protocol_qualifiers.
	Don't call save_and_forget_protocol_qualifiers.
	(yylexname): Handle objc protocol qualifiers here.
	* stringpool.c (struct str_header): Replace with sp_hashnode.
	(SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
	(alloc_string): Rename alloc_ident.  Use the SP_ accessors.
	Allocate an IDENTIFIER_NODE for each identifier.
	(FORALL_STRINGS, set_identifier): Delete.
	(FORALL_IDS, expand_string_table, stringpool_statistics): Update.
	(ggc_alloc_string): Use an obstack.
	(get_identifier, maybe_get_identifier, mark_string_hash): Update.
	* tree.h: Update comments.
	(set_identifier): Delete.
	* objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
	save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
	remember_protocol_qualifiers): Delete.

From-SVN: r42132
2001-05-16 06:22:15 +00:00
Zack Weinberg
71b7be38c3 stringpool.c (set_identifier): New function.
* stringpool.c (set_identifier): New function.
	* tree.h: Prototype it.

	* c-parse.in: Kill D_YES. If compiled for objc, call
	save_and_forget_protocol_qualifiers from init_reswords.
	* objc/objc-act.c (remember_protocol_qualifiers,
	forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
	Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
	vice versa.
	(save_and_forget_protocol_qualifiers): New function.
	* c-lex.h: Prototype save_and_forget_protocol_qualifiers.

From-SVN: r40170
2001-03-02 00:40:00 +00:00
Zack Weinberg
dfc5597093 stringpool.c (stringpool_statistics): Also report number and percentage of entries which are identifiers.
* stringpool.c (stringpool_statistics): Also report number and
	percentage of entries which are identifiers.

From-SVN: r37633
2000-11-22 00:18:18 +00:00
Zack Weinberg
a8a05998de ggc.h: Delete ggc_add_string_root and ggc_mark_string.
* ggc.h: Delete ggc_add_string_root and ggc_mark_string.  Add
        digit_vector and digit_string.
        * stringpool.c (digit_vector): New.
        (ggc_alloc_string): Use digit_string.

        * stmt.c (digit_strings): Delete.
        (init_stmt): Do not initialize digit_strings.
        (expand_asm_operands): Use ggc.h's digit_string macro.
        * toplev.c (mark_file_stack): Delete.
        (compile_file): Don't call init_tree_codes.
        (main): No need to make the file stack a GC root.
        * tree.c (init_tree_codes): Delete.
        * tree.h (init_tree_codes): Delete.

        * c-lex.c: Don't include ggc.h.
        (mark_splay_tree_node, mark_splay_tree): Delete.
        (init_c_lex): No need to ggc_strdup string constant.  Don't add
        file_info_tree to GGC roots.
        (cb_enter_file, cb_rename_file): No need to ggc_strdup
        ip->nominal_fname.

        * Makefile.in (c-lex.o): No longer depends on $(GGC_H).

        * dbxout.c (dbxout_init),
        dwarf2out.c (dwarf2out_line),
        ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees),
        varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once),
        xcoffout.c (xcoffout_source_file),
        i386.c (load_pic_register):
        Delete call(s) to ggc_add_string_root and/or ggc_mark_string.

        * except.c (create_rethrow_ref),
        profile.c (init_edge_profiler),
        toplev.c (compile_file),
        varasm.c (named_section, assemble_static_space,
        assemble_trampoline_template, output_constant_def, force_const_mem),
        i386.c (load_pic_register),
        ia64.c (ia64_encode_section_info),
        rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference,
        rs6000_emit_prologue, rs6000_emit_epilogue),
        rs6000.md (load_toc_aix_si, load_toc_aix_di):
        Change ggc_alloc_string (var, -1) to ggc_strdup (var).

        * profile.c (output_func_start_profiler),
        tree.c (make_node),
        i386.c (load_pic_register): No need to ggc_strdup string constant.

cp:
        * lex.c (mark_impl_file_chain): Delete.
        (init_parse): Remove call to ggc_add_string_root.  No need to
        ggc_strdup a string constant.  Do not add impl_file_chain to GC
        roots.
        (handle_pragma_implementation): No need to ggc_strdup main_filename.

f:
        * lex.c (ffelex_hash_): Change ggc_alloc_string (var, -1) to
        ggc_strdup (var).

java:
        * parse.y (goal): Remove call to ggc_add_string_root.

From-SVN: r37522
2000-11-17 17:31:13 +00:00
Zack Weinberg
520a57c81c stringpool.c: New file.
* stringpool.c: New file.
	* ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete.
	(ggc_alloc_string): Now in stringpool.o.
	* ggc-page.c, ggc-simple.c: Do not define or allocate empty_string.
	* ggc.h: Delete prototype of ggc_add_string_root.  #define
	ggc_add_string_root and ggc_mark_string to nothing.  Prototype
	init_stringpool and stringpool_statistics.
	(ggc_alloc_string): Returns a const char *.
	* tree.c (hash_table, do_identifier_warnings): Delete.
	(init_obstacks): Don't initialize the identifier hash table.
	(get_identifier, maybe_get_identifier, start_identifier_warnings,
	set_identifier_size): Now in stringpool.c.
	* tree.h (struct tree_string): Constify pointer field.
	(approx_sqrt): Prototype.

	* Makefile.in (stringpool.o): Add rule, mention in OBJS.

	* toplev.c (approx_sqrt): New function.
	(compile_file): Call stringpool_statistics if mem_report is on.
	(main): Call init_stringpool.

	* builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c
	(process_directive), c-typeck.c (constructor_asmspec, struct
	initializer_stack, start_init), except.c (create_rethrow_ref),
	stmt.c (digit_strings), toplev.c (decode_f_option), tree.c
	(built_in_filename), varasm,c (in_named_name,
	assemble_static_space, struct constant_descriptor, struct
	deferred_string, struct pool_constant, force_const_mem),
	i386.c (pic_label_name, global_offset_table_name), rs6000.c
	(rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *.

	* c-common.c (combine_strings): Combine strings in scratch
	buffer, then pass to build_string.
	* optabs.c (init_libfuncs), profile.c (init_edge_profiler,
	output_func_start_profiler), stmt.c (init_stmt), alpha.c
	(alpha_need_linkage), arm.c (arm_encode_call_attribute),
	i386.c (load_pic_register), ia64.c (ia64_encode_section_info),
	rs6000.c (rs6000_encode_section_info): Create string in
	scratch buffer, then pass to ggc_alloc_string.

	* stmt.c (expand_asm_operands): If we must adjust the
	constraint strings, do so by creating a new one, not by
	modifying the old one in place.  Constify some char *s.
	* config/pa/pa.c (hppa_encode_label): Drop unnecessary second
	argument.  Create string in scratch buffer, then pass to
	ggc_alloc_string.
	* config/pa/pa-protos.h: Update prototype.
	* config/pa/elf.h, config/pa/pa.h, config/pa/som.h:
	hppa_encode_label takes only one argument.

	* c-parse.in (if_prefix): Find the filename and line number at
	$-2 and $-1 respectively.
	* diagnostic.c (error_recursion): Add missing newline, use
	fputs, translate string.

cp:
	* lex.c (struct impl_files, internal_filename): Constify a char *.
java:
	* jcf-parse.c (get_constant), parse.y (do_merge_string_cste):
	Create string in scratch buffer, then pass to build_string.

From-SVN: r37514
2000-11-17 06:05:31 +00:00