aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2000-04-08cppexp.c (parse_charconst): Null does not end character constants.Neil Booth5-18/+107
* cppexp.c (parse_charconst): Null does not end character constants. * cppinit.c (ISTABLE): Null character handled as whitespace. * cpplex.c (null_warning): new function. (skip_string): Emit warning if nulls encountered. (_cpp_skip_hspace): Emit warning if nulls encountered. (_cpp_lex_token): Emit warning if nulls encountered. Drop them. * cpp.texi: Update. From-SVN: r33013
2000-04-07flow.c (loop_depth): Remove.Richard Henderson2-517/+618
* flow.c (loop_depth): Remove. (reg_next_use, cc0_live, mem_set_list): Replace with ... (struct propagate_block_info): New. (life_analysis): Don't allocate reg_next_use. (propagate_block_delete_insn): Break out of propagate_block. Use flow_delete_insn to unlink rather than use NOTE_INSN_DELETED. (propagate_block_delete_libcall): Likewise. (propagate_block): Create a propagate_block_info struct to pass to subroutines. Allocate one not two temporary regsets. Don't clobber memory for const calls. Look for clobbers in CALL_INSN_FUNCTION_USAGE. (mark_set_regs): Recognize COND_EXEC. (mark_set_reg): Break out of mark_set_1. (mark_used_reg): Break out of mark_used_regs. (mark_used_regs): Recognize COND_EXEC. (insn_dead_p): Use propagate_block_info struct. (libcall_dead_p, invalidate_mems_from_autoinc): Likewise. (find_auto_inc, try_pre_increment_1): Likewise. (print_rtl_with_bb): Dump regs live at end too. (count_reg_sets_1): Pass in loop_depth. (count_reg_sets, count_reg_references): Likewise. (recompute_reg_usage): Provide it. From-SVN: r33012
2000-04-08Fix filename for block_lump_real_i4 patch.Joern Rennecke1-1/+1
From-SVN: r33011
2000-04-08Fix comment.Joern Rennecke1-4/+4
From-SVN: r33010
2000-04-07Makefile.in (conflict.o): Depend on $(RTL_H) and $(BASIC_BLOCK_H) not the ↵Richard Henderson2-2/+7
raw files. * Makefile.in (conflict.o): Depend on $(RTL_H) and $(BASIC_BLOCK_H) not the raw files. From-SVN: r33009
2000-04-07cpplib.c (do_elif): Skip the rest of the line if we're not going to bother ↵Zack Weinberg7-11/+67
evaluating it. * cpplib.c (do_elif): Skip the rest of the line if we're not going to bother evaluating it. (skip_if_group): Clear pfile->only_seen_white. Reorder loop to avoid pointless calls to the lexer. * gcc.dg/cpp-mi2.c: New test. * gcc.dg/cpp-mi2[abc].h: New files. From-SVN: r33008
2000-04-07Fix nit.Jim Wilson2-2/+4
* config/ia64/ia64.c: Delete stdio.h and ctype.h includes. From-SVN: r33007
2000-04-07* calls.c (expand_call): emit_queue if we're trying a sibcall.Jason Merrill2-0/+8
From-SVN: r33006
2000-04-07vmihint.C: Adjust __vmi_class_type_info member name.Nathan Sidwell2-1/+6
* g++.old-deja/g++.abi/vmihint.C: Adjust __vmi_class_type_info member name. From-SVN: r33005
2000-04-07Rename abi::__vmi_class_type_info members.Nathan Sidwell3-27/+40
* inc/cxxabi.h (__vmi_class_type_info): Rename details, n_bases, base_list, detail_masks members to vmi_flags, vmi_base_count, vmi_bases and vmi_flags_masks respectively. (__vmi_class_type_info::vmi_flags_masks): Rename details_unknown_mask to flags_unknown_mask. * tinfo.cc (__class_type_info::do_upcast): Adjust. (__vmi_class_type_info::do_find_public_src): Adjust. (__vmi_class_type_info::do_dyncast): Adjust. (__vmi_class_type_info::do_upcast): Adjust. From-SVN: r33004
2000-04-07t-linux64 (tcrtbeginS.o, tcrtendS.o): Remove.Jakub Jelinek3-27/+25
* config/sparc/t-linux64 (tcrtbeginS.o, tcrtendS.o): Remove. * Makefile.in: Build crtbeginS and crtendS like crtbegin and crtend so they can be multilibbed. (STAGESTUFF): Remove s-crt and s-crtS. From-SVN: r33003
2000-04-07alpha.c (alpha_emit_conditional_move): Fail if we discover we need a pseudo ↵Richard Henderson3-3/+23
and no_new_pseudos is true. * config/alpha/alpha.c (alpha_emit_conditional_move): Fail if we discover we need a pseudo and no_new_pseudos is true. * config/alpha/alpha.md (ne:DI insn): New. (trunctfsf2, sne): Emit NE instead of non-canonical LTU. From-SVN: r32998
2000-04-07rtl.def (COND_EXEC): New.Richard Henderson8-61/+146
* rtl.def (COND_EXEC): New. * rtl.h (COND_EXEC_TEST, COND_EXEC_CODE): New. * tm.texi (MAX_CONDITIONAL_EXECUTE): Document. * genconfig.c (have_cond_arith_flag): Remove. (have_cond_exec_flag): New. (walk_insn_part): Detect COND_EXEC, not arithmetic in IF_THEN_ELSE. (main): Print HAVE_conditional_execution. * haifa-sched.c (haifa_classify_insn): Recognize COND_EXEC. (sched_analyze_insn, print_pattern): Likewise. * reload.c (find_equiv_reg): Likewise. * rtlanal.c (reg_referenced_p): Likewise. (note_stores, dead_or_set_regno_p): Likewise. (reg_overlap_mentioned_p): Rewrite to use a switch. From-SVN: r32997
2000-04-07ggc.h (struct rtx_def): Forward declare.Richard Henderson5-0/+27
* ggc.h (struct rtx_def): Forward declare. * print-rtl.c (debug_rtx_range): New. * rtl.h (debug_rtx_range): Declare. * varray.h (VARRAY_ACTIVE_SIZE, VARRAY_POP_ALL): New. From-SVN: r32996
2000-04-07gcse.c (gcse_main): Don't rebuild the CFG here.Richard Henderson4-103/+113
* gcse.c (gcse_main): Don't rebuild the CFG here. (delete_null_pointer_checks): Likewise. * ssa.c (convert_to_ssa): Likewise. * toplev.c (rest_of_compilation): Do it here instead. Combine sequential calls to TIMEVAR. Consistently use `insns' instead of `get_insns()'. Always split insns after reload when optimizing. From-SVN: r32995
2000-04-07basic-block.h (merge_blocks_nomove): Declare.Richard Henderson3-93/+115
* basic-block.h (merge_blocks_nomove): Declare. (tidy_fallthru_edge): Declare. * flow.c (merge_blocks_nomove): Document as merging into previous blocks. Remove cruft from between blocks; remove all edges out of A. (tidy_fallthru_edge): Export. From-SVN: r32994
2000-04-07tinfo.cc (convert_to_base): New function.Nathan Sidwell2-25/+41
* tinfo.cc (convert_to_base): New function. (get_vbase_offset): Remove. Move into convert_to_base. (__vmi_class_type_info::do_find_public_src): Adjust. (__vmi_class_type_info::do_dyncast): Adjust. (__vmi_class_type_info::do_upcast): Adjust. plus commit changelog entry 2000-04-06 Nathan Sidwell <nathan@codesourcery.com> From-SVN: r32993
2000-04-07ssa.c (compute_conservative_reg_partition): Declare with void arguments.Alex Samuel4-34/+19
* ssa.c (compute_conservative_reg_partition): Declare with void arguments. * toplev.c (clean_dump_file): Remove previously-deleted function inadvertantly merged back in. * conflict.c (conflict_graph_add): Use a single call to htab_find_slot to look up and insert. From-SVN: r32992
2000-04-07Daily bump.Jeff Law2-2/+2
From-SVN: r32991
2000-04-07genrecog.c (*): Rename _last_insn to last_insn.Richard Henderson2-14/+25
* genrecog.c (*): Rename _last_insn to last_insn. (make_insn_sequence): Set the position of the peephole2 C test to be at the last insn. From-SVN: r32990
2000-04-06* flow.c (compute_flow_dominators): Free worklist.Richard Henderson2-0/+5
From-SVN: r32983
2000-04-06Michael Matz <matzmich@cs.tu-berlin.de>Richard Henderson2-12/+40
Michael Matz <matzmich@cs.tu-berlin.de> * flow.c (compute_flow_dominators): Process blocks FIFO not LIFO. From-SVN: r32982
2000-04-07Forgot the ChangeLog entry in this commit; here it is.Alex Samuel1-0/+62
* rtl.h (INSN_P): New macro. (successor_phi_fn): New typedef. (for_each_successor_phi): New prototype. (in_ssa_form): New variable. (PHI_NODE_P): Likewise. * flow.c (calculate_global_regs_live): Add to new_live_at_end from phi nodes in successors. (mark_used_regs): Add PHI case. (set_phi_alternative_reg): New function. (life_analysis): Assert that dead code elimination is not selected when in SSA form. * toplev.c (to_ssa_time): New variable. (from_ssa_time): Likewise. (compile_file): Zero to_ssa_time and from_ssa_time. Print time to convert to and from SSA. (rest_of_compilation): Time convert_to_ssa and convert_from_ssa. (print_time): Compute percent fraction as integer. * ssa.c (PHI_NODE_P): Moved to rtl.h. (convert_to_ssa): Check if we're already in SSA. Don't eliminate dead code in life_analysis. Rerun flow and life analysis at bottom. (eliminate_phi): Use canonical regnos when adding nodes. (mark_reg_in_phi): New function. (mark_phi_and_copy_regs): Likewise. (convert_from_ssa): Rerun life analysis at top. Use coalesced partition. Check for removing a phi node at the end of the block. (compute_coalesced_reg_partition): New function. (coalesce_regs_in_copies): Likewise. (coalesce_reg_in_phi): Likewise. (coalesce_regs_in_sucessor_phi_nodes): Likewise. (for_each_successor_phi): Likewise. (rename_context): New struct. (rename_block): Use a rename_context with rename_insn_1. When renaming sets of a subreg, emit a copy of the entire reg first. (rename_insn_1): Treat data as a rename_context *. Save current insn in set_data. (rename_set_data): Add field set_insn. * Makefile.in (HASHTAB_H): Move up in file. (OBSTACK_H): New macro. (collect2.o): Use OBSTACK_H in dependencies. (sdbout.o): Likewise. (emit-rtl.o): Likewise. (simplify-rtx.o): Likewise. (fix-header.o): Likewise. (OBJS): Add conflict.o. (conflict.o): New rule. * basic-block.h: Include partition.h. (conflict_graph): New typedef. (conflict_graph_enum_fn): Likewise. (conflict_graph_new): New prototype. (conflict_graph_delete): Likewise. (conflict_graph_add): Likewise. (conflict_graph_conflict_p): Likewise. (conflict_graph_enum): Likewise. (conflict_graph_merge_regs): Likewise. (conflict_graph_print): Likewise. (conflict_graph_compute): Likewise. * conflict.c: New file. From-SVN: r32981
2000-04-06tinfo.cc (operator=): Use __builtin_strcmp.Jason Merrill3-2/+7
* tinfo.cc (operator=): Use __builtin_strcmp. * tinfo2.cc (before): Likewise. From-SVN: r32980
2000-04-06rtl.h (INSN_P): New macro.Alex Samuel7-69/+1163
* rtl.h (INSN_P): New macro. (successor_phi_fn): New typedef. (for_each_successor_phi): New prototype. (in_ssa_form): New variable. (PHI_NODE_P): Likewise. * flow.c (calculate_global_regs_live): Add to new_live_at_end from phi nodes in successors. (mark_used_regs): Add PHI case. (set_phi_alternative_reg): New function. (life_analysis): Assert that dead code elimination is not selected when in SSA form. * toplev.c (to_ssa_time): New variable. (from_ssa_time): Likewise. (compile_file): Zero to_ssa_time and from_ssa_time. Print time to convert to and from SSA. (rest_of_compilation): Time convert_to_ssa and convert_from_ssa. (print_time): Compute percent fraction as integer. * ssa.c (PHI_NODE_P): Moved to rtl.h. (convert_to_ssa): Check if we're already in SSA. Don't eliminate dead code in life_analysis. Rerun flow and life analysis at bottom. (eliminate_phi): Use canonical regnos when adding nodes. (mark_reg_in_phi): New function. (mark_phi_and_copy_regs): Likewise. (convert_from_ssa): Rerun life analysis at top. Use coalesced partition. Check for removing a phi node at the end of the block. (compute_coalesced_reg_partition): New function. (coalesce_regs_in_copies): Likewise. (coalesce_reg_in_phi): Likewise. (coalesce_regs_in_sucessor_phi_nodes): Likewise. (for_each_successor_phi): Likewise. (rename_context): New struct. (rename_block): Use a rename_context with rename_insn_1. When renaming sets of a subreg, emit a copy of the entire reg first. (rename_insn_1): Treat data as a rename_context *. Save current insn in set_data. (rename_set_data): Add field set_insn. * Makefile.in (HASHTAB_H): Move up in file. (OBSTACK_H): New macro. (collect2.o): Use OBSTACK_H in dependencies. (sdbout.o): Likewise. (emit-rtl.o): Likewise. (simplify-rtx.o): Likewise. (fix-header.o): Likewise. (OBJS): Add conflict.o. (conflict.o): New rule. * basic-block.h: Include partition.h. (conflict_graph): New typedef. (conflict_graph_enum_fn): Likewise. (conflict_graph_new): New prototype. (conflict_graph_delete): Likewise. (conflict_graph_add): Likewise. (conflict_graph_conflict_p): Likewise. (conflict_graph_enum): Likewise. (conflict_graph_merge_regs): Likewise. (conflict_graph_print): Likewise. (conflict_graph_compute): Likewise. * conflict.c: New file. From-SVN: r32979
2000-04-06tlink.c (read_repo_files): Don't look for .rpo info for linker flags.Jason Merrill2-1/+12
* tlink.c (read_repo_files): Don't look for .rpo info for linker flags. From-SVN: r32978
2000-04-06* sh.h (STRUCT_VALUE, RETURN_IN_MEMORY): Define.J"orn Rennecke2-1/+23
From-SVN: r32977
2000-04-06Fix Copyright.Joern Rennecke1-1/+1
From-SVN: r32976
2000-04-06lib1funcs.asm (___udivsi3_i4): ( __SH4_SINGLE__ / __SH4_SINGLE_ONLY__ ↵J"orn Rennecke2-1/+7
variant): value for fpscr only depends... * config/sh/lib1funcs.asm (___udivsi3_i4): ( __SH4_SINGLE__ / __SH4_SINGLE_ONLY__ variant): value for fpscr only depends on FMOVD_WORKS. From-SVN: r32975
2000-04-06lib1funcs.asm (___udivsi3_i4): When using fmovd, make double constant 8-byte ↵J"orn Rennecke2-0/+11
aligned. * config/sh/lib1funcs.asm (___udivsi3_i4): When using fmovd, make double constant 8-byte aligned. From-SVN: r32974
2000-04-06cp-tree.h (lang_decl_flags): Rename saved_inline to deferred.Mark Mitchell16-80/+71
* cp-tree.h (lang_decl_flags): Rename saved_inline to deferred. (DECL_SAVED_INLINE): Rename to ... (DECL_DEFERRED_FN): ... this. (in_function_p): Remove declaration. (mark_inline_for_output): Rename to ... (defer_fn): ... this. * decl.c (finish_function): Adjust call to mark_inline_for_output. (in_function_p): Remove definition. * decl2.c (saved_inlines): Rename to ... (deferred_fns): ... this. (saved_inlines_used): Rename to ... (deferred_fns_used): ... this. (mark_inline_for_output): Rename to ... (defer_fn): ... this. (finish_file): Adjust accordingly. (init_decl2): Likewise. * lex.c (cons_up_default_function): Likewise. * pt.c (mark_decl_instantiated): Likewise. (instantiate_decl): Don't set DECL_DEFER_OUTPUT under any circumstances. * rtti.c (get_tinfo_decl): Adjust call to mark_inline_for_output. * semantics.c (expand_body): Defer more functions. From-SVN: r32973
2000-04-06sparc.md (movtf_insn_sp32, [...]): Accept loading 0.0 into GENERAL_REGS.Jakub Jelinek3-17/+30
* config/sparc/sparc.md (movtf_insn_sp32, movtf_insn_vis_sp32, movtf_no_e_insn_sp32, movtf_insn_hq_sp64, movtf_insn_hq_vis_sp64, movtf_no_e_insn_sp64): Accept loading 0.0 into GENERAL_REGS. (movtf_insn_sp64, movtf_insn_vis_sp64): Likewise. Accept storing GENERAL_REGS into offsetable memory. * config/sparc/sparc.h (PREFERRED_RELOAD_CLASS): Don't allow building a TFmode constant other than 0.0L into GENERAL_REGS. From-SVN: r32972
2000-04-06* g++.old-deja/g++.abi/vmihint.C: New test.Nathan Sidwell2-0/+74
From-SVN: r32970
2000-04-06* regrename.c (regrename_optimize): Handle no REG_ALLOC_ORDER.Clinton Popetz2-0/+8
From-SVN: r32969
2000-04-06cpp-ifparen.c, [...]: Add FSF copyright.Neil Booth7-13/+23
* cpp-ifparen.c, cpp-missingop.c, cpp-missingparen.c, cpp-shift.c, cpp-shortcircuit.c, cpp-unary.c: Add FSF copyright. From-SVN: r32968
2000-04-06vec.cc: New file.Nathan Sidwell3-2/+171
* vec.cc: New file. * Make-lang.in (CXX_LIB2FUNCS): Add it. (vec.o): Build it. * inc/cxxabi.h (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Declare. From-SVN: r32967
2000-04-06rtti.c (dfs_class_hint_mark): New static function.Nathan Sidwell2-10/+66
* rtti.c (dfs_class_hint_mark): New static function. (dfs_class_hint_unmark): New static function. (class_hint_flags): Use them. From-SVN: r32966
2000-04-06cpphash.c (CPP_IS_MACRO_BUFFER, [...]): Delete.Zack Weinberg7-417/+581
* cpphash.c (CPP_IS_MACRO_BUFFER, FORWARD, PEEKC): Delete. (macro_cleanup): No need to cast pbuf->macro. (collect_expansion): Use _cpp_get_define_token. Goto done if it returns VSPACE. Remove check for trailing space after CPP_COMMENT. (_cpp_create_definition): Don't diddle flags here. Return directly on error. (unsafe_chars): Handle c1 being EOF. (push_macro_expansion): Use unsafe_chars for both accidental-paste checks. Don't push the buffer till after we're done with them. * cpplex.c (PEEKBUF, GETBUF, FORWARDBUF): New. (PEEKN, FORWARD, GETC, PEEKC): Use them. (cpp_push_buffer): Don't set new->alimit. Set new->mark appropriately. (_cpp_parse_assertion): Don't NUL terminate. (_cpp_lex_token): Fix -traditional macro handling. Don't skip hspace before calling _cpp_parse_assertion. Remove all sets of only_seen_white. Treat '\f' as hspace. Don't do anything special with '\n' here. (maybe_macroexpand): Handle T_EMPTY hash entries without pushing a buffer at all. (cpp_get_token): Handle clearing only_seen_white here. Handle incrementing the line number here. Clear potential_control_macro as well as only_seen_white, if appropriate. (cpp_get_non_space_token): Don't eat CPP_POP tokens. (_cpp_get_define_token): New function, basically like _cpp_get_directive_token was but doesn't eat horizontal space. Don't do anything with only_seen_white here. (_cpp_get_directive_token): Just call _cpp_get_define_token repeatedly till it returns non-hspace. * cpplib.c (PEEKN, FORWARD, GETC, PEEKC): Delete. (conditional_skip, skip_if_group): Return int. (DIRECTIVE_TABLE): Change origin of all conditional directives to "COND". (TRAD_DIRECT_P): New macro. (_cpp_handle_directive): Use _cpp_get_directive_token. Issue an error for a bogus directive, unless -lang-asm. Use TRAD_DIRECT_P. Loop calling handler functions till one returns zero. (get_macro_name): Don't diddle flags here. (do_define): Diddle flags here. Use _cpp_get_directive_token. Create T_EMPTY nodes for #define macro /* nothing */. (do_undef): Don't copy the name. Use _cpp_get_directive_token. Use hp->name when calling pass_thru_directive. (do_if, do_else, do_elif, do_ifdef, do_ifndef, conditional_skip): Return the result of conditional_skip and/or skip_if_group. Don't call _cpp_output_line_command. (consider_directive_while_skipping): Use _cpp_get_directive_token. Issue -Wtraditional warnings as appropriate. Don't complain about unrecognized directives. If we are to stop skipping, return the number of the directive that ended the skip. (skip_if_group): Use _cpp_get_directive_token. Turn off macro expansion and line commands while skipping. Return the result of consider_directive_while_skipping, if nonzero. (do_endif): Just set potential_control_macro here. (validate_else): Use _cpp_get_directive_token. (do_assert, do_unassert): Don't save pointers into the token_buffer across calls to the lexer. Use _cpp_get_directive_token. * cpplib.h (cpp_buffer): Remove alimit and colno. Make mark a pointer, not an offset. Replace 'data', which was a generic pointer, with 'macro', which points to a struct hashnode. (cpp_reader): Add 'potential_control_macro' pointer. * cpphash.h (T_UNUSED): Replace with T_EMPTY. (CPP_BUF_GET, CPP_FORWARD): Delete. (CPP_IN_COLUMN_1, ADJACENT_TO_MARK): New macros. (CPP_IS_MACRO_BUFFER, CPP_SET_BUF_MARK, CPP_GOTO_BUF_MARK, ACTIVE_MARK_P): Update. (_cpp_get_define_token): New internal function. * cppfiles.c (read_include_file): Don't set fp->alimit or fp->colno. From-SVN: r32965
2000-04-06Daily bump.Jeff Law2-2/+2
From-SVN: r32964
2000-04-06configure.in: And here.Benjamin Kosnik5-215/+276
2000-04-05 Benjamin Kosnik <bkoz@cygnus.com> * configure.in: And here. * configure: Regenerate. * acconfig.h: Add ENABLE_STD_NAMESPACE to set flag_honor_std if --enable-libstdcxx-v3 is passed at configure time. * config.h.in: Regenerate. From-SVN: r32962
2000-04-06decl2.c: Make flag_honor_std dependant on ENABLE_STD_NAMESPACE.Benjamin Kosnik2-1/+5
2000-04-05 Benjamin Kosnik <bkoz@cygnus.com> * decl2.c: Make flag_honor_std dependant on ENABLE_STD_NAMESPACE. From-SVN: r32961
2000-04-06re GNATS gcj/140 (gcj permits assignment to array length)Tom Tromey3-8/+26
Fix for PR gcj/140: * parse.y (check_final_assignment): Recognize assignments to the `length' field of an array when generating class files. From-SVN: r32960
2000-04-06cp-tree.h (instantiate_decl): Change prototype.Mark Mitchell5-36/+48
* cp-tree.h (instantiate_decl): Change prototype. * decl2.c (mark_used): Adjust call. * optimize.c (inlinable_function_p): Adjust handling of templates. * pt.c (do_decl_instantiation): Adjust call to instantiate_decl. (do_type_instantiation): Likewise. (instantiate_decl): Defer more templates. (instantiate_pending_templates): Adjust logic to handle inline friend functions. From-SVN: r32959
2000-04-05class.c (decl_hash): Prototype removed.Alexandre Petit-Bianco2-2/+5
2000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com> * class.c (decl_hash): Prototype removed. (decl_compare): Likewise. (Fixes a warning problem.) From-SVN: r32958
2000-04-06final.c (final): Use xcalloc to allocate line_note_exists.Mark Mitchell15-212/+292
* final.c (final): Use xcalloc to allocate line_note_exists. * function.c (free_after_compilation): Free the temp_slots. (assign_stack_temp_for_type): Use xmalloc to allocate temp_slots. (combine_temp_slot): Free temp_slots when they get combined. (purge_addressof): Fix typo in comment. * stmt.c (mark_goto_fixup): Mark the fixup itself. (expand_fixup): Allocate the fixup with ggc_alloc_obj. * ggc.h: Include varray.h. (ggc_pending_trees): Declare. (ggc_mark_tree_children): Remove declaration. (ggc_mark_tree): Just push unmarked trees on ggc_pending_trees. * ggc-common.c (ggc_pending_trees): New variable. (ggc_mark_roots): Call ggc_mark_trees. (ggc_mark_tree_children): Rename to ggc_mark_trees. Process all the ggc_pending_trees. * Makefile.in (GGC_H): New variable. Use it throughout in place of ggc.h. * Makefile.in (GGC_H): New variable. Use it throughout in place of ggc.h. * call.c: Don't include obstack.h. Include ggc.h. (obstack_chunk_alloc): Don't define. (obstack_chunk_free): Likewise. (add_candidate): Allocate the z_candidate with ggc_alloc_obj. * decl.c (push_switch): Use xmalloc to allocate the cp_switch. (pop_switch): Free it. * decl2.c (grokclassfn): Set TREE_READONLY for PARM_DECLs. * dump.c (dequeue_and_dump): Don't try to print the bit_position if we don't have a DECL_FIELD_OFFSET. * Makefile.in (GGC_H): Add varray.h. From-SVN: r32956
2000-04-06re GNATS gcj/164 (compiler permits "volatile final" variables)Tom Tromey4-13/+41
* parse.h (THIS_MODIFIER_ONLY): Changed meaning of `v' parameter. * parse.y (check_modifiers_consistency): Check for final/volatile clash. Fixes PR gcj/164. From-SVN: r32955
2000-04-05class.c: (java_hash_hash_tree_node): Renamed from `decl_hash', made global.Alexandre Petit-Bianco5-259/+226
2000-04-05 Alexandre Petit-Bianco <apbianco@cygnus.com> * class.c: (java_hash_hash_tree_node): Renamed from `decl_hash', made global. (java_hash_compare_tree_node): Renamed from `decl_compare, made global. (add_method_1): Use `java_hash_hash_tree_node' and `java_hash_compare_tree_node'. * java-tree.h: (java_hash_hash_tree_node): Prototyped. (java_hash_compare_tree_node): Likewise. * parse.y (find_applicable_accessible_methods_list): Create, delete and use a hash table to remember already searched interfaces. From-SVN: r32947
2000-04-06sh.h (FUNCTION_ARG_PARTIAL_NREGS): Accomodate an unsigned GET_MODE_SIZE.J"orn Rennecke2-1/+6
* sh.h (FUNCTION_ARG_PARTIAL_NREGS): Accomodate an unsigned GET_MODE_SIZE. From-SVN: r32946
2000-04-06sh.c (sh_insn_length_adjustment): New function.J"orn Rennecke4-12/+87
* sh.c (sh_insn_length_adjustment): New function. * sh-protos.h (sh_insn_length_adjustment): Declare. * sh.h (ADJUST_INSN_LENGTH): Use it. From-SVN: r32942
2000-04-05md.texi (Standard Names): Clarify when movX is needed.Hans-Peter Nilsson3-9/+13
* md.texi (Standard Names): Clarify when movX is needed. * combine.c (simplify_comparison) [MINUS]: Do not replace all (op (minus A B) 0) with (op A B). From-SVN: r32940