1. 05 Sep, 1999 5 commits
    • Makefile.in (tree.o): Depend on ggc.h. · 87ff9c8e
      	* Makefile.in (tree.o): Depend on ggc.h.
      	(varasm.o): Likewise.
      	(function.o): Likewise.
      	(stmt.o): Likewise.
      	(except.o): Likewise.
      	(optabs.o): Likewise.
      	(emit-rtl.o): Likewise.
      	* emit-rtl.c: Include ggc.h.
      	(sequence_element_free_list): Remove, and all references.
      	(mark_sequence): New functions.
      	(mark_emit_state): New function.
      	* except.c: Include ggc.h.
      	(mark_eh_node, mark_eh_stack, mark_eh_queue): New functions.
      	(mark_tree_label_node): New functions.
      	(mark_eh_state): New function.
      	* function.c: Include ggc.h.
      	(mark_temp_slot, mark_function_chain): New functions.
      	(mark_function_state): New function.
      	(init_function_once): New function.
      	* function.h (init_function_once): New function.
      	* ggc-callbacks.c (lang_mark_false_label_stack): New function.
      	* ggc.h (label_node): Declare.
      	(eh_status, emit_status, stmt_status, varasm_status): Likewise.
      	(lang_mark_false_label_stack): New function.
      	(mark_temp_slot): Remove declaration.
      	(mark_function_chain): Likewise.
      	(mark_eh_state): Adjust prototype.
      	(mark_stmt_state, mark_emit_state, mark_varasm_state, mark_optab):
      	Likewise.
      	* optabs.c: Include ggc.h.
      	(mark_optab): New function.
      	(init_optabs): Add gc roots.
      	* stmt.c: Include ggc.h.
      	(mark_cond_nesting, mark_loop_nesting): New functions.
      	(mark_block_nesting, mark_case_nesting, mark_goto_fixup): Likewise.
      	(mark_stmt_state): New function.
      	* toplev.c (compile_file): Call init_function_once.
      	* tree.c: Include ggc.h.
      	(type_hash): Move declaration earlier in file.
      	(TYPE_HASH_SIZE, type_hash_table): Likewise.
      	(init_obstacks): Add gc roots.
      	(mark_type_hash): New function.
      	* varasm.c: Include ggc.h.
      	(mark_pool_constant): New function.
      	(mark_varasm_state): New function.
      
      Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk>
      Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
      
      From-SVN: r29119
      Richard Henderson committed
    • c-decl.c (struct language_function): Renamed from struct c_function. · e2ecd91c
      	* c-decl.c (struct language_function): Renamed from struct c_function.
      	Delete elt NEXT.
      	(c_function_chain): Delete.
      	(push_c_function_context): New arg F.  Don't warn about nested
      	functions here.  Fill LANGUAGE elt of F.  Delete code to update
      	c_function_chain.  Don't call push_function_context.
      	(pop_c_function_context): New arg F.  Restore from there instead of
      	from c_function_chain.  Don't call pop_function_context.  Clear out
      	LANGUAGE field of F when done.
      	* c-lang.c: Include "function.h"
      	(lang_init): Initialize save_lang_status and restore_lang_status.
      	* c-parse.in (nested_function, nested_function_notype): Warn about
      	nested functions.  Call push_function_context/pop_function_context
      	instead of the _c_ variants.
      	* c-tree.h (push_c_function_context, pop_c_function_context): Update
      	prototype.
      	* Makefile.in (c-lang.o): Update dependencies.
      
      	* emit-rtl.c (init_emit): Use xmalloc to allocate regno_reg_rtx,
      	regno_pointer_flag, regno_pointer_align.
      	(gen_reg_rtx): Use xrealloc to enlarge them.
      	(free_emit_status): New function.
      	* function.c (mark_machine_status, mark_lang_status): New variables.
      	(assign_stack_local_1): Renamed from assign_outer_stack_local.  Merge
      	in some bits from assign_stack_local.  All callers changed to use new
      	name.
      	(assign_stack_local): Just call assign_stack_local_1.
      	(free_after_compilation): New function.
      	(put_reg_into_stack): Simplify to always call assign_stack_local_1.
      	(trampoline_address): Likewise.
      	(assign_parms): Use xcalloc/xrealloc to allocate parm_reg_stack_loc.
      	(prepare_function_start): Explicitly clear some more variables.
      	* function.h (struct function): New elt can_garbage_collect.
      	(mark_machine_status, mark_lang_status): Declare variables.
      	(free_after_compilation, free_emit_status, free_varasm_status,
      	init_varasm_status): Declare functions.
      	* toplev.c (rest_of_compilation): Call free_after_compilation when
      	done with the current function.
      	* varasm.c (free_varasm_status): New function.
      
      From-SVN: r29117
      Bernd Schmidt committed
    • Make-lang.in (f771): Depend on ggc-callbacks.o. · 6308c574
      	* Make-lang.in (f771): Depend on ggc-callbacks.o.
      	* Makefile.in (OBJS): Add ggc-callbacks.o.
      	(OBJDEPS): Likewise.
      
      From-SVN: r29116
      Mark Mitchell committed
    • sparc.h (EXPAND_BUILTIN_VA_START): Define. · a8b2c8a1
              * sparc.h (EXPAND_BUILTIN_VA_START): Define.
              (EXPAND_BUILTIN_VA_ARG): Define.
              * sparc.c (sparc_va_start): New.
              (sparc_va_arg): New.
      
      From-SVN: r29115
      Richard Henderson committed
  2. 04 Sep, 1999 20 commits
    • Makefile.in (C_AND_C_OBJS): Add ggc-callbacks.o. · c24d7ed2
      	* Makefile.in (C_AND_C_OBJS): Add ggc-callbacks.o.
      	(OBJS): Add $(GGC).
      	(ggc-callbacks.o): New target.
      	* ggc-callbacks.c: New file.
      
      From-SVN: r29113
      Mark Mitchell committed
    • c4x.h (CALLER_SAVE_PROFITABLE): Disable. · ad3781e1
      	* config/c4x/c4x.h (CALLER_SAVE_PROFITABLE): Disable.
      
      This has been disabled since caller-save has marginal benefit on the c3x/c4x
      and it avoids a long standing caller-save bug.
      
      From-SVN: r29112
      Michael Hayes committed
    • Makefile.in (C_AND_C_OBJS): Add gcc-callbacks.o. · 03705c95
      GCC:
      
      Sat Sep  4 13:44:01 1999  Mark Mitchell  <mark@codesourcery.com>
      
      	* Makefile.in (C_AND_C_OBJS): Add gcc-callbacks.o.
      	(OBJS): Add $(GCC).
      	(ggc-callbacks.o): New target.
      	* ggc-callbacks.c: New file.
      
      Chill:
      
      1999-09-04  Mark Mitchell  <mark@codesourcery.com>
      
      	* Make-lang.in (cc1chill): Depend on ggc-callbacks.o.
      	* Makefile.in (CHILL_OBJS): Add ggc-callbacks.o.
      
      C++:
      
      1999-09-04  Mark Mitchell  <mark@codesourcery.com>
      
      	* Make-lang.in (cc1plus): Remove dependency on GGC.
      	* Makefile.in (OBJS): Don't mention ggc-simple.o.
      	(OBJDEPS): Don't mention ggc-simple.o.
      
      F77:
      
      Sat Sep  4 13:46:27 1999  Mark Mitchell  <mark@codesourcery.com>
      
      	* Make-lang.in (f771): Depend on ggc-callbacks.o.
      	* Makefile.in (OBJS): Add ggc-callbacks.o.
      	(OBJDEPS): Likewise.
      
      Objc:
      
      1999-09-04  Mark Mitchell  <mark@codesourcery.com>
      
      	* Make-lang.in (jc1): Depend on ggc-callbacks.o.
      	* Makefile.in (OBJS): Add ggc-callbacks.o.
      	(OBJDEPS): Likewise.
      
      From-SVN: r29111
      Mark Mitchell committed
    • Convert many single variables to arrays · 34220a12
      From-SVN: r29110
      Bernd Schmidt committed
    • Make-lang.in (cc1plus): Depend on $(GGC). · 6c7c62c6
      	* Make-lang.in (cc1plus): Depend on $(GGC).
      	* Makefile.in (OBJS): Add ggc-simple.o.
      	(OBJDEPS): Likewise.
      	* cp-tree.h (language_function): Rename members to `x_' versions;
      	we now have x_named_labels, x_ctor_label, x_dtor_label,
      	x_base_init_list, x_member_init_list, x_base_init_expr,
      	x_current_class_ptr, x_current_class_ref, x_last_tree,
      	x_last_expr_type, x_last_dtor_insn, x_last_parm_cleanup_insn, and
      	x_result_rtx.
      	(dtor_label, ctor_label, current_base_init_list,
      	current_member_init_list, base_init_expr, current_class_ptr,
      	current_class_ref, last_tree, last_expr_type): Adjust accordingly.
      	* decl.c: Include ggc.h.
      	(last_dtor_insn): Adjust to use x_ names.
      	(last_parm_cleanup_insn): Likewise.
      	(original_result_rtx): Likewise.
      	(named_labels): Likewise.
      	(mark_binding_level): New function.
      	(mark_cp_function_context): Likewise.
      	(mark_false_label_stack): Likewise.
      	(lang_mark_tree): Likewise.
      	(lang_cleanup_tree): Likewise.
      
      From-SVN: r29109
      Mark Mitchell committed
    • Make-lang.in (cc1plus): Depend on $(GGC). · 4519c0a8
      	* Make-lang.in (cc1plus): Depend on $(GGC).
      	* Makefile.in (OBJS): Add ggc-simple.o.
      	(OBJDEPS): Likewise.
      	* cp-tree.h (language_function): Rename members to `x_' versions;
      	we now have x_named_labels, x_ctor_label, x_dtor_label,
      	x_base_init_list, x_member_init_list, x_base_init_expr,
      	x_current_class_ptr, x_current_class_ref, x_last_tree,
      	x_last_expr_type, x_last_dtor_insn, x_last_parm_cleanup_insn, and
      	x_result_rtx.
      	(dtor_label, ctor_label, current_base_init_list,
      	current_member_init_list, base_init_expr, current_class_ptr,
      	current_class_ref, last_tree, last_expr_type): Adjust accordingly.
      	* decl.c: Include ggc.h.
      	(last_dtor_insn): Adjust to use x_ names.
      	(last_parm_cleanup_insn): Likewise.
      	(original_result_rtx): Likewise.
      	(named_labels): Likewise.
      	(mark_binding_level): New function.
      	(mark_cp_function_context): Likewise.
      	(mark_false_label_stack): Likewise.
      	(lang_mark_tree): Likewise.
      	(lang_cleanup_tree): Likewise.
      
      From-SVN: r29107
      Mark Mitchell committed
    • Makefile.in (GGC, GGC_LIB): New. · 0a25f1f5
      	* Makefile.in (GGC, GGC_LIB): New.
      	(HOST_RTL): Include ggc-none.o.
      	(ggc-simple.o): New target.
      	(ggc-none.o): Likewise.
      	* tree.h (tree_common): Add gc_mark.
      	* rtl.h (struct rtx_def): Steal a bit from code to make gc_mark.
      	(struct rtvec_def): Add gc_mark.
      	* emit-rtl.c (global_rtl): Update static initializers to contain
      	enough initializers.
      	* ggc.h, ggc-none.c, ggc-simple.c: New files.
      	* toplev.c (gc_time): New variable.
      	(all_time): New variable.
      	(compile_file): Print gc time.
      	(print_time): Calculate percentage of the whole.
      
      From-SVN: r29106
      Richard Henderson committed
    • Clean up conflict marks introduced in revision 1.4254. · 482cbc74
      From-SVN: r29105
      Alexandre Oliva committed
    • dummy checkin to prevent merge lossage · e3de40e4
      From-SVN: r29102
      Jeff Law committed
    • Change memory mangement and constant pool handling for nested functions to match… · 36edd3cc
      Change memory mangement and constant pool handling for nested functions to match that of normal functions; add init_machine_status mechanism.
      
      From-SVN: r29101
      Bernd Schmidt committed
    • Daily bump. · c8d90e90
      From-SVN: r29099
      Jeff Law committed
    • c4x.md (rptb_init): Renamed from *rptb_init. · f0cae6c7
      Sat Sep  4 16:56:28 1999  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
      
      	* config/c4x/c4x.md (rptb_init): Renamed from *rptb_init.
      	(doloop_begin):  Simplify pattern and use emit_jump_insn.
      	(doloop_end): Simplify pattern, switch operand order,
      	and use emit_jump_insn.
      
      From-SVN: r29098
      Michael Hayes committed
    • cast-qual-1.c: Add missing dg-bogus tag. · edf50130
      1999-09-03 19:31 -0700  Zack Weinberg  <zack@bitmover.com>
      
      	* gcc.dg/cast-qual-1.c: Add missing dg-bogus tag.
      	* gcc.dg/compare1.c: Fix typo.
      	* gcc-dg/cpp-unc.c, cpp-unc1.c, cpp-unc2.c, cpp-unc3.c: New
      	files which test the preprocessor's unterminated conditional
      	diagnostics.
      
      From-SVN: r29097
      Zack Weinberg committed
    • Makefile.in (CXX_TREE_H): Include function.h. · 99dccabc
      
      	* Makefile.in (CXX_TREE_H): Include function.h.
      	(decl.o): Don't depend on function.h.
      	(decl2.o): Likewise.
      	(typeck.o): Likewise.
      	(init.o): Likewise.
      	(method.o): Likewise.
      	* cp-tree.h: Include function.h.
      	(cp_function): Rename to language_function.  Remove next.
      	(cp_function_chain): Make it a macro, not a variable.
      	(push_cp_function_context): Don't declare.
      	(pop_cp_function_context): Likewise.
      	* decl.c: Don't include function.h.
      	(push_cp_function_context): Make it static.  Make it suitable for
      	a save_lang_status callback.
      	(pop_cp_function_context): Likewise.
      	(maybe_push_to_top_level): Call push_function_context_to, not
      	push_cp_function_context.
      	(pop_from_top_level): Call pop_function_context_from, not
      	pop_cp_function_context.
      	(init_decl_processing):  Set save_lang_status and
      	restore_lang_status.  Call push_function_context_to, not
      	push_cp_function_context.
      	(cp_function_chain): Remove.
      	* decl2.c: Don't include function.h.
      	* except.c: Don't include function.h.
      	(start_anon_func): Call push_function_context_to, not
      	push_cp_function_context.
      	(end_anon_func):  Call pop_function_context_from, not
      	pop_cp_function_context.
      	* init.c: Don't include function.h.
      	* lex.c (begin_definition_of_inclass_inline): Call
      	push_function_context_to, not push_cp_function_context.
      	(process_next_inline):  Call pop_function_context_from, not
      	pop_cp_function_context.
      	* method.c: Don't include function.h.
      	(synthesize_method): Call push_function_context_to, not
      	push_cp_function_context.  Call pop_function_context_from, not
      	pop_cp_function_context.
      	* typeck.c: Don't include function.h.
      
      From-SVN: r29096
      Mark Mitchell committed
    • function.h (struct function): Add new element LANGUAGE. · 8c5666b4
       	* function.h (struct function): Add new element LANGUAGE.
       	(save_lang_status): Declare new variable.
      	(restore_lang_status): Likewise.
      	* function.c (save_lang_status): Define.
      	(restore_lang_status): Likewise.
      	(push_function_context_to): Call language-specific save function.
      	(pop_function_context_from): Call language-specific restore function.
      
      From-SVN: r29095
      Bernd Schmidt committed
    • i386.md (movsf_1): Check REG_P before use of REGNO. · 0c174a68
              * i386.md (movsf_1): Check REG_P before use of REGNO.
              (movdf_1): Likewise.
              (movxf_1): Likewise.
              (extendsfdf2): Likewise.
              (extendsfxf2): Likewise.
              (extenddfxf2): Likewise.
      
      From-SVN: r29094
      Alasdair Baird committed
    • decl.c (expand_static_init): Tweak handling of static initializations for… · 951525d2
      decl.c (expand_static_init): Tweak handling of static initializations for objects without constructors.
      
      	* decl.c (expand_static_init): Tweak handling of static
      	initializations for objects without constructors.
      
      From-SVN: r29093
      Mark Mitchell committed
  3. 03 Sep, 1999 15 commits