platform/upstream/gcc.git
24 years agoPass -pedantic command line switch on to cpplib
Nick Clifton [Thu, 9 Sep 1999 11:22:50 +0000 (11:22 +0000)]
Pass -pedantic command line switch on to cpplib

From-SVN: r29232

24 years agoggc-simple.c (IS_MARKED, [...]): New.
Richard Henderson [Thu, 9 Sep 1999 10:43:57 +0000 (03:43 -0700)]
ggc-simple.c (IS_MARKED, [...]): New.

        * ggc-simple.c (IS_MARKED, IGNORE_MARK): New.
        (GGC_ANY_MAGIC, GGC_ANY_MAGIC_MARK): New.
        (struct ggc_any): Replace `mark' with `magic_mark'.
        (ggc_alloc_string): Use memcpy, not bcopy.
        (ggc_alloc_any): Set magic_mark.  Update bytes_alloced_since_gc.
        (ggc_free_{rtx,rtvec,tree,string}): Mark inline.
        (ggc_free_any): New.
        (ggc_mark_string): Use IGNORE_MARK.  Calc back to struct gcc_string.
        (ggc_mark): Use IGNORE_MARK.  Abort if magic doesn't match.
        (ggc_collect): Re-enable collection avoidance.  Use GGC_ANY_MARK.
        Use IS_MARKED. Use ggc_free_any.

From-SVN: r29231

24 years agodefine NO_IMPLICIT_EXTERN_C
Scott Bambrough [Thu, 9 Sep 1999 09:12:03 +0000 (09:12 +0000)]
define NO_IMPLICIT_EXTERN_C

From-SVN: r29230

24 years ago* toplev.c (main): Always init_ggc.
Richard Henderson [Thu, 9 Sep 1999 08:56:16 +0000 (01:56 -0700)]
* toplev.c (main): Always init_ggc.

From-SVN: r29229

24 years agoDaily bump.
Jeff Law [Thu, 9 Sep 1999 07:45:13 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r29228

24 years agoexcept.c (find_all_handler_type_matches): Free the list if we found no matches.
Richard Henderson [Thu, 9 Sep 1999 07:17:20 +0000 (00:17 -0700)]
except.c (find_all_handler_type_matches): Free the list if we found no matches.

        * except.c (find_all_handler_type_matches): Free the list if
        we found no matches.

From-SVN: r29227

24 years agocombine.c (SUBST): Break out to a real function do_SUBST.
Richard Henderson [Thu, 9 Sep 1999 07:07:41 +0000 (00:07 -0700)]
combine.c (SUBST): Break out to a real function do_SUBST.

        * combine.c (SUBST): Break out to a real function do_SUBST.
        (SUBST_INT): Likewise.
        * gcse.c (free_pre_mem): Free `temp_bitmap'.
        (pre_insert): Free `inserted'.
        * loop.c (basic_induction_var): Always set `location'.

        * function.c (expand_function_end): Add initial_trampoline as a root.
        * rtl.h (init_varasm_once): Declare.
        * toplev.c (compile_file): Call it.
        * ggc-simple.c (ggc_mark_string_ptr): New.
        (ggc_add_string_root): New.
        (ggc_collect): Disable collection avoidance temporarily.
        * ggc.h (ggc_add_string_root): Declare.
        * except.c (create_rethrow_ref): Use ggc_alloc_string.
        * optabs.c (init_libfuncs): Likewise.
        * varasm.c (named_section): Use ggc_alloc_string.
        (make_function_rtl): Likewise.
        (make_decl_rtl): Likewise.
        (assemble_static_space): Likewise.
        (assemble_trampoline_template): Likewise.
        (output_constant_def): Likewise.
        (force_const_mem): Likewise.
        (mark_const_hash_entry): New.
        (mark_pool_sym_hash_table): New.
        (mark_varasm_state): Use it.
        (init_varasm_once): New.

        * expr.h (init_one_libfunc): Declare.
        * optabs.c (init_one_libfunc): New.
        (init_optabs): Use it.
        * config/gofast.h: Likewise.
        * config/sparc/sol2.h (INIT_SUBTARGET_OPTABS): Likewise.
        * config/sparc/sparc.h (INIT_TARGET_OPTABS): Likewise.

From-SVN: r29226

24 years agocp-tree.h (scratch_tree_cons): Remove.
Mark Mitchell [Thu, 9 Sep 1999 06:17:13 +0000 (06:17 +0000)]
cp-tree.h (scratch_tree_cons): Remove.

* cp-tree.h (scratch_tree_cons): Remove.
* call.c: Replace all uses of expr_tree_cons, saveable_tree_cons,
and perm_tree_cons with plain tree_cons.
* class.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* init.c: Likewise.
* lex.c: Likewise.
* method.c: Likewise.
* parse.y: Likewise.
* pt.c: Likewise.
* repo.c: Likewise.
* rtti.c: Likewise.
* search.c: Likewise.
* typeck.c: Likewise.
* parse.c: Regenerated.
* tree.c (build_srcloc): Simplify.

From-SVN: r29225

24 years agoMakefile.in (cppexp.o): Depend on cpphash.h.
Geoff Keating [Thu, 9 Sep 1999 04:00:37 +0000 (04:00 +0000)]
Makefile.in (cppexp.o): Depend on cpphash.h.

* Makefile.in (cppexp.o): Depend on cpphash.h.
* cppexp.c (cpp_lex): Handle `defined (xxx)' for poisoned xxx.
Include cpphash.h.
* cpphash.c (special_symbol): Handle plain `xxx' for poisoned xxx.
* cpplib.c (do_define): Generalise to handle poisoned definitions,
redefining poisoned identifiers, etc.
(do_undef): Don't allow poisoned identifiers to be undefined.
(do_pragma): Add #pragma poison.
(do_xifdef): Handle `#ifdef xxx' for poisoned xxx.

* cccp.c: Add T_POISON node type.
(special_symbol): Handle `defined(xxx)' and plain `xxx' for
poisoned xxx.
(do_define): Generalise to handle poisoned definitions,
redefining poisoned identifiers, etc.
(do_undef): Don't allow poisoned identifiers to be undefined.
(do_pragma): Add #pragma poison.
(do_xifdef): Handle `#ifdef xxx' for poisoned xxx.

* c-pragma.c (handle_pragma_token): Ignore #pragma poison.
* c-pragma.h: Add ps_poison state.  We now always have generic
pragmas.

From-SVN: r29224

24 years agocp-tree.h (lang_decl_flags): Remove permanent_attr.
Mark Mitchell [Thu, 9 Sep 1999 03:31:23 +0000 (03:31 +0000)]
cp-tree.h (lang_decl_flags): Remove permanent_attr.

* cp-tree.h (lang_decl_flags): Remove permanent_attr.
Remove next.
(LANG_DECL_PERMANENT): Remove.
* decl.c (duplicate_decls): Don't mess about with obstacks trying
to free memory.
(lang_mark_tree): Mark DECL_LANG_SPECIFIC.
* lex.c (free_lang_decl_chain): Remove.
(build_lang_decl): Don't use obstacks.
(retrofit_lang_decl): Likewise.
(copy_lang_decl): Likewise.

From-SVN: r29223

24 years agoggc.h (ggc_alloc): New function.
Mark Mitchell [Thu, 9 Sep 1999 03:26:58 +0000 (03:26 +0000)]
ggc.h (ggc_alloc): New function.

* ggc.h (ggc_alloc): New function.
(ggc_mark): Likewise.
* ggc-simple.c (ggc_any): New structure.
(ggc_status): Add anys.
(n_anys_collected): New variable.
(ggc_alloc): Define.
(ggc_mark): Likewise.
(ggc_collect): Collect the anys.

From-SVN: r29222

24 years agocp-tree.h (saved_scope): Remove old_binding_level and function_decl.
Mark Mitchell [Thu, 9 Sep 1999 01:47:02 +0000 (01:47 +0000)]
cp-tree.h (saved_scope): Remove old_binding_level and function_decl.

* cp-tree.h (saved_scope): Remove old_binding_level and
function_decl.  Tidy up.
* decl.c (mark_saved_scope): Don't set them.
(maybe_push_to_top_level): Clear memory.

From-SVN: r29221

24 years agodecl.c (layout_var_decl): Change prototype.
Mark Mitchell [Thu, 9 Sep 1999 00:29:22 +0000 (00:29 +0000)]
decl.c (layout_var_decl): Change prototype.

* decl.c (layout_var_decl): Change prototype.  Don't complete
types for external objects.
(check_initializer): Likewise.  Tidy.
(initialize_local_var): Complete types here.
(cp_finish_decl): Not here.  Reorganize a little.
(grokvardecl): Don't complete types here.

From-SVN: r29220

24 years ago* c-decl.c (mark_binding_level): Make static to match prototype.
Kaveh R. Ghazi [Thu, 9 Sep 1999 00:22:07 +0000 (00:22 +0000)]
* c-decl.c (mark_binding_level): Make static to match prototype.

From-SVN: r29219

24 years ago* xmemdup.c: Include sys/types.h.
Kaveh R. Ghazi [Thu, 9 Sep 1999 00:11:39 +0000 (00:11 +0000)]
* xmemdup.c: Include sys/types.h.

From-SVN: r29218

24 years ago* flow.c (new_insn_dead_notes): Don't early out for preexisting regs.
Richard Henderson [Wed, 8 Sep 1999 23:42:18 +0000 (16:42 -0700)]
* flow.c (new_insn_dead_notes): Don't early out for preexisting regs.

From-SVN: r29217

24 years agogengenrtl.c (CONST_DOUBLE_FORMAT): Take the size REAL_ARITHMETIC will use into account.
Richard Henderson [Wed, 8 Sep 1999 23:09:38 +0000 (16:09 -0700)]
gengenrtl.c (CONST_DOUBLE_FORMAT): Take the size REAL_ARITHMETIC will use into account.

        * gengenrtl.c (CONST_DOUBLE_FORMAT): Take the size REAL_ARITHMETIC
        will use into account.  Expand the max width to 5.
        * rtl.c: Likewise.

From-SVN: r29216

24 years agoggc-simple.c (ggc_free_rtx): Poison the correct amount for the rtx length.
Richard Henderson [Wed, 8 Sep 1999 23:02:12 +0000 (16:02 -0700)]
ggc-simple.c (ggc_free_rtx): Poison the correct amount for the rtx length.

        * ggc-simple.c (ggc_free_rtx): Poison the correct amount
        for the rtx length.

From-SVN: r29215

24 years ago* alpha.md (call value patterns): Remove the result predicates.
Richard Henderson [Wed, 8 Sep 1999 22:24:45 +0000 (15:24 -0700)]
* alpha.md (call value patterns): Remove the result predicates.

From-SVN: r29214

24 years agodecl.c (start_function): Clear last_dtor_insn and last_parm_cleanup_insn.
Mark Mitchell [Wed, 8 Sep 1999 20:53:47 +0000 (20:53 +0000)]
decl.c (start_function): Clear last_dtor_insn and last_parm_cleanup_insn.

* decl.c (start_function): Clear last_dtor_insn and
last_parm_cleanup_insn.
(push_cp_function_context): Just copy over a little of
the old context, not all of it.

From-SVN: r29213

24 years agoMakefile.in (stmp-fixinc): Remove extraneous exit 1 from last change.
Richard Henderson [Wed, 8 Sep 1999 20:37:56 +0000 (13:37 -0700)]
Makefile.in (stmp-fixinc): Remove extraneous exit 1 from last change.

        * Makefile.in (stmp-fixinc): Remove extraneous exit 1 from
        last change.

From-SVN: r29212

24 years agocp-tree.h (copy_to_permanent): Remove.
Mark Mitchell [Wed, 8 Sep 1999 20:12:35 +0000 (20:12 +0000)]
cp-tree.h (copy_to_permanent): Remove.

* cp-tree.h (copy_to_permanent): Remove.
(permanent_p): Likewise.
* decl.c (building_typename_type): Don't use copy_to_permanent.
(start_decl): Likewise.
(grok_reference_init): Likewise.
(cp_finish_decl): Likewise.
* init.c (build_new_1): Don't use mapcar.
(build_vec_delete_1): Don't use copy_to_permanent.
(build_vec_init): Likewise.
* parse.y (primary): Likewise.
* parse.c: Regenerated.
* pt.c (push_template_decl_real): Don't use copy_to_permanent.
(lookup_template_class): Likewise.
(tsubst_friend_function): Likewise.
(instantiate_class_template): Likewise.
(tsubst_decl): Likewise.
(tsubst): Likewise.
(instantiate_template): Likewise.
(unify): Likewise.
* rtti.c (get_tinfo_fn): Likewise.
(build_dynamic_cast): Likewise.
* semantics.c (finish_if_stmt_cond): Likewise.
(finish_while_stmt_cond): Likewise.
(finish_do_stmt): Likewise.
(finish_for_cond): Likewise.
(finish_for_expr): Likewise.
(finish_cleanup): Likewise.
(add_decl_stmt): Likewise.
(finish_named_return_value): Likewise.
(finish_qualified_call_expr): Likewise.
* tree.c (perm_manip): Remove.
(build_exception_variant): Don't use copy_to_permanent.
(permanent_p): Remove.
(copy_to_permament): Remove.
(build_min_nt): Don't use copy_to_permanent.
(build_min): Likewise.
(min_tree_cons): Likewise.
* typeckc.c (build_static_cast): Likewise.
(build_reinterpret_cast): Likewise.
(build_const_cast): Likewise.

From-SVN: r29211

24 years agosystem.h (sbrk, [...]): Backup prototypes changed from extern char *, to extern PTR.
Kaveh R. Ghazi [Wed, 8 Sep 1999 19:42:01 +0000 (19:42 +0000)]
system.h (sbrk, [...]): Backup prototypes changed from extern char *, to extern PTR.

* system.h (sbrk, malloc, calloc, realloc): Backup prototypes
changed from extern char *, to extern PTR.  Also fix typo in
NEED_DECLARATION_REALLOC test.

* mips-tdump.c (malloc, calloc, realloc): Don't prototype.

From-SVN: r29210

24 years agoposix-threads.h (_Jv_PthreadCheckMonitor): Reverted previous change and implemented...
Tom Tromey [Wed, 8 Sep 1999 17:10:22 +0000 (17:10 +0000)]
posix-threads.h (_Jv_PthreadCheckMonitor): Reverted previous change and implemented a correct test in the __m_count case.

* include/posix-threads.h (_Jv_PthreadCheckMonitor): Reverted
previous change and implemented a correct test in the __m_count
case.

From-SVN: r29209

24 years agogansidecl.h (__attribute__, [...]): Delete.
Kaveh R. Ghazi [Wed, 8 Sep 1999 15:44:18 +0000 (15:44 +0000)]
gansidecl.h (__attribute__, [...]): Delete.

* gansidecl.h (__attribute__, ATTRIBUTE_UNUSED_LABEL,
ATTRIBUTE_UNUSED, ATTRIBUTE_NORETURN, ATTRIBUTE_PRINTF,
ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2, ATTRIBUTE_PRINTF_3,
ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5, GENERIC_PTR): Delete.

* c-decl.c (field_decl_cmp): Use PTR instead of GENERIC_PTR.

* cccp.c (pcfinclude): Likewise.

* global.c (allocno_compare): Likewise.

* haifa-sched.c (rank_for_schedule): Likewise.

* local-alloc.c (qty_sugg_compare_1, qty_compare_1): Likewise.

* reload1.c (hard_reg_use_compare, reload_reg_class_lower): Likewise.

* stupid.c (stupid_reg_compare): Likewise.

* tree.c (_obstack_allocated_p): Likewise.

* varray.h (varray_data_tag, VARRAY_GENERIC_PTR_INIT): Likewise.

From-SVN: r29208

24 years agoHapless User Hint for gperf
Bruce Korb [Wed, 8 Sep 1999 14:08:26 +0000 (14:08 +0000)]
Hapless User Hint for gperf

From-SVN: r29207

24 years agoggc-simple.c (init_ggc): Absorb the old init.
Richard Henderson [Wed, 8 Sep 1999 11:59:52 +0000 (04:59 -0700)]
ggc-simple.c (init_ggc): Absorb the old init.

        * ggc-simple.c (init_ggc): Absorb the old init.
        (ggc_push_context): Use xcalloc.
        (ggc_alloc_rtx, ggc_alloc_rtvec, ggc_alloc_tree): Likewise.
        (ggc_collect): Add [rvts] tags to the collection stats.

From-SVN: r29206

24 years agolists.c: Include ggc.h.
Richard Henderson [Wed, 8 Sep 1999 11:46:28 +0000 (04:46 -0700)]
lists.c: Include ggc.h.

        * lists.c: Include ggc.h.
        (zap_lists): New.
        (init_EXPR_INSN_LIST_cache): Install it.

From-SVN: r29205

24 years ago* cccp.c (main): Fix handling of -include and -imacros options.
Andreas Schwab [Wed, 8 Sep 1999 09:43:16 +0000 (09:43 +0000)]
* cccp.c (main): Fix handling of -include and -imacros options.

From-SVN: r29204

24 years agosizeof3.C: New test.
Nathan Sidwell [Wed, 8 Sep 1999 08:50:57 +0000 (08:50 +0000)]
sizeof3.C: New test.

* g++.old-deja/g++.other/sizeof3.C: New test.
* g++.old-deja/g++.other/sizeof4.C: New test.
* g++.old-deja/g++.other/ambig2.C: Mark XFAILs.
* g++.old-deja/g++.other/lookup16.C: Mark XFAIL.

From-SVN: r29203

24 years ago* configure.in: Add mpeix.mt make fragment.
Mark Klein [Wed, 8 Sep 1999 08:40:16 +0000 (08:40 +0000)]
* configure.in: Add mpeix.mt make fragment.

From-SVN: r29202

24 years ago* cpplib.c (cpp_push_buffer): Fix order of arguments.
Jeffrey A Law [Wed, 8 Sep 1999 08:24:39 +0000 (08:24 +0000)]
* cpplib.c (cpp_push_buffer): Fix order of arguments.

From-SVN: r29201

24 years ago* libiberty.h (xmemdup): Add prototype for new function.
Jeff Garzik [Wed, 8 Sep 1999 08:20:11 +0000 (08:20 +0000)]
* libiberty.h (xmemdup): Add prototype for new function.

From-SVN: r29200

24 years agoxmemdup.c: New xmemdup function.
Jeff Garzik [Wed, 8 Sep 1999 08:19:52 +0000 (08:19 +0000)]
xmemdup.c: New xmemdup function.

* xmemdup.c:  New xmemdup function.
* Makefile.in, makefile.vms, vmsbuild.com:  Use xmemdup.[co].

From-SVN: r29199

24 years agortl.h (obstack_alloc_rtx): Removed, it's now static in genrtl.c.
Alexandre Oliva [Wed, 8 Sep 1999 07:52:57 +0000 (07:52 +0000)]
rtl.h (obstack_alloc_rtx): Removed, it's now static in genrtl.c.

* rtl.h (obstack_alloc_rtx): Removed, it's now static in
genrtl.c.

From-SVN: r29198

24 years agoDaily bump.
Jeff Law [Wed, 8 Sep 1999 07:45:08 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r29197

24 years agoflow.c (insn_dead_p): Use XEXP rather than SUBREG_REG.
Alasdair Baird [Wed, 8 Sep 1999 07:34:47 +0000 (07:34 +0000)]
flow.c (insn_dead_p): Use XEXP rather than SUBREG_REG.

         * flow.c (insn_dead_p): Use XEXP rather than SUBREG_REG.
         * haifa-sched.c (sched_analyze_1): Use XEXP rather than SUBREG_REG
         and SET_DEST. Update comment.

From-SVN: r29196

24 years agoc4x.c: Include ggc.h.
Michael Hayes [Wed, 8 Sep 1999 07:11:02 +0000 (07:11 +0000)]
c4x.c: Include ggc.h.

* config/c4x/c4x.c: Include ggc.h.
(c4x_add_gc_roots): New function.
(c4x_override_options): Call c4x_add_gc_roots.

From-SVN: r29195

24 years agodefaults.h (TARGET_ESC): Move ...
Richard Henderson [Wed, 8 Sep 1999 07:01:41 +0000 (00:01 -0700)]
defaults.h (TARGET_ESC): Move ...

        * defaults.h (TARGET_ESC): Move ...
        * system.h: ... here, where Linas had it in the first place.  Silly me.

From-SVN: r29194

24 years agoposix-threads.h (_Jv_PthreadCheckMonitor): Changed test in __m_count case.
Tom Tromey [Wed, 8 Sep 1999 07:01:32 +0000 (07:01 +0000)]
posix-threads.h (_Jv_PthreadCheckMonitor): Changed test in __m_count case.

* include/posix-threads.h (_Jv_PthreadCheckMonitor): Changed test
in __m_count case.

From-SVN: r29193

24 years agoLinas Vepstas <linas@linas.org>
Linas Vepstas [Wed, 8 Sep 1999 06:51:23 +0000 (06:51 +0000)]
Linas Vepstas  <linas@linas.org>

        * c-common.c: Use ISGRAPH, ISLOWER, toupper.
        * c-lex.c, cccp.c, cexp.c, cexp.y, cppexp.c, dwarf2out.c, genattr.c,
        genattrtab.c, genemit.c, genextract.c, genpeep.c, tree.c: Likewise.
        * system.h (IN_CTYPE_DOMAIN): Define to 1 if HOST_EBCDIC.
        * defaults.h (TARGET_ESC): Add default.

From-SVN: r29192

24 years agoconfigure.in: add i370-*-openedition, i370-*-mvs and i370-*-linux targets
Linas Vepstas [Wed, 8 Sep 1999 06:37:28 +0000 (06:37 +0000)]
configure.in: add i370-*-openedition, i370-*-mvs and i370-*-linux targets

        * configure.in: add i370-*-openedition, i370-*-mvs and
        i370-*-linux targets

From-SVN: r29191

24 years agoconfig.guess: Add OS/390 match pattern.
Linas Vepstas [Wed, 8 Sep 1999 06:35:42 +0000 (06:35 +0000)]
config.guess: Add OS/390 match pattern.

        * config.guess: Add OS/390 match pattern.
        * config.sub: Add mvs, openedition targets.
        * configure.in (i370-ibm-opened*): New.

From-SVN: r29190

24 years agodecl.c (ggc_p): Set it to 1.
Mark Mitchell [Wed, 8 Sep 1999 06:33:29 +0000 (06:33 +0000)]
decl.c (ggc_p): Set it to 1.

* decl.c (ggc_p): Set it to 1.
(mark_saved_scope): Add prototype.

From-SVN: r29189

24 years agoconfig.table: Add openedition target.
Linas Vepstas [Wed, 8 Sep 1999 06:33:11 +0000 (06:33 +0000)]
config.table: Add openedition target.

        * config.table: Add openedition target.
        * config/mh-openedition: New file.

From-SVN: r29188

24 years agodsp16xxx.c: Include ggc.h
Mark Mitchell [Wed, 8 Sep 1999 06:31:47 +0000 (06:31 +0000)]
dsp16xxx.c: Include ggc.h

* dsp16xxx.c: Include ggc.h
(override_options): Mark GC roots.
* mn10200.c: Include ggc.h.
(asm_file_start): Mark GC roots.
* tahoe.c: Include ggc.h.
(extensible_operand): Mark GC roots.

From-SVN: r29187

24 years ago* mh-openedition: New file.
Linas Vepstas [Wed, 8 Sep 1999 06:31:40 +0000 (06:31 +0000)]
* mh-openedition: New file.

From-SVN: r29186

24 years agoLinas Vepstas <linas@linas.org>
Linas Vepstas [Wed, 8 Sep 1999 06:23:46 +0000 (23:23 -0700)]
Linas Vepstas  <linas@linas.org>

        * README: Add section discussing status of ELF ABI.
        * i370.c: Fix misc spelling mistakes.
        (i370_label_scan): Updated notes, exception handling.
        (i370_function_prolog): Simplify ELF stack handling.
        * i370.h: (FIXED_REGISTERS): Free up r12 for ELF.
        (STACK_GROWS_DOWNWARD): ELF stack grows down.
        (ASM_DECLARE_FUNCTION_NAME): Fix crazy malloc size.
        * i370.md: (movdi): Add notes.
        (floatsidf2): Use stack not rtca for scratch float area.
        (iorsi3): Correct operand constraints.
        * x-oe: Restore TAROUTOPTS which are used by pax.

From-SVN: r29185

24 years agors6000.c: Include ggc.h.
Mark Mitchell [Wed, 8 Sep 1999 05:37:20 +0000 (05:37 +0000)]
rs6000.c: Include ggc.h.

* rs6000.c: Include ggc.h.
(rs6000_add_gc_roots): New function.
(override_options): Call it.

From-SVN: r29184

24 years agoalpha.h (alpha_compare): New.
Richard Henderson [Wed, 8 Sep 1999 05:13:35 +0000 (22:13 -0700)]
alpha.h (alpha_compare): New.

        * alpha.h (alpha_compare): New.
        (alpha_compare_op0, alpha_compare_op1, alpha_compare_fp_p): Remove.
        * alpha.c: Likewise for the definitions.
        (alpha_emit_conditional_branch): Update for alpha_compare.
        (alpha_emit_conditional_move): Likewise.
        * alpha.md (cmpdf, cmpdi): Likewise.
        (setcc patterns): Likewise.  Zero alpha_compare after use.
        (sne): Optimize (x != 0) into (0U < x).

From-SVN: r29183

24 years agoalpha.h (alpha_eh_epilogue_sp_ofs): Remove.
Richard Henderson [Wed, 8 Sep 1999 05:00:54 +0000 (22:00 -0700)]
alpha.h (alpha_eh_epilogue_sp_ofs): Remove.

        * alpha.h (alpha_eh_epilogue_sp_ofs): Remove.
        (struct machine_function): Declare; add eh_epilogue_sp_ofs.
        (INIT_EXPANDERS): Remove.
        * alpha.c: Include ggc.h.
        (alpha_eh_epilogue_sp_ofs, alpha_return_addr_rtx): Remove.
        (alpha_init_machine_status, alpha_mark_machine_status): New.
        (override_options): Install them.
        (struct machine_function): Moved to alpha.h.
        (alpha_save_machine_status, alpha_restore_machine_status): Remove.
        (alpha_init_expanders): Remove.
        (alpha_return_addr): Adjust to use current_function->machine.
        (alpha_ra_ever_killed): Likewise.
        (alpha_expand_epilogue): Likewise.
        * alpha.md (eh_epilogue): Likewise.

From-SVN: r29182

24 years agors6000.c (first_reg_to_save): Don't save fixed or call-used registers (call-saved...
Ian Piumarta [Wed, 8 Sep 1999 04:59:10 +0000 (06:59 +0200)]
rs6000.c (first_reg_to_save): Don't save fixed or call-used registers (call-saved registers must still be...

* config/rs6000/rs6000.c (first_reg_to_save): Don't save fixed or
call-used registers (call-saved registers must still be contiguous
and end with r31, of course).

Co-Authored-By: Geoff Keating <geoffk@cygnus.com>
Co-Authored-By: Melissa O'Neill <oneill@cs.sfu.ca>
From-SVN: r29181

24 years agoc-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to.
Richard Henderson [Wed, 8 Sep 1999 04:51:16 +0000 (21:51 -0700)]
c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to.

        * c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to.
        (self_promoting_type_p): Delete.
        (self_promoting_args_p): Move ...
        * c-common.c: ... here.
        (c_common_nodes_and_builtins): Initialize lang_type_promotes_to.
        (simple_type_promotes_to): New.
        * builtins.c (lang_type_promotes_to): New.
        (expand_builtin_va_arg): Use it to give diagnostic for illegal types.
        * c-tree.h (C_PROMOTING_INTEGER_TYPE_P): Move ...
        * c-common.h: ... here.
        (self_promoting_args_p, simple_type_promotes_to): Declare.
        * c-decl.c (duplicate_decls): Use simple_type_promotes_to.
        (grokdeclarator): Likewise.
        * tree.h (lang_type_promotes_to): Declare.

        * cp-tree.h (C_PROMOTING_INTEGER_TYPE_P): Delete.
        * typeck.c (self_promoting_args_p): Delete.

        * gcc.dg/va-arg-1.c: New.

From-SVN: r29180

24 years agoposix-threads.cc (_Jv_CondWait): pthread_ calls return error code and don't set errno.
Tom Tromey [Wed, 8 Sep 1999 02:31:33 +0000 (02:31 +0000)]
posix-threads.cc (_Jv_CondWait): pthread_ calls return error code and don't set errno.

* posix-threads.cc (_Jv_CondWait): pthread_ calls return error
code and don't set errno.

From-SVN: r29179

24 years agosearch.c (binfo_for_vtable): Use CLASSTYPE_VFIELD_PARENT.
Jason Merrill [Wed, 8 Sep 1999 01:00:57 +0000 (21:00 -0400)]
search.c (binfo_for_vtable): Use CLASSTYPE_VFIELD_PARENT.

* search.c (binfo_for_vtable): Use CLASSTYPE_VFIELD_PARENT.
(dfs_bfv_queue_p, dfs_bfv_helper, struct bfv_info): Remove.

From-SVN: r29178

24 years agoposix-threads.cc (_Jv_CondWait): Check `errno' against EINTR, not `r'.
Tom Tromey [Wed, 8 Sep 1999 00:43:06 +0000 (00:43 +0000)]
posix-threads.cc (_Jv_CondWait): Check `errno' against EINTR, not `r'.

1999-09-07  Tom Tromey  <tromey@cygnus.com>

* posix-threads.cc (_Jv_CondWait): Check `errno' against EINTR,
not `r'.  Changed `done_sleeping' to a `bool'.

1999-09-07  Matt Welsh <mdw@cs.berkeley.edu

* libjava/posix-threads.cc: Added _Jv_ThreadDataKey.
Added FLAG_INTERRUPTED to indicate that a thread was interrupted
by another thread, rather than by the GC.
(_Jv_CondWait): Prevent premature thread wakeup by GC.
(_Jv_InitThreads): Initialize _Jv_ThreadDataKey.
* libjava/include/posix-threads.h (_Jv_ThreadCurrentData): New
function.

From-SVN: r29177

24 years agoAdd some machine-dependent GC roots.
Mark Mitchell [Wed, 8 Sep 1999 00:21:45 +0000 (00:21 +0000)]
Add some machine-dependent GC roots.

* sparc.c: Include ggc.h.
(sparc_add_gc_roots): New function.
(mark_ultrasparc_pipeline_state): Likewise.
(override_options): Call sparc_add_gc_roots.
* pa.c: Include ggc.h.
(pa_add_gc_roots): New function.
(mark_deferred_plabels): Likewise.
(override_options): Call pa_add_gc_roots.
* mips.c: Include ggc.h.
(mips_add_gc_roots): New function.
(override_options): Use it.

From-SVN: r29176

24 years agoparse.h: Undefine DELAY if it's defined.
Dave Brolley [Tue, 7 Sep 1999 21:02:43 +0000 (21:02 +0000)]
parse.h: Undefine DELAY if it's defined.

Tue Sep  7 15:59:56 1999  Dave Brolley  <brolley@cygnus.com>

* parse.h: Undefine DELAY if it's defined.
(PACK,NOPACK,POS): Remove erroneous comments regarding these tokens.
Also, move them to their proper place alphabetically.

From-SVN: r29175

24 years agoMakefile.in (tree.o): Depend on ggc.h.
Mark Mitchell [Tue, 7 Sep 1999 18:01:53 +0000 (18:01 +0000)]
Makefile.in (tree.o): Depend on ggc.h.

* Makefile.in (tree.o): Depend on ggc.h.
* class.c (make_method_vec): Remove.
(free_method_vec): Likewise.
(free_method_vecs): Remove.
(add_method): Don't use them.
* cp-tree.def (PTRMEM_CST): Make it longer.
(TEMPLATE_PARM_INDEX): Make it shorter.
* cp-tree.h (BINDING_HAS_LEVEL_P): New macro.
(template_parm_index): Remove RTL field.
(ptrmem_cst): Add RTL field.
(finish_function): Removed parameter.
(process_next_inline): Change prototype.
(init_cplus_unsave): Rename to init_tree.
(binding_init): Remove.
* decl.c (free_binding_nodes): Remove.
(push_binding): Don't use them.  Set BINDING_HAS_LEVEL_P.
(pop_binding): Don't use free_binding_nodes.
(free_binding_vecs): Remove.
(store_bindings): Don't use them.
(pop_from_top_level): Likewise.
(lookup_namespace_name): Simplify.
(build_typename_type): Don't use obstack_free.
(unqualified_namespace_lookup): Simplify.
(lookup_name_real): Simplify.
(start_function): Remove comment about leaks.
(finish_function): Removed nested parameter.  Call
expand_end_bindings even when building_stmt_tree.
Call ggc_push_context and ggc_pop_context around
rest_of_compilation, if necessary.
(mark_cp_function_context): Handle a NULL language-context.
(lang_mark_false_label_stack): Fix typo.
(lang_mark_tree): Handle CPLUS_BINDING, OVERLOAD,
TEMPLATE_PARM_INDEX.  Handle the funny TYPE_LANG_SPECIFIC on
pointer to method types.
(lang_cleanup_tree): Use free to free TYPE_LANG_SPECIFIC.
* decl2.c (finish_objects): Adjust call to finish_function.
(finish_static_store_duration_function): Likewise.
(do_nonmember_using_decl): Remove call to binding_init.
* except.c (end_anon_func): Adjust call to finish_function.
* lex.c (mark_impl_file_chain): New function.
(init_parse): Call init_tree, not init_cplus_unsave.
Add GC roots.
(cp_pramga_interface): Use xmalloc, not permalloc.
(cp_pragma_implementation): Likewise.
(begin_definition_of_inclass_inline): Simplify.
(process_next_inline): Adjust prototype.
(do_scoped_id): Don't call binding_init.
(make_lang_type): Allocate TYPE_LANG_SPECIFIC with xmalloc.
* method.c (emit_thunk): Adjust call to finish_function.
(synthesize_method): Likewise.
* parse.y (%union): Add a new `pi' variant.
(PRE_PARSED_FUNCTION_DECL): Use it.
(fn.defpen): Likewise.
(fndef): Adjust call to finish_function.
* pt.c (instantiate_decl): Likewise.
* rtti.c (syntheisze_tinfo_fn): Likewise.
* semantics.c (expand_body): Likewise.
* tree.c: Include ggc.h.
(mark_list_hash): New function.
(binding_init): Remove.
(init_cplus_unsave): Rename to ...
(init_tree): This.  Add GC roots.

From-SVN: r29173

24 years agoMakefile.in (tree.o): Depend on ggc.h.
Mark Mitchell [Tue, 7 Sep 1999 16:07:42 +0000 (16:07 +0000)]
Makefile.in (tree.o): Depend on ggc.h.

* Makefile.in (tree.o): Depend on ggc.h.
* class.c (make_method_vec): Remove.
(free_method_vec): Likewise.
(free_method_vecs): Remove.
(add_method): Don't use them.
* cp-tree.def (PTRMEM_CST): Make it longer.
(TEMPLATE_PARM_INDEX): Make it shorter.
* cp-tree.h (BINDING_HAS_LEVEL_P): New macro.
(template_parm_index): Remove RTL field.
(ptrmem_cst): Add RTL field.
(finish_function): Removed parameter.
(process_next_inline): Change prototype.
(init_cplus_unsave): Rename to init_tree.
(binding_init): Remove.
* decl.c (free_binding_nodes): Remove.
(push_binding): Don't use them.  Set BINDING_HAS_LEVEL_P.
(pop_binding): Don't use free_binding_nodes.
(free_binding_vecs): Remove.
(store_bindings): Don't use them.
(pop_from_top_level): Likewise.
(lookup_namespace_name): Simplify.
(build_typename_type): Don't use obstack_free.
(unqualified_namespace_lookup): Simplify.
(lookup_name_real): Simplify.
(start_function): Remove comment about leaks.
(finish_function): Removed nested parameter.  Call
expand_end_bindings even when building_stmt_tree.
Call ggc_push_context and ggc_pop_context around
rest_of_compilation, if necessary.
(mark_cp_function_context): Handle a NULL language-context.
(lang_mark_false_label_stack): Fix typo.
(lang_mark_tree): Handle CPLUS_BINDING, OVERLOAD,
TEMPLATE_PARM_INDEX.  Handle the funny TYPE_LANG_SPECIFIC on
pointer to method types.
(lang_cleanup_tree): Use free to free TYPE_LANG_SPECIFIC.
* decl2.c (finish_objects): Adjust call to finish_function.
(finish_static_store_duration_function): Likewise.
(do_nonmember_using_decl): Remove call to binding_init.
* except.c (end_anon_func): Adjust call to finish_function.
* lex.c (mark_impl_file_chain): New function.
(init_parse): Call init_tree, not init_cplus_unsave.
Add GC roots.
(cp_pramga_interface): Use xmalloc, not permalloc.
(cp_pragma_implementation): Likewise.
(begin_definition_of_inclass_inline): Simplify.
(process_next_inline): Adjust prototype.
(do_scoped_id): Don't call binding_init.
(make_lang_type): Allocate TYPE_LANG_SPECIFIC with xmalloc.
(emit_thunk): Adjust call to finish_function.
(synthesize_method): Likewise.
* parse.y (%union): Add a new `pi' variant.
(PRE_PARSED_FUNCTION_DECL): Use it.
(fn.defpen): Likewise.
(fndef): Adjust call to finish_function.
(instantiate_decl): Likewise.
(rtti.c): Likewise.
(semantics.c): Likewise.
* tree.c: Include ggc.h.
(mark_list_hash): New function.
(binding_init): Remove.
(init_cplus_unsave): Rename to ...
(init_tree): This.  Add GC roots.

From-SVN: r29172

24 years agocpperror.c (cpp_file_line_for_message): Constify a char*.
Kaveh R. Ghazi [Tue, 7 Sep 1999 15:41:26 +0000 (15:41 +0000)]
cpperror.c (cpp_file_line_for_message): Constify a char*.

* cpperror.c (cpp_file_line_for_message): Constify a char*.

* cppexp.c (parse_number, parse_charconst, cpp_lex,
cpp_parse_expr): Add static prototypes.
(parse_charconst): Don't cast away const-ness.
(token): Constify a char*.

* cppfiles.c (file_name_list, include_hash, find_include_file,
finclude, initialize_input_buffer): Constify a char*.
(file_cleanup, find_position): Add static prototypes.

* cpphash.c (macro_cleanup, macarg, timestamp, special_symbol,
collect_expansion): Add static prototypes.
(cpp_install, create_definition, monthnames): Constify a char*.

* cpphash.h (cpp_install): Likewise.

* cppinit.c (known_suffixes, default_include,
dump_special_to_buffer, NAME, cpp_start_read, cpp_finish): Likewise.
(base_name, dump_special_to_buffer, initialize_dependency_output):
Add static prototypes.

* cpplib.c (my_strerror): Constify a char*.
(null_underflow, null_cleanup, skip_comment, copy_comment,
copy_rest_of_line, handle_directive, pass_thru_directive,
get_directive_token, read_line_number, cpp_print_file_and_line,
v_cpp_error, v_cpp_warning, v_cpp_error_with_line,
v_cpp_warning_with_line, detect_if_not_defined,
consider_directive_while_skipping): Add static prototypes.
(pass_thru_directive, check_macro_name, cpp_expand_to_buffer,
cpp_pedwarn_with_file_and_line): Constify a char*.

* cpplib.h (cpp_options, include_hash, progname, definition,
cpp_pedwarn_with_file_and_line, cpp_expand_to_buffer,
check_macro_name, cpp_pfatal_with_name, cpp_file_line_for_message,
find_include_file, deps_output, include_hash): Constify a char*.

* cppmain.c (progname): Constify.
(main): Add prototype.  Use return, not exit.

* fix-header.c (fatal, add_symbols, lookup_std_proto, write_lbrac,
recognized_macro, check_macro_names, read_scan_file, write_rbrac,
inf_skip_spaces, inf_read_upto, inf_scan_ident, inf_scan_ident,
check_protection): Add static prototype.
(xfree): Remove.
(progname, recognized_macrom, recognized_extern): Constify a char*.
(main): Add prototype.

* gen-protos.c (progname): Constify a char*.

From-SVN: r29171

24 years agoemit-rtl.c (free_emit_status): Take decl as a parameter.
Mark Mitchell [Tue, 7 Sep 1999 15:20:58 +0000 (15:20 +0000)]
emit-rtl.c (free_emit_status): Take decl as a parameter.

* emit-rtl.c (free_emit_status): Take decl as a parameter.
(init_emit_once): Add more GC roots.
* except.c (mark_func_eh_entry): New function.
(mark_eh_node): Mark false_label and rethrow_label.
(init_eh): Add more GC roots.
* function.c (free_after_compilation): Take decl as a paramter.
Call free_stmt_status.
(mark_function_state): Don't assume x_parm_reg_stack_loc is
non-NULL.
* function.h (free_after_compilation): Change prototype.
(free_varasm_status): Likewise.
(free_emit_status): Likewise.
(free_stmt_status): New function.
* ggc-simple.c (rtx, vecs, trees, strings, bytes_alloced_since_gc):
Remove, replacing with ...
(ggc_status): New structure.
(ggc_chain): New variable.
(init_gcc): Define.
(ggc_push_context): New function.
(ggc_pop_context): Likewise.
(ggc_alloc_rtx): Adjust for use of ggc_chain.
(ggc_alloc_rtvec): Likewise.
(ggc_alloc_tree): Likewise.
(ggc_alloc_string): Likewise.
(ggc_mark_rtx): Mark NOTE_SOURCE_FILE and NOTE_RANGE_INFO.
(ggc_mark_tree): Give language-dependent code a chance to mark
`x' nodes.
(ggc_mark_tree_varray): Handle empty arrays.
(ggc_collect): Adjust for use of ggc_chain.  Clear
bytes_alloced_since_last_gc.
* ggc.h (ggc_pop_context): New function.
(ggc_push_context): Likewise.
* print-tree.c (print_node): Don't print obstacks when GC'ing.
* stmt.c (free_stmt_status): New function.
(init_stmt_for_function): Clear last_expr_value.
* toplev.c (rest_of_compilation): Always call free_after_compilation.
Conditionalize call to ggc_collect.
(main): Call init_ggc.
* tree.c (push_obstacks): Do the push, even when GC'ing.
(push_obstacks_nochange): Likewise.
(pop_obstacks): Liekwise.
* varasm.c (free_varasm_status): Take decl as a parameter.

From-SVN: r29170

24 years agomips.h (MULTILIB_ENDIAN_DEFAULT): New macro.
Gavin Romig-Koch [Tue, 7 Sep 1999 12:21:44 +0000 (12:21 +0000)]
mips.h (MULTILIB_ENDIAN_DEFAULT): New macro.

* config/mips/mips.h (MULTILIB_ENDIAN_DEFAULT) : New macro.
(MULTILIB_ENDIAN_DEFAULT) : Use the new macro.
* config/mips/elf64.h (MULTILIB_DEFAULTS) : Use the new macro.
* config/mips/r3900.h (MULTILIB_DEFAULTS) : Use the new macro.

From-SVN: r29168

24 years agomips.h (MULTILIB_ENDIAN_DEFAULT): New macro.
Gavin Romig-Koch [Tue, 7 Sep 1999 11:34:32 +0000 (11:34 +0000)]
mips.h (MULTILIB_ENDIAN_DEFAULT): New macro.

* config/mips/mips.h (MULTILIB_ENDIAN_DEFAULT) : New macro.
(MULTILIB_ENDIAN_DEFAULT) : Use the new macro.
* config/mips/elf64.h (MULTILIB_DEFAULTS) : Use the new macro.
* config/mips/r3900.h (MULTILIB_DEFAULTS) : Use the new macro.

From-SVN: r29167

24 years ago* pa/x-pa-mpeix: New file for the MPE port.
Mark Klein [Tue, 7 Sep 1999 10:26:35 +0000 (10:26 +0000)]
* pa/x-pa-mpeix: New file for the MPE port.

From-SVN: r29166

24 years ago* pa/quadlib.asm: New file for long double support.
Mark Klein [Tue, 7 Sep 1999 10:23:53 +0000 (10:23 +0000)]
* pa/quadlib.asm: New file for long double support.

From-SVN: r29165

24 years agoCommit parts that were missing in Mark's last commit
Bernd Schmidt [Tue, 7 Sep 1999 10:10:01 +0000 (10:10 +0000)]
Commit parts that were missing in Mark's last commit

From-SVN: r29164

24 years agoconfigure.in: Add hppa1.0-*-mpeix for MPE port.
Mark Klein [Tue, 7 Sep 1999 09:44:47 +0000 (09:44 +0000)]
configure.in: Add hppa1.0-*-mpeix for MPE port.

        * configure.in: Add hppa1.0-*-mpeix for MPE port.
        * configure: Rebuilt.

From-SVN: r29163

24 years ago* final.c (shorten_branches): Fix last change.
Andreas Schwab [Tue, 7 Sep 1999 08:10:42 +0000 (08:10 +0000)]
* final.c (shorten_branches): Fix last change.

From-SVN: r29160

24 years agoDaily bump.
Jeff Law [Tue, 7 Sep 1999 07:45:09 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r29157

24 years agoTypo from merge.
Jeff Law [Tue, 7 Sep 1999 07:18:09 +0000 (01:18 -0600)]
Typo from merge.

From-SVN: r29153

24 years ago* pa.h (ASM_OUTPUT_DOUBLE_INT): Delete.
Jeffrey A Law [Tue, 7 Sep 1999 06:32:41 +0000 (06:32 +0000)]
* pa.h (ASM_OUTPUT_DOUBLE_INT): Delete.

From-SVN: r29152

24 years agoMerge in gcc2-ss-010999
Jeff Law [Tue, 7 Sep 1999 05:49:18 +0000 (23:49 -0600)]
Merge in gcc2-ss-010999

From-SVN: r29150

24 years agoc-aux-info.c (concat): Don't define.
Kaveh R. Ghazi [Tue, 7 Sep 1999 02:36:41 +0000 (02:36 +0000)]
c-aux-info.c (concat): Don't define.

* c-aux-info.c (concat): Don't define.

* cccp.c (my_strerror): Likewise.  All callers changed to use
xstrerror instead.
(do_include): Call xstrdup, not xmalloc/strcpy.
(grow_outbuf): Don't check if xrealloc returns NULL, it can't.
(xmalloc, xrealloc, xcalloc, xstrdup): Don't define.

* collect2.c (my_strsignal): Likewise.  All callers changed to use
strsignal instead.
(locatelib): Call xstrdup, not xmalloc/strcpy.

* 1750a.h (ASM_OUTPUT_INTERNAL_LABEL): Call xmalloc, not malloc.

* dsp16xx.c (override_options): Call xstrdup, not xmalloc/strcpy.

* i370.h (ASM_DECLARE_FUNCTION_NAME): Call xmalloc, not malloc.

* mips.c (build_mips16_call_stub): Call xstrdup, not xmalloc/strcpy.

* cppinit.c (cpp_options_init): Call xcalloc, not xmalloc/bzero.

* dwarfout.c (dwarfout_init): Call concat, not xmalloc/strcpy/...

* except.c (new_eh_region_entry): Call xmalloc/xrealloc, not
malloc/realloc.
(find_all_handler_type_matches): Likewise.  Don't check return
value.
(get_new_handler, init_insn_eh_region, process_nestinfo): Call
xmalloc, not malloc.
(init_eh_nesting_info): Likewise.  Call xcalloc, not xmalloc/bzero.

* gcc.c (xstrerror, xmalloc, xrealloc): Don't define.
(init_spec): Call xcalloc, not xmalloc/bzero.
(set_spec): Call xstrdup, not save_string.
(record_temp_file): Call xstrdup, not xmalloc/strcpy.
(find_a_file): Call xstrdup, not xmalloc/strcpy.
(process_command): Call xstrdup, not save_string.
(main): Call xcalloc, not xmalloc/bzero.

* gcov.c (xmalloc): Don't define.
(create_program_flow_graph): Call xcalloc, not xmalloc/bzero.
(scan_for_source_files): Call xstrdup, not xmalloc/strcpy.
(output_data): Call xcalloc, not xmalloc/bzero.

* haifa-sched.c (schedule_insns): Call xcalloc, not xmalloc/bzero.

* mips-tdump.c (xmalloc): Don't define.
(print_symbol): Call xmalloc, not malloc.
(read_tfile): Call xcalloc, not calloc.

* mips-tfile.c (xfree, my_strsignal, xmalloc, xcalloc, xrealloc):
Don't define.  All callers of xfree/my_strsignal changed to use
free/strsignal instead.
(allocate_cluster): Call xcalloc, not calloc.

* objc/objc-act.c (lang_init): Call concat, not xmalloc/strcpy/...
Fix memory leak, free allocated memory.

* prefix.c (translate_name): Call xstrdup, not save_string.
(update_path): Likewise.

* profile.c (branch_prob): Call xstrdup, not xmalloc/strcpy.

* protoize.c (xstrerror, xmalloc, xrealloc, xfree, savestring2):
Don't define.  Callers of xfree/savestring2 changed to use
free/concat instead.

* reload1.c (reload): Call xcalloc, not xmalloc/bzero.
(init_elim_table): Likewise.

* resource.c (init_resource_info): Likewise.

* stupid.c (stupid_life_analysis): Likewise.

* toplev.c (xmalloc, xcalloc, xrealloc, xstrdup): Don't define.
(open_dump_file): Call concat, not xmalloc/strcpy/...
(clean_dump_file): Likewise.
(compile_file): Call xstrdup, not xmalloc/strcpy.

From-SVN: r29148

24 years agoFranz Sirl <Franz.Sirl-kernel@lauterbach.com>
Franz Sirl [Mon, 6 Sep 1999 22:58:37 +0000 (22:58 +0000)]
Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

        * execute/va-arg-9.c: New test.

From-SVN: r29147

24 years agov850.h (EXPAND_BUILTIN_VA_ARG): New.
Richard Henderson [Mon, 6 Sep 1999 22:05:26 +0000 (15:05 -0700)]
v850.h (EXPAND_BUILTIN_VA_ARG): New.

        * v850.h (EXPAND_BUILTIN_VA_ARG): New.
        * v850.c (v850_va_arg): New.

From-SVN: r29146

24 years ago* haifa-sched.c: Tidy comments.
Michael Hayes [Mon, 6 Sep 1999 21:55:23 +0000 (21:55 +0000)]
* haifa-sched.c: Tidy comments.

From-SVN: r29145

24 years agoMakefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.
Bernd Schmidt [Mon, 6 Sep 1999 21:44:50 +0000 (21:44 +0000)]
Makefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.

* Makefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.
(c-parse.o, c-decl.o, c-lang.o, c-lex.o, c-common.o,
$(out_object_file)): Depend on ggc.h.
* c-common.c: Include "ggc.h".
(combine_strings): If doing GC, use ggc_alloc_string.
* c-decl.c: Include "ggc.h".
(ggc_p): Define with value 0.
(mark_binding_level): New function.
(init_decl_processing): Add GC roots.
(mark_c_function_context): New function.
(lang_mark_false_label_stack): New function.
(lang_mark_tree): New function.
(lang_cleanup_tree): New function.
* c-lang.c: Include "ggc.h".
(lang_init): Call c_parse_init.
* c-lex.c: Include "ggc.h".
(check_linenum): If doing GC, don't copy filenames to permanent
obstack.
* c-parse.in: Include "ggc.h".
(c_parse_init): New function.
* c-tree.h (c_parse_init, mark_c_function_context): Declare.
* objc/Make-lang.in (objc-parse.o): Depend on ggc.h.

* except.c (mark_eh_state): Mark more state.
* function.c (mark_function_state): Likewise.
* ggc-simple.c (ggc_alloc_rtvec): Bring in sync with non-gc version.
(ggc_alloc_string) [GGC_DUMP]: Fix typo.
* toplev.c (mark_file_stack): New function.
(compile_file): If doing GC, use ggc_alloc_string on input filename.
(main): Add root for input_file_stack.

* i386.c: Include "ggc.h".
(ix86_mark_machine_status): New function.
(override_options): Set mark_machine_status.

From-SVN: r29144

24 years agoMakefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.
Bernd Schmidt [Mon, 6 Sep 1999 21:28:22 +0000 (21:28 +0000)]
Makefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.

* Makefile.in (C_AND_OBJC_OBJS): Remove ggc-callbacks.o.
(c-parse.o, c-decl.o, c-lang.o, c-lex.o, c-common.o,
$(out_object_file)): Depend on ggc.h.
* c-common.c: Include "ggc.h".
(combine_strings): If doing GC, use ggc_alloc_string.
* c-decl.c: Include "ggc.h".
(ggc_p): Define with value 0.
(mark_binding_level): New function.
(init_decl_processing): Add GC roots.
(mark_c_function_context): New function.
(lang_mark_false_label_stack): New function.
(lang_mark_tree): New function.
(lang_cleanup_tree): New function.
* c-lang.c: Include "ggc.h".
(lang_init): Call c_parse_init.
* c-lex.c: Include "ggc.h".
(check_linenum): If doing GC, don't copy filenames to permanent
obstack.
* c-parse.in: Include "ggc.h".
(c_parse_init): New function.
* c-tree.h (c_parse_init, mark_c_function_context): Declare.
* objc/Make-lang.in (objc-parse.o): Depend on ggc.h.

* except.c (mark_eh_state): Mark more state.
* function.c (mark_function_state): Likewise.
* ggc-simple.c (ggc_alloc_rtvec): Bring in sync with non-gc version.
(ggc_alloc_string) [GGC_DUMP]: Fix typo.
* toplev.c (mark_file_stack): New function.
(compile_file): If doing GC, use ggc_alloc_string on input filename.
(main): Add root for input_file_stack.

* i386.c: Include "ggc.h".
(ix86_mark_machine_status): New function.
(override_options): Set mark_machine_status.

From-SVN: r29143

24 years agocopy_node should copy the node
Bernd Schmidt [Mon, 6 Sep 1999 14:29:19 +0000 (14:29 +0000)]
copy_node should copy the node

From-SVN: r29142

24 years ago* collect2.c (scan_libraries): Fix double-thinko :-).
Alexandre Oliva [Mon, 6 Sep 1999 11:50:09 +0000 (11:50 +0000)]
* collect2.c (scan_libraries): Fix double-thinko :-).

From-SVN: r29141

24 years ago* collect2.c (scan_libraries): Fix thinko.
Jeffrey A Law [Mon, 6 Sep 1999 09:24:23 +0000 (09:24 +0000)]
* collect2.c (scan_libraries): Fix thinko.

From-SVN: r29140

24 years agoAdd Mark to list of folks with blanket write privs.
Jeff Law [Mon, 6 Sep 1999 08:55:50 +0000 (02:55 -0600)]
Add Mark to list of folks with blanket write privs.

From-SVN: r29139

24 years agocse.c (delete_trivially_dead_insns): Do not skip the last insn if it is a real insn.
Jeffrey A Law [Mon, 6 Sep 1999 08:44:50 +0000 (08:44 +0000)]
cse.c (delete_trivially_dead_insns): Do not skip the last insn if it is a real insn.

        * cse.c (delete_trivially_dead_insns): Do not skip the last
        insn if it is a real insn.

From-SVN: r29138

24 years agoDaily bump.
Jeff Law [Mon, 6 Sep 1999 07:45:08 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r29137

24 years agoFix typo in last change.
Mark Mitchell [Mon, 6 Sep 1999 02:43:48 +0000 (02:43 +0000)]
Fix typo in last change.

From-SVN: r29136

24 years agoGet ready for garbage collection.
Mark Mitchell [Mon, 6 Sep 1999 02:43:09 +0000 (02:43 +0000)]
Get ready for garbage collection.

* Makefile.in (CXX_TREE_H): Add varray.h
(lex.o): Depend on ggc.h.
(decl.o): Likewise.
(decl2.o): Likewise.
(method.o): Likewise.
(search.o): Likewise.
(pt.o): Likewise.
(repo.o): Likewise.
* class.c: Include ggc.h.
(current_class_name): Remove.
(current_class_type): Likewise.
(current_access_specifier): Likewise.
(previous_class_type): Likewise.
(previous_class_values): Likewise.
(class_cache_firstobj): Likewise.
(current_lang_base): Likewise.
(current_lang_stack): Likewise.
(current_lang_stacksize): Likewise.
(lang_name_c): Likewise.
(lang_name_cplusplus): Likewise.
(lang_name_java): Likewise.
(current_lang_name): Likewise.
(base_layout_decl): Likewise.
(access_default_node): Likewise.
(access_public_node): Likewise.
(access_protected_node): Likewise.
(access_private_node): Likewise.
(access_default_virtual_node): Likewise.
(access_public_virtual_node): Likewise.
(access_protected_virtual_node): Likewise.
(access_private_virtual_node): Likewise.
(signed_zero_node): Likewise.
(init_class_processing): Don't build base_layout_decl.
(push_lang_context): Adjust now that current_lang_base is a varray.
(pop_lang_context): Likewise.
* cp-tree.h: Include varray.h.
(cp_global_trees): Add access_default, access_public,
access_protected, access_private, access_default_virtual,
access_public_virtual, access_protected_virtual,
access_private_virtual, ctor_identifier, delta2_identifier,
delta_identifier, dtor_identifier, in_charge_identifier,
index_identifier, nelts_identifier, this_identifier,
pfn_identifier, pfn_or_delta2_identifier, vptr_identifier,
lang_name_c, lang_name_cplusplus, lang_name_java,
empty_except_spec, null, jclass, minus_one, terminate.
(saved_scope): Move here from decl.c.  Define globals in terms of
saved_scope: current_namespace, current_class_name,
current_class_type, current_access_specifier, current_lang_stack,
current_lang_base, current_lang_name, current_function_parms,
current_template_parms, processing_template_decl,
processing_specialization, processing_explicit_instantiation,
previous_class_type, previous_class_values, class_cache_firstobj.
(scope_chain): New variable.
(init_pt): New function.
* decl.c (current_namespace): Remove.
(this_identifier, in_charge_identifier, ctor_identifier): Likewise.
(dtor_identifier, pfn_identifier, index_identifier): Likewise.
(delta_identifier, delta2_identifier): Likewise.
(pfn_or_delta2_identifier, tag_identifier): Likewise
(vt_off_identifier, empty_except_spec, null_node): Likewise.
(current_function_parms, current_lang_base): Remove.
(current_lang_stack, previous_class_values): Remove.
(class_binding_level): Macroize.
(saved_scope): Remove.
(current_saved_scope): Rename to scope_chain.
(mark_saved_scope): Adjust for new scope structure.
(maybe_push_to_top_level): Likewise.
(pop_from_top_level): Likewise.
(duplicate_decls): Adjust now that current_lang_base is a varray.
(build_typename_type): Call ggc_add_tree_hash_table_root.
(init_decl_processing): Call init_pt.  Call push_to_top_level to
set up globals.  Add GC roots.
(xref_basetypes): Adjust now that current_lang_base is a varray.
* decl.h (this_identifier): Remove.
(in_charge_identifier): Likewise.
* decl2.c: Don't include varray.h.
(current_namespace): Remove.
(init_decl2): Add GC roots.
* except.c (Terminate): Remove.
(init_exception_processing): Use terminate_node instead.
(build_terminate_handler): Likewise.
* init.c (nc_nelts_field_id): Remove.
(minus_one): Likewise.
(init_init_processing): Use minus_one_node and nelts_identifier
instead.  Add GC roots.
(jclass_node): Remove.
(build_new_1): Use nelts_identifier.
(build_vec_init): Likewise.
(build_vec_delete): Likewise.
* lex.c: Include ggc.h.
(defarg_fn): Move declaration early.
(defarg_parms): Likewise.
(init_parse): Add GC roots.
(handle_cp_pragma): Remove redundant declaration of
pending_vtables.
* method.c: Include ggc.h.
(btypelist): Make it a varray.  All uses changed.
(ktypelist): Likewise.
(init_method): Add GC roots.
* pt.c: Don't include varray.h.  Include ggc.h.
(current_template_parms): Remove.
(processing_template_decl): Likewise.
(processing_specialization): Likewise.
(processing_explicit_instantiation): Likewise.
(init_pt): New function.
* repo.c: Include ggc.h.
(init_repo): Add GC roots.
* search.c: Don't include varray.h.
(_vptr_name): Remove.
(lookup_field_1): Use vtpr_identifier instead.
(expand_indirect_vtbls_init): Remove redundant declaration of
in_charge_identifier.
(init_search_processing): Use vptr_identifier.

From-SVN: r29135

24 years agoMakefile.in (ggc-simple.o): Depend on hash.h.
Mark Mitchell [Mon, 6 Sep 1999 02:10:03 +0000 (02:10 +0000)]
Makefile.in (ggc-simple.o): Depend on hash.h.

* Makefile.in (ggc-simple.o): Depend on hash.h.
* ggc.h (ggc_add_tree_hash_table_root): Declare.
(ggc_mark_tree_varray): Likewise.
(ggc_mark_tree_hash_table): Likewise.
* ggc-simple.c: Include hash.h.
(ggc_mark_tree_hash_table_ptr): New function.
(ggc_mark_tree_hash_table_entry): Likewise.
(ggc_mark_tree_hash_table): Likewise.
(ggc_add_tree_hash_table_root): Likewise.
* varray.h (const_equiv_data): Use struct rtx_def *, rather than

* profile.c (output_func_start_profiler): Remove apparently
nonsensical call to start_sequence.

From-SVN: r29134

24 years agoclipper.c (clipper_va_start): Fix typos.
Richard Henderson [Mon, 6 Sep 1999 00:42:57 +0000 (17:42 -0700)]
clipper.c (clipper_va_start): Fix typos.

        * clipper/clipper.c (clipper_va_start): Fix typos.

        * pyr/pyr.c (pyr_build_va_list, pyr_va_start, pyr_va_arg): New stubs.
        * spur/spur.c (spur_build_va_list, spur_va_start): New stubs.
        (spur_va_arg): New stub.

        * configure.in: Comment out pyramid.

From-SVN: r29133

24 years agoMove 'temporary' bits so they don't conflict with windows/cygwin/dgux bits
Michael Meissner [Sun, 5 Sep 1999 23:14:15 +0000 (23:14 +0000)]
Move 'temporary' bits so they don't conflict with windows/cygwin/dgux bits

From-SVN: r29132

24 years agoMakefile.in (ggc-simple.o): Depend on varray.h.
Mark Mitchell [Sun, 5 Sep 1999 19:54:38 +0000 (19:54 +0000)]
Makefile.in (ggc-simple.o): Depend on varray.h.

* Makefile.in (ggc-simple.o): Depend on varray.h.
(rtl.o): Depend on ggc.h.
(genattrtab.o): Depend on ggc.h.
(print-tree.o): Likewise.
(fold-const.o): Likewise.
* emit-rtl.c (sequence_element_free_list): Remove, and all references.
(make_insn_raw): Don't cache insns when GC'ing.
(emit_insn_before): Likewise.
(emit_insn_after): Likewise.
(emit_insn): Likewise.
(start_sequence): Use xmalloc to allocate the sequence_stack.
(end_sequence): Add free to free it.
(gen_sequence): Don't cache insns when GC'ing.
(clear_emit_caches): Don't use sequence_element_free_list.
(init_emit): Use xcalloc, not xmalloc+bzero.
* fold-const.c (size_int_wide): Kill the cache, when GC'ing.
* function.c (pop_function_context_from): Use free to free the
fixup_var_refs_queue.
(put_reg_into_stack): Allocate it with xmalloc.
* genattrtab.c: Include ggc.h.
(operate_exp): Don't use obstack_free when GC'ing.
(simplify_cond): Likewise.
(simplify_text_exp): Likewise.
(optimize_attrs): Likewise.
* gengenrtl.c (gendef): Use ggc_alloc_rtx to allocate RTL, when
GC'ing.
(gencode): Generate a #include for ggc.h.
* ggc-callbacks.c (ggc_p): Define it to zero.
* ggc-none.c (ggc_p): Likewise.
* ggc-simple.c: Include varray.h.
(ggc_mark_tree_varray): New function.
(ggc_add_tree_varray_root): Likewise.
(ggc_mark_tree_varray_ptr): Likewise.
* ggc.h (ggc_p): Declare.
(varray_head_tag): Likewise.
(ggc_add_tree_varray_root): Declare.
* print-tree.c (print_node): Don't check for TREE_PERMANENT
inconsistencies when GC'ing.
* rtl.c: Include ggc.h.
(rtvec_alloc): Use ggc_alloc_rtvec when GC'ing.
(rtx_alloc): Use ggc_alloc_rtx when GC'ing.
(rtx_free): Don't call obstack_free when GC'ing.
* toplev.c (rest_of_compilation): Call ggc_collect after every
pass, if GC'ing.
* tree.c (push_obstacks): Do nothing, if GC'ing.
(pop_obstacks_nochange): Likewise.
(pop_obstacks): Likewise.
(make_node): Use ggc_alloc_tree when GC'ing.
(copy_node): Likewise.
(get_identifier): Use ggc_alloc_string when GC'ing.
(build_string): Likewise.
(make_tree_vec): Use ggc_alloc_tree when GC'ing.
(tree_cons): Likewise.
(build1): Likewise.
(type_hash_canon): Don't call obstack_free when GC'ing.

From-SVN: r29131

24 years agofour new tests, fix commentary in fifth
Craig Burley [Sun, 5 Sep 1999 18:27:06 +0000 (18:27 +0000)]
four new tests, fix commentary in fifth

From-SVN: r29130

24 years agoMakefile.in (parse.o): Depend on ggc.h.
Mark Mitchell [Sun, 5 Sep 1999 17:33:06 +0000 (17:33 +0000)]
Makefile.in (parse.o): Depend on ggc.h.

* Makefile.in (parse.o): Depend on ggc.h.
(decl2.o): Depend on ggc.h.
(init.o): Depend on ggc.h.
* cp-tree.h (init_decl2): Declare.
(cp_parse_init): Likewise.
* decl.c (ggc_p): Define to zero.
(mark_saved_scope): New function.
(init_decl_processing): Call cp_parse_init, and cp_decl2.
Register GC roots.
(expand_static_init): Add GC roots.
* decl2.c: Include ggc.h.
(init_decl2): New function.
* init.c: Include ggc.h.
(init_init_processing): Add GC roots.
* parse.y: Include ggc.h.
(cp_parse_init): New function.

From-SVN: r29129

24 years agoFix typo in last change.
Mark Mitchell [Sun, 5 Sep 1999 16:42:25 +0000 (16:42 +0000)]
Fix typo in last change.

From-SVN: r29128

24 years agointegrate.c (function_cannot_inline_p): Do not inline functions with forced labels.
Richard Henderson [Sun, 5 Sep 1999 16:41:44 +0000 (09:41 -0700)]
integrate.c (function_cannot_inline_p): Do not inline functions with forced labels.

* integrate.c (function_cannot_inline_p): Do not inline
functions with forced labels.

Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk>
From-SVN: r29127

24 years agoMakefile.in (parse.o): Depend on ggc.h.
Richard Henderson [Sun, 5 Sep 1999 16:21:30 +0000 (09:21 -0700)]
Makefile.in (parse.o): Depend on ggc.h.

* Makefile.in (parse.o): Depend on ggc.h.
(decl2.o): Depend on ggc.h.
(init.o): Depend on ggc.h.
* cp-tree.h (init_decl2): Declare.
(cp_parse_init): Likewise.
* decl.c (ggc_p): Define to zero.
(mark_saved_scope): New function.
(init_decl_processing): Call cp_parse_init, and cp_decl2.
Register GC roots.
(expand_static_init): Add GC roots.
* decl2.c: Include ggc.h.
(init_decl2): New function.
* init.c: Include ggc.h.
(init_init_processing): Add GC roots.
* parse.y: Include ggc.h.
(cp_parse_init): New function.

Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk>
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r29126

24 years agoMakefile.in (ggc-simple.o): Depend on varray.h.
Richard Henderson [Sun, 5 Sep 1999 16:08:20 +0000 (09:08 -0700)]
Makefile.in (ggc-simple.o): Depend on varray.h.

* Makefile.in (ggc-simple.o): Depend on varray.h.
(rtl.o): Depend on ggc.h.
(genattrtab.o): Depend on ggc.h.
(print-tree.o): Likewise.
(fold-const.o): Likewise.
* emit-rtl.c (sequence_element_free_list): Remove, and all references.
(make_insn_raw): Don't cache insns when GC'ing.
(emit_insn_before): Likewise.
(emit_insn_after): Likewise.
(emit_insn): Likewise.
(start_sequence): Use xmalloc to allocate the sequence_stack.
(end_sequence): Add free to free it.
(gen_sequence): Don't cache insns when GC'ing.
(clear_emit_caches): Don't use sequence_element_free_list.
(init_emit): Use xcalloc, not xmalloc+bzero.
* fold-const.c (size_int_wide): Kill the cache, when GC'ing.
* function.c (pop_function_context_from): Use free to free the
fixup_var_refs_queue.
(put_reg_into_stack): Allocate it with xmalloc.
* genattrtab.c: Include ggc.h.
(operate_exp): Don't use obstack_free when GC'ing.
(simplify_cond): Likewise.
(simplify_text_exp): Likewise.
(optimize_attrs): Likewise.
* gengentrtl.c (gendef): Use ggc_alloc_rtx to allocate RTL, when
GC'ing.
(gencode): Generate a #include for ggc.h.
* ggc-callbacks.c (ggc_p): Define it to zero.
* ggc-none.c (ggc_p): Likewise.
* ggc-simple.c: Include varray.h.
(ggc_mark_tree_varray): New function.
(ggc_add_tree_varray_root): Likewise.
(ggc_mark_tree_varray_ptr): Likewise.
* ggc.h (ggc_p): Declare.
(varray_head_tag): Likewise.
(ggc_add_tree_varray_root): Declare.
* print-tree.c (print_node): Don't check for TREE_PERMANENT
inconsistencies when GC'ing.
* rtl.c: Include ggc.h.
(rtvec_alloc): Use ggc_alloc_rtvec when GC'ing.
(rtx_alloc): Use ggc_alloc_rtx when GC'ing.
(rtx_free): Don't call obstack_free when GC'ing.
* toplev.c (rest_of_compilation): Call ggc_collect after every
pass, if GC'ing.
* tree.c (push_obstacks): Do nothing, if GC'ing.
(pop_obstacks_nochange): Likewise.
(pop_obstacks): Likewise.
(make_node): Use ggc_alloc_tree when GC'ing.
(copy_node): Likewise.
(get_identifier): Use ggc_alloc_string when GC'ing.
(build_string): Likewise.
(make_tree_vec): Use ggc_alloc_tree when GC'ing.
(tree_cons): Likewise.
(build1): Likewise.
(type_hash_canon): Don't call obstack_free when GC'ing.

Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk>
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r29125

24 years agoDaily bump.
Jeff Law [Sun, 5 Sep 1999 07:45:07 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r29124

24 years agohaifa-sched.c (schedule_block): Use next_nonnote_insn instead of NEXT_INSN when...
Richard Henderson [Sun, 5 Sep 1999 04:53:04 +0000 (21:53 -0700)]
haifa-sched.c (schedule_block): Use next_nonnote_insn instead of NEXT_INSN when...

        * haifa-sched.c (schedule_block): Use next_nonnote_insn instead
        of NEXT_INSN when examining speculative insns for SCHED_GROUP_P.

From-SVN: r29123

24 years agoMakefile.in (stor-layout.o): Depend on ggc.h.
Richard Henderson [Sun, 5 Sep 1999 03:49:52 +0000 (20:49 -0700)]
Makefile.in (stor-layout.o): Depend on ggc.h.

* Makefile.in (stor-layout.o): Depend on ggc.h.
(expr.o): Depend on ggc.h.
(profile.o): Depend on ggc.h.
(stor-layout.o): Depend on ggc.h.
* emit-rtl.c (init_emit_once): Add gc roots.
* expr.c: Include ggc.h.
(emit_block_move): Add gc roots.
(clear_storage): Likewise.
* expr.h (init_stor_layout_once): New function.
* profile.c: Include ggc.h.
(init_arc_profiler): profiler_label is a root.
* scan.c (make_sstring_space): Trust xrealloc to function
correctly with first parameter NULL.
* stor-layout.c: Include ggc.h.
(set_sizetype): Add gc root.
(init_stor_layout_once): New function.
* toplev.c (compile_file): Call it.

Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk>
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r29122