Nathan Sidwell [Fri, 7 Apr 2000 16:57:48 +0000 (16:57 +0000)]
Rename abi::__vmi_class_type_info members.
* 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
Jakub Jelinek [Fri, 7 Apr 2000 14:57:58 +0000 (16:57 +0200)]
t-linux64 (tcrtbeginS.o, tcrtendS.o): Remove.
* 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
Richard Henderson [Fri, 7 Apr 2000 09:53:18 +0000 (02:53 -0700)]
alpha.c (alpha_emit_conditional_move): Fail if we discover we need a pseudo 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
Richard Henderson [Fri, 7 Apr 2000 09:24:45 +0000 (02:24 -0700)]
rtl.def (COND_EXEC): New.
* 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
Richard Henderson [Fri, 7 Apr 2000 09:24:06 +0000 (02:24 -0700)]
ggc.h (struct rtx_def): Forward declare.
* 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
Richard Henderson [Fri, 7 Apr 2000 09:23:29 +0000 (02:23 -0700)]
gcse.c (gcse_main): Don't rebuild the CFG here.
* 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
Richard Henderson [Fri, 7 Apr 2000 09:22:10 +0000 (02:22 -0700)]
basic-block.h (merge_blocks_nomove): Declare.
* 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
Nathan Sidwell [Fri, 7 Apr 2000 09:07:24 +0000 (09:07 +0000)]
tinfo.cc (convert_to_base): New function.
* 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
Alex Samuel [Fri, 7 Apr 2000 08:16:31 +0000 (08:16 +0000)]
ssa.c (compute_conservative_reg_partition): Declare with void arguments.
* 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
Jeff Law [Fri, 7 Apr 2000 07:45:42 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r32991
Richard Henderson [Fri, 7 Apr 2000 07:16:59 +0000 (00:16 -0700)]
genrecog.c (*): Rename _last_insn to last_insn.
* 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
Richard Henderson [Fri, 7 Apr 2000 06:15:22 +0000 (23:15 -0700)]
* flow.c (compute_flow_dominators): Free worklist.
From-SVN: r32983
Richard Henderson [Fri, 7 Apr 2000 06:11:40 +0000 (23:11 -0700)]
Michael Matz <matzmich@cs.tu-berlin.de>
Michael Matz <matzmich@cs.tu-berlin.de>
* flow.c (compute_flow_dominators): Process blocks FIFO not LIFO.
From-SVN: r32982
Alex Samuel [Fri, 7 Apr 2000 03:33:15 +0000 (03:33 +0000)]
Forgot the ChangeLog entry in this commit; here it is.
* 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
Jason Merrill [Thu, 6 Apr 2000 22:13:41 +0000 (22:13 +0000)]
tinfo.cc (operator=): Use __builtin_strcmp.
* tinfo.cc (operator=): Use __builtin_strcmp.
* tinfo2.cc (before): Likewise.
From-SVN: r32980
Alex Samuel [Thu, 6 Apr 2000 21:22:49 +0000 (21:22 +0000)]
rtl.h (INSN_P): New macro.
* 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
Jason Merrill [Thu, 6 Apr 2000 21:03:45 +0000 (21:03 +0000)]
tlink.c (read_repo_files): Don't look for .rpo info for linker flags.
* tlink.c (read_repo_files): Don't look for .rpo info for
linker flags.
From-SVN: r32978
J"orn Rennecke [Thu, 6 Apr 2000 19:43:12 +0000 (19:43 +0000)]
* sh.h (STRUCT_VALUE, RETURN_IN_MEMORY): Define.
From-SVN: r32977
Joern Rennecke [Thu, 6 Apr 2000 18:53:39 +0000 (19:53 +0100)]
Fix Copyright.
From-SVN: r32976
J"orn Rennecke [Thu, 6 Apr 2000 18:48:11 +0000 (18:48 +0000)]
lib1funcs.asm (___udivsi3_i4): ( __SH4_SINGLE__ / __SH4_SINGLE_ONLY__ 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
J"orn Rennecke [Thu, 6 Apr 2000 18:19:44 +0000 (18:19 +0000)]
lib1funcs.asm (___udivsi3_i4): When using fmovd, make double constant 8-byte aligned.
* config/sh/lib1funcs.asm (___udivsi3_i4): When using fmovd,
make double constant 8-byte aligned.
From-SVN: r32974
Mark Mitchell [Thu, 6 Apr 2000 16:30:45 +0000 (16:30 +0000)]
cp-tree.h (lang_decl_flags): Rename saved_inline to deferred.
* 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
Jakub Jelinek [Thu, 6 Apr 2000 15:07:26 +0000 (17:07 +0200)]
sparc.md (movtf_insn_sp32, [...]): Accept loading 0.0 into GENERAL_REGS.
* 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
Philippe De Muyter [Thu, 6 Apr 2000 14:58:05 +0000 (16:58 +0200)]
* MAINTAINERS: Added myself.
From-SVN: r32971
Nathan Sidwell [Thu, 6 Apr 2000 14:12:34 +0000 (14:12 +0000)]
* g++.old-deja/g++.abi/vmihint.C: New test.
From-SVN: r32970
Clinton Popetz [Thu, 6 Apr 2000 13:52:59 +0000 (13:52 +0000)]
* regrename.c (regrename_optimize): Handle no REG_ALLOC_ORDER.
From-SVN: r32969
Neil Booth [Thu, 6 Apr 2000 12:51:33 +0000 (12:51 +0000)]
cpp-ifparen.c, [...]: Add FSF copyright.
* cpp-ifparen.c, cpp-missingop.c, cpp-missingparen.c,
cpp-shift.c, cpp-shortcircuit.c, cpp-unary.c: Add FSF
copyright.
From-SVN: r32968
Nathan Sidwell [Thu, 6 Apr 2000 11:53:30 +0000 (11:53 +0000)]
vec.cc: New file.
* 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
Nathan Sidwell [Thu, 6 Apr 2000 09:42:03 +0000 (09:42 +0000)]
rtti.c (dfs_class_hint_mark): New static function.
* rtti.c (dfs_class_hint_mark): New static function.
(dfs_class_hint_unmark): New static function.
(class_hint_flags): Use them.
From-SVN: r32966
Zack Weinberg [Thu, 6 Apr 2000 07:56:14 +0000 (07:56 +0000)]
cpphash.c (CPP_IS_MACRO_BUFFER, [...]): Delete.
* 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
Jeff Law [Thu, 6 Apr 2000 07:45:16 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r32964
Benjamin Kosnik [Thu, 6 Apr 2000 06:48:16 +0000 (06:48 +0000)]
configure.in (enable_libstdcxx_v3): Add.
2000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
Martin v. Loewis <martin@loewis.home.cs.tu-berlin.de>
* configure.in (enable_libstdcxx_v3): Add.
(target_libs): Add bits here to switch between libstdc++-v2 and
libstdc++-v3.
* config.if: And this file too.
* Makefile.in: Add libstdc++-v3 targets.
Co-Authored-By: Martin v. Loewis <martin@loewis.home.cs.tu-berlin.de>
From-SVN: r32963
Benjamin Kosnik [Thu, 6 Apr 2000 06:47:52 +0000 (06:47 +0000)]
configure.in: And here.
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
Benjamin Kosnik [Thu, 6 Apr 2000 06:44:42 +0000 (06:44 +0000)]
decl2.c: Make flag_honor_std dependant on ENABLE_STD_NAMESPACE.
2000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
* decl2.c: Make flag_honor_std dependant on ENABLE_STD_NAMESPACE.
From-SVN: r32961
Tom Tromey [Thu, 6 Apr 2000 05:29:30 +0000 (05:29 +0000)]
re GNATS gcj/140 (gcj permits assignment to array length)
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
Mark Mitchell [Thu, 6 Apr 2000 03:12:19 +0000 (03:12 +0000)]
cp-tree.h (instantiate_decl): Change prototype.
* 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
Alexandre Petit-Bianco [Thu, 6 Apr 2000 01:01:11 +0000 (01:01 +0000)]
class.c (decl_hash): Prototype removed.
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
Mark Mitchell [Thu, 6 Apr 2000 00:51:25 +0000 (00:51 +0000)]
final.c (final): Use xcalloc to allocate line_note_exists.
* 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
Tom Tromey [Thu, 6 Apr 2000 00:43:27 +0000 (00:43 +0000)]
re GNATS gcj/164 (compiler permits "volatile final" variables)
* 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
Tom Tromey [Thu, 6 Apr 2000 00:29:39 +0000 (00:29 +0000)]
configure: Rebuilt.
* configure: Rebuilt.
* configure.in: Recognize --enable-java-awt.
(AWT): New conditional.
* Makefile.in: Rebuilt.
* Makefile.am (toolexeclib_LTLIBRARIES): Build libgcjawt.la if
requested.
(libgcjawt_la_SOURCES): New macro.
(EXTRA_libgcjawt_la_SOURCES): Likewise.
(libgcjawt_la_DEPENDENCIES): Likewise.
(libgcjawt_la_LIBADD): Likewise.
(libgcjawt_la_LDFLAGS): Likewise.
(libgcj.zip): Depend on cond_java_awt_source_files
(cond_awt_java_source_files): New macro.
(MOSTLYCLEANFILES): Added awto_files.
(awto_files): New macro. Use where javao_files used.
(nat_headers): Use cond_awt_java_source_files.
From-SVN: r32954
Michael Meissner [Thu, 6 Apr 2000 00:23:39 +0000 (00:23 +0000)]
Recognize d30v-elf as d30v-unknown-elf
From-SVN: r32952
Richard Henderson [Thu, 6 Apr 2000 00:13:50 +0000 (17:13 -0700)]
* splay-tree.c (splay_tree_remove): New.
From-SVN: r32949
Richard Henderson [Thu, 6 Apr 2000 00:12:41 +0000 (17:12 -0700)]
* splay-tree.h (splay_tree_remove): Declare.
From-SVN: r32948
Alexandre Petit-Bianco [Wed, 5 Apr 2000 23:57:19 +0000 (23:57 +0000)]
class.c: (java_hash_hash_tree_node): Renamed from `decl_hash', made global.
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
J"orn Rennecke [Wed, 5 Apr 2000 23:38:36 +0000 (23:38 +0000)]
sh.h (FUNCTION_ARG_PARTIAL_NREGS): Accomodate an unsigned GET_MODE_SIZE.
* sh.h (FUNCTION_ARG_PARTIAL_NREGS): Accomodate an unsigned
GET_MODE_SIZE.
From-SVN: r32946
J"orn Rennecke [Wed, 5 Apr 2000 23:12:53 +0000 (23:12 +0000)]
sh.c (sh_insn_length_adjustment): New function.
* 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
Hans-Peter Nilsson [Wed, 5 Apr 2000 21:14:53 +0000 (21:14 +0000)]
md.texi (Standard Names): Clarify when movX is needed.
* 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
Hans-Peter Nilsson [Wed, 5 Apr 2000 20:52:22 +0000 (20:52 +0000)]
960327-1.c (f): Add a letter to s[] to avoid stack-frame overwrite.
* execute/960327-1.c (f): Add a letter to s[] to avoid stack-frame
overwrite.
From-SVN: r32939
Jason Merrill [Wed, 5 Apr 2000 19:02:02 +0000 (15:02 -0400)]
From Mark Elbrecht:
* makefile.dos: Remove; obsolete.
* configure.bat: Remove; obsolete.
From-SVN: r32938
Geoff Keating [Wed, 5 Apr 2000 18:54:55 +0000 (18:54 +0000)]
Update POTFILES.in for rs6000.
From-SVN: r32937
Matt Welsh [Wed, 5 Apr 2000 18:50:22 +0000 (18:50 +0000)]
jcf-depend.c (add_entry): Fixed bug where list was always replaced with latest entry.
2000-04-03 Matt Welsh <mdw@cs.berkeley.edu>
* jcf-depend.c (add_entry): Fixed bug where list was always replaced
with latest entry.
From-SVN: r32936
Hans-Peter Nilsson [Wed, 5 Apr 2000 18:36:20 +0000 (18:36 +0000)]
optabs.c (emit_libcall_block): Remove spurious REG_EQUAL notes from the insn where REG_RETVAL is added.
* optabs.c (emit_libcall_block): Remove spurious REG_EQUAL notes
from the insn where REG_RETVAL is added.
(emit_no_conflict_block): Ditto.
From-SVN: r32935
Toshiyasu Morita [Wed, 5 Apr 2000 17:06:59 +0000 (17:06 +0000)]
sh.c (block_lump_real_i4): Add missing clobber of T_REG
* sh.c (block_lump_real_i4): Add missing clobber of T_REG
(block_lump_real): Likewise.
Co-Authored-By: J"orn Rennecke <amylaar@cygnus.co.uk>
From-SVN: r32934
Chris Demetriou [Wed, 5 Apr 2000 15:52:17 +0000 (15:52 +0000)]
mips.h (MASK_DEBUG_A, [...]): Zero the remaining non-zero debugging masks.
* mips.h (MASK_DEBUG_A, MASK_DEBUG_B, MASK_DEBUG_C): Zero the
remaining non-zero debugging masks.
From-SVN: r32933
Jeffrey A Law [Wed, 5 Apr 2000 15:44:56 +0000 (15:44 +0000)]
basic-block.h (verify_flow_info): Declare.
* basic-block.h (verify_flow_info): Declare.
(flow_loop_outside_edge_p): Declare.
* flow.c (verify_flow_info): Remove declaration.
(clear_log_links, flow_loop_outside_edge_p): Likewise.
From-SVN: r32932
Philippe De Muyter [Wed, 5 Apr 2000 15:36:52 +0000 (17:36 +0200)]
m68k-protos.h (finalize_pic): Turn prototype off using `#if 0', not C++ comments.
* m68k/m68k-protos.h (finalize_pic): Turn prototype off using `#if 0',
not C++ comments.
From-SVN: r32931
Jan Hubicka [Wed, 5 Apr 2000 15:27:08 +0000 (15:27 +0000)]
Fix problems in my previous commit.
From-SVN: r32930
Jakub Jelinek [Wed, 5 Apr 2000 08:57:06 +0000 (10:57 +0200)]
20000405-2.c: New test.
* compile/
20000405-2.c: New test.
* compile/
20000405-3.c: New test.
From-SVN: r32929
Jakub Jelinek [Wed, 5 Apr 2000 07:54:16 +0000 (09:54 +0200)]
sparc.md (snedi_zero+1, [...]): Allow splits only if registers are different.
* config/sparc/sparc.md (snedi_zero+1, neg_snedi_zero+1,
snedi_zero_trunc+1, seqdi_zero+1, neg_seqdi_zero+1,
seqdi_zero_trunc+1): Allow splits only if registers are
different.
From-SVN: r32928
Jeff Law [Wed, 5 Apr 2000 07:45:06 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r32927
Ulrich Drepper [Wed, 5 Apr 2000 07:42:43 +0000 (07:42 +0000)]
Update.
From-SVN: r32926
Ulrich Drepper [Wed, 5 Apr 2000 07:34:36 +0000 (07:34 +0000)]
acconfig.h: Add HAVE_GAS_HIDDEN.
* acconfig.h: Add HAVE_GAS_HIDDEN.
* config.h: Regenerated.
* configure.in: Add test for .hidden pseudo-op in gas.
* configure: Regenerated.
* crtstuff.c: Include auto-host.h.
Emit additional .hidden pseudo-op for __dso_handle if the
assembler knows about it.
From-SVN: r32925
Philippe De Muyter [Wed, 5 Apr 2000 05:15:09 +0000 (07:15 +0200)]
cpphash.c (_cpp_free_definition): Test argnames, not nargs >= 0, before freeing argnames.
2000-04-04 Philippe De Muyter <phdm@macqel.be>
* cpphash.c (_cpp_free_definition): Test argnames, not nargs >= 0,
before freeing argnames.
* cpplib.c (do_ifndef): Cast return value of xstrdup.
From-SVN: r32924
Alexandre Oliva [Wed, 5 Apr 2000 04:56:48 +0000 (04:56 +0000)]
* compile/
20000405-1.c: New test.
From-SVN: r32923
Michael Meissner [Wed, 5 Apr 2000 04:35:39 +0000 (04:35 +0000)]
Make memory reference + update work with -mregnames
From-SVN: r32922
Kaveh R. Ghazi [Wed, 5 Apr 2000 03:51:15 +0000 (03:51 +0000)]
regrename.c (regno_first_use_in): Wrap prototype in PARAMS.
* regrename.c (regno_first_use_in): Wrap prototype in PARAMS.
(regrename_optimize): Rename variables `def_uses' and
`ext_basic_blocks' to avoid conflicts with similarly named
typedefs in traditional C.
From-SVN: r32921
Kaveh R. Ghazi [Wed, 5 Apr 2000 01:52:54 +0000 (01:52 +0000)]
* calls.c (initialize_argument_information): Fix typo in last change.
From-SVN: r32920
Richard Henderson [Wed, 5 Apr 2000 01:23:57 +0000 (18:23 -0700)]
regrename.c (consider_available): Test fixed_regs not PIC_OFFSET_TABLE_REGNUM.
* regrename.c (consider_available): Test fixed_regs not
PIC_OFFSET_TABLE_REGNUM.
From-SVN: r32919
Geoff Keating [Wed, 5 Apr 2000 01:22:36 +0000 (01:22 +0000)]
t-ppccomm (EXTRA_MULTILIB_PARTS): Add crtbegin, crtend.
* config/rs6000/t-ppccomm (EXTRA_MULTILIB_PARTS): Add crtbegin,
crtend.
(CRTSTUFF_T_CFLAGS_S): Delete definition.
* config/rs6000/sysv4.h (STARTFILE_LINUX_SPEC): Always use crtbegin.
(ENDFILE_LINUX_SPEC): Always use crtend.
* configure.in (powerpc-*-linux-gnulibc1): Don't define extra_parts.
(powerpc-*-linux-gnu): Likewise.
* configure: Regenerate.
* config/rs6000/eabi.h: Don't include sysv4.h.
(MULTILIB_DEFAULTS): Don't define.
* config/rs6000/eabiaix.h: Don't include eabi.h.
* config/rs6000/eabile.h: Delete.
* config/rs6000/eabilesim.h: Delete.
* config/rs6000/eabisim.h: Don't include eabi.h.
* config/rs6000/linux.h: Don't include sysv4.h.
(JUMP_TABLES_IN_TEXT_SECTION): Don't redefine.
(MULTILIB_DEFAULTS): Don't redefine.
* config/rs6000/rtems.h: Don't include eabi.h.
* config/rs6000/sol2.h: Don't include sysv4le.h.
* config/rs6000/sysv4le.h: Don't include sysv4.h.
* config/rs6000/t-ppc: Delete.
* config/rs6000/t-ppcgas: Correct comment.
* config/rs6000/t-ppcos: Correct comment. Don't build
multilibs for -fPIC, rather use -fPIC -mstrict-align
as default.
* config/rs6000/t-ppc: Delete.
* config/rs6000/vxppc.h: Don't include sysv4.h.
* config/rs6000/vxppcle.h: Delete.
* configure.in: Use multiple header files for p2pc ELF targets
powerpc-eabiaix, powerpc-eabisim, powerpc-rtems, powerpcle-eabi,
powerpcle-eabisim, powerpc-elf, powerpcle-elf, powerpc-linux-gnu,
powerpc-linux-gnulibc1, powerpc-sysv, powerpcle-sysv,
powerpc-vxworks, powerpcle-vxworks. Assume GAS functionality is
always available for these platforms.
From-SVN: r32918
Richard Henderson [Wed, 5 Apr 2000 01:06:14 +0000 (18:06 -0700)]
* calls.c (try_to_integrate): Initialize reg_parm_stack_space.
From-SVN: r32917
Stan Cox [Wed, 5 Apr 2000 00:32:45 +0000 (00:32 +0000)]
Makefile.in: Add rules for regrename.o
* Makefile.in: Add rules for regrename.o
* regrename.c: New file.
* rtl.h (regrename_optimize): Add prototype.
* toplev.c (rename_registers_dump, flag_rename_registers): New variables
(compile_file, decode_d_option): Add support for -frename-registers.
(rest_of_compilation): Call regrename_optimize.
* config/ia64/ia64.h (HARD_REGNO_RENAME_OK, RENAME_EXTENDED_BLOCKS):
New macros.
From-SVN: r32916
Martin v. Löwis [Tue, 4 Apr 2000 22:54:44 +0000 (22:54 +0000)]
Makefile (gccbug): New target.
* Makefile (gccbug): New target.
(doc): Depend on it.
* gcc.texi (Bugs): Link subnodes.
(gccbug): New node.
* gccbug.in (CATEGORIES): Remove gc, host, profiling, libgcc.
Document severities, priorities, and classes in bug form.
* ChangeLog: Replace leading spaces with tabs.
From-SVN: r32915
Geoff Keating [Tue, 4 Apr 2000 21:49:49 +0000 (21:49 +0000)]
* gcc.dg/cast-qual-1.c: Revert last change.
From-SVN: r32914
Zack Weinberg [Tue, 4 Apr 2000 21:23:10 +0000 (21:23 +0000)]
dbxout.c (CONTIN): If it doesn't have to do anything...
* dbxout.c (CONTIN): If it doesn't have to do anything, give it a
definition that doesn't provoke the "empty body in an
if-statement" warning.
From-SVN: r32913
Zack Weinberg [Tue, 4 Apr 2000 21:17:20 +0000 (21:17 +0000)]
cpplex.c (trigraph_map, speccase): Combine into single table, chartab.
* cpplex.c (trigraph_map, speccase): Combine into single
table, chartab.
(NORMAL, NONTRI): New macros.
(_cpp_read_and_prescan): Change to use unified table. Use
is_hspace to test for whitespace.
From-SVN: r32912
Clinton Popetz [Tue, 4 Apr 2000 21:10:43 +0000 (21:10 +0000)]
builtins.c (expand_builtin_strlen): Force the source to be a memory address.
* builtins.c (expand_builtin_strlen): Force the source to
be a memory address.
From-SVN: r32911
Kaveh R. Ghazi [Tue, 4 Apr 2000 21:07:17 +0000 (21:07 +0000)]
cpplib.c (D): Adjust to call CONCAT2 macro without whitespace.
2000-04-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* cpplib.c (D): Adjust to call CONCAT2 macro without whitespace.
From-SVN: r32910
Kaveh R. Ghazi [Tue, 4 Apr 2000 20:46:23 +0000 (20:46 +0000)]
cfns.gperf (hash, [...]): Prototype.
* cfns.gperf (hash, libc_name_p): Prototype.
* rtti.c (build_dynamic_cast_1): Constification.
* search.c (dfs_debug_unmarkedp, dfs_debug_mark): Unhide prototypes.
* semantics.c (deferred_type_access_control): Prototype.
From-SVN: r32909
Kaveh R. Ghazi [Tue, 4 Apr 2000 20:40:20 +0000 (20:40 +0000)]
boehm.c (mark_reference_fields, set_bit): Prototype.
* boehm.c (mark_reference_fields, set_bit): Prototype.
(set_bit): Un-ANSI-fy definition.
* class.c (init_test_hash_newfunc, decl_hash, decl_compare):
Prototype.
* decl.c (emit_init_test_initialization): Likewise.
* gjavah.c (jni_print_char): Likewise.
* parse.y (create_new_parser_context): Likewise.
From-SVN: r32908
Tom Tromey [Tue, 4 Apr 2000 19:56:20 +0000 (19:56 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added AWTException.java.
* java/awt/AWTException.java: New file.
From-SVN: r32907
Alexandre Petit-Bianco [Tue, 4 Apr 2000 18:22:01 +0000 (18:22 +0000)]
Top level:
2000-04-04 Alexandre Petit-Bianco <apbianco@cygnus.com>
* configure.in: (i[3456]86-*-solaris2*): Removed `target-libffi'
from list. Patch proposed by Anthony Green.
Libffi:
2000-04-04 Alexandre Petit-Bianco <apbianco@cygnus.com>
* configure: Rebuilt.
* configure.in: (i*86-*-solaris*): New libffi target. Patch
proposed by Bryce McKinlay.
From-SVN: r32906
Mark Mitchell [Tue, 4 Apr 2000 18:13:22 +0000 (18:13 +0000)]
Correct many new ABI issues regarding vbase and vcall offset layout.
Correct many new ABI issues regarding vbase and vcall offset
layout.
* cp-tree.h (BINFO_VTABLE): Document.
(struct lang_type): Tweak formatting.
(BINFO_PRIMARY_BINFO): Add to documentation.
(CLASSTYPE_VSIZE): Fix typo in comment.
(CLASSTYPE_VBASECLASSES): Update documentation.
(BINFO_VBASE_MARKED): Remove.
(SET_BINFO_VBASE_MARKED): Likewise.
(CLEAR_BINFO_VBASE_MARKED): Likewise.
(BINFO_FIELDS_MARKED): Remove.
(SET_BINFO_FIELDS_MARKED): Likewise.
(CLEAR_BINFO_FIELDS_MARKED): Likewise.
(enum access_kind): New enumeration.
(num_extra_vtbl_entries): Remove declaration.
(size_extra_vtbl_entries): Likewise.
(get_vtbl_decl_for_binfo): New function.
(dfs_vbase_unmark): Remove declaration.
(mark_primary_bases): Likewise.
* class.c (SAME_FN): Remove.
(struct vcall_offset_data_s): Move definition.
(build_vbase_pointer): Use `build', not `build_binary_op', to
access the vbase pointer under the new ABI.
(build_vtable_entry_ref): Use get_vtbl_decl_for_binfo.
(build_primary_vtable): Likewise.
(dfs_mark_primary_bases): Move here from search.c.
(mark_primary_bases): Likewise.
(determine_primary_bases): Under the new ABI, don't make a base
class a primary base just because we don't yet have any virtual
functions.
(layout_vtable_decl): Use get_vtbl_decl_for_binfo.
(num_vfun_entries): Remove.
(dfs_count_virtuals): Likewise.
(num_extra_vtbl_entries): Likewise.
(size_extra_vtbl_entries): Likewise.
(layout_virtual_bases): Iterate in inheritance graph order under
the new ABI.
(finish_struct_1): Use TYPE_VFIELD, not CLASSTYPE_VSIZE, to
indicate that a vfield is present.
(init_class_processing): Initialize access_public_node, etc., from
ak_public, etc.
(get_vtbl_decl_for_binfo): New function.
(dump_class_hierarchy_r): Likewise.
(dump_class_hierarchy): Use it.
(finish_vtbls): Build the vtbls in inheritance graph order.
(dfs_finish_vtbls): Adjust call to build_vtbl_initializer.
(initialize_vtable): Use get_vtbl_decl_for_binfo.
(accumulate_vtbl_inits): Add comments explaining why a pre-order
walk is required.
(dfs_accumulate_vtbl_inits): Set BINFO_VTABLE to the location
where the vptr points, even for primary vtables.
(build_vtbl_initializer): Adjust handling of vbase and vcall
offsets.
(build_vcall_and_vbase_vtable_entries): New function.
(dfs_build_vbase_offset_vtbl_entries): Remove.
(build_vbase_offset_vtbl_entries): Reimplement.
(dfs_build_vcall_offset_vtbl_entries): Don't include virtuals that
were already handled in a primary base class vtable.
(build_vcall_offset_vtbl_entries): Adjust.
(build_rtti_vtbl_entries): Adjust.
* decl2.c (output_vtable_inherit): Use get_vtbl_decl_for_binfo.
* init.c (expand_virtual_init): Simplify.
* repo.c (repo_get_id): Use get_vtbl_decl_for_binfo.
* rtti.c (create_pseudo_type_info): Adjust calculation of vptr.
* search.c (BINFO_ACCESS): New macro.
(SET_BINFO_ACCESS): Likewise.
(dfs_access_in_type): Manipulate access_kinds, not access nodes.
(access_in_type): Likewise.
(dfs_accessible_p): Likewise.
(protected_accessible_p): Likewise.
(lookup_fnfields_1): Adjust documentation.
(dfs_mark_primary_bases): Move to class.c
(mark_primary_bases): Likewise.
(dfs_vbase_unmark): Remove.
(virtual_context): Use BINFO_FOR_VBASE.
(dfs_get_vbase_types): Simplify.
(dfs_build_inheritance_graph_order): New function.
(get_vbase_types): Use it.
* tree.c (debug_binfo): Use get_vtbl_decl_for_binfo.
* tinfo.cc (get_vbase_offset): New function.
(__vmi_class_type_info::do_find_public_src): Use it.
(__vmi_class_type_info::do_dyncast): Likewise.
(__vmi_class_type_info::do_upcast): Likewise.
From-SVN: r32905
Jan Hubicka [Tue, 4 Apr 2000 17:19:30 +0000 (17:19 +0000)]
calls.c (ECF_MALLOC, [...]): New constants.
* calls.c (ECF_MALLOC, ECF_MAY_BE_ALLOCA, ECF_RETURNS_TWICE,
ECF_LONGJMP, ECF_FORK_OR_EXEC): New constants.
(ECF_IS_CONST): Rename to ECF_CONST.
(special_function_p): Make static, change interface.
(flags_from_decl_or_type, try_to_integrate): Break out from ...
(expand_call) ... here; convert number of variables to flags.
(emit_library_call_vlue_1): Likewise.
(setjmp_call_p): New function.
(initialize_argument_information): Accepts flags as argument;
return flags.
(precompute_arguments): Likewise.
* tree.h (special_function_p): Remove.
(setjmp_call_p): Add prototype.
From-SVN: r32904
Kaveh R. Ghazi [Tue, 4 Apr 2000 15:13:11 +0000 (15:13 +0000)]
* gcc.dg/cast-qual-1.c: Check casts through a pointer typedef.
From-SVN: r32903
Hans-Peter Nilsson [Tue, 4 Apr 2000 12:45:36 +0000 (12:45 +0000)]
* execute/
20000403-1.c: New test.
From-SVN: r32902
Jakub Jelinek [Tue, 4 Apr 2000 10:13:26 +0000 (12:13 +0200)]
sparc.md (movdi_insn_sp64_novis): New pattern.
* config/sparc/sparc.md (movdi_insn_sp64_novis): New pattern.
(movdi_insn_sp64_vis): Renamed from movdi_insn_sp64.
(movsf): Don't force any constant to memory if target is integer
hard register.
Move fp_zero_operand check below the const0_rtx check.
(movtf): Likewise. Also allow fp_zero_operand for stores into
memory.
(movdf): Likewise. Also allow fp_zero_operand for stores into
memory and into integer hard registers.
(clear_df, clear_dfp, movdf_const_intreg_sp32,
movdf_const_intreg_sp64): Remove.
(movdf_insn_sp32, movdf_no_e_insn_sp32): Redo constraints and
conditions.
(movdf_no_e_insn_v9_sp32): New pattern.
(movdf_insn_v9only): Remove.
(movdf_insn_v9only_novis, movdf_insn_v9only_vis): New patterns.
(movdf_insn_sp64): Remove.
(movdf_insn_sp64_novis, movdf_insn_sp64_vis): New patterns.
(movdf_no_e_insn_sp64): Allow storing 0.0 into memory.
(following splits): Rewrite conditions. Add two new splits
for storing 0.0 into memory and registers.
(clear_tf, clear_tf+1, clear_tfp, clear_tfp+1): Remove.
(movtf_insn_sp32): Redo constraints and conditions.
(movtf_insn_vis_sp32): New pattern.
(movtf_no_e_insn_sp32): Redo constraints and conditions.
(movtf_insn_hq_sp64): Likewise.
(movtf_insn_hq_vis_sp64): New pattern.
(movtf_insn_sp64): Redo constraints and conditions.
(movtf_insn_vis_sp64): New pattern.
(movtf_no_e_insn_sp64): Redo constraints and conditions.
(movtf_no_e_insn_sp64+1): New split for storing 0.0L into registers
or memory.
* config/sparc/sparc.c (sparc_override_options): Assume v9 if either
-mvis or -m64 to take down the number of various reload patterns.
From-SVN: r32901
Jakub Jelinek [Tue, 4 Apr 2000 10:09:09 +0000 (12:09 +0200)]
sparc.h (RTX_OK_FOR_OFFSET_P): Leave minor margin so that addresses are offsetable by up to 16 bytes.
* config/sparc/sparc.h (RTX_OK_FOR_OFFSET_P): Leave minor margin
so that addresses are offsetable by up to 16 bytes.
(GO_IF_LEGITIMATE_ADDRESS): Don't allow REG+REG addresses for
non-optimizing TARGET_ARCH32 in DF or DI modes because it is not
offsetable.
From-SVN: r32900
Jeff Law [Tue, 4 Apr 2000 07:45:07 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r32899
Jeffrey A Law [Tue, 4 Apr 2000 06:42:40 +0000 (06:42 +0000)]
pa-64.h: New file.
* pa/pa-64.h: New file.
* pa/pa64-regs.h: New file.
* pa/pa64-start.h: New file.
* pa/t-pa64: New file.
* pa/xm-pa64hpux.h: New file.
From-SVN: r32898
Kaveh R. Ghazi [Tue, 4 Apr 2000 02:24:50 +0000 (02:24 +0000)]
sparc.c (output_restore_regs): Prototype.
* sparc.c (output_restore_regs): Prototype.
(sparc_emit_float_lib_cmp): Constification.
* emit-rtl.c (const_int_htab_hash, const_int_htab_eq): Likewise.
* reload1.c (reload_cse_delete_noop_set, reload_cse_simplify):
Prototype.
* simplify-rtx.c (entry_and_rtx_equal_p): Constification.
(get_value_hash, hash_rtx): Likewise.
* ssa.c (compute_conservative_reg_partition): Prototype.
* tree.c (mark_hash_entry): Prototype.
From-SVN: r32896
Zack Weinberg [Tue, 4 Apr 2000 01:44:12 +0000 (01:44 +0000)]
Update regexps for modified error messages
From-SVN: r32895
Tom Tromey [Mon, 3 Apr 2000 23:36:49 +0000 (23:36 +0000)]
jvm.h (_Jv_GetArrayElementFromElementType): More commentary from Alex.
* include/jvm.h (_Jv_GetArrayElementFromElementType): More
commentary from Alex.
From-SVN: r32894
Zack Weinberg [Mon, 3 Apr 2000 23:25:07 +0000 (23:25 +0000)]
bb-reorder.c (verify_insn_chain): #ifdef out unless ENABLE_CHECKING.
* bb-reorder.c (verify_insn_chain): #ifdef out unless ENABLE_CHECKING.
* i386.h (FUNCTION_ARG_REGNO_P): Remove unnecessary test for N >= 0.
* i386.md (call_value, call_value_pop): Remove unused variable 'addr'.
From-SVN: r32893
Zack Weinberg [Mon, 3 Apr 2000 23:16:10 +0000 (23:16 +0000)]
Should have been committed with previous batch
From-SVN: r32892
Zack Weinberg [Mon, 3 Apr 2000 23:03:20 +0000 (23:03 +0000)]
gcc.c (C specs): Pass -f(no-)show-column to the preprocessor.
* gcc.c (C specs): Pass -f(no-)show-column to the
preprocessor.
* ch/lang-specs.h, cp/lang-specs.h, f/lang-specs.h,
objc/lang-specs.h: Likewise.
* gcc.dg/cpp-redef-2.c, gcc.dg/cpp-tradwarn1.c,
gcc.dg/cpp-unc.c: Add -fno-show-column to compiler options.
From-SVN: r32891
Neil Booth [Mon, 3 Apr 2000 22:33:12 +0000 (22:33 +0000)]
cppexp.c: wrap long lines.
* cppexp.c: wrap long lines. New macros CPP_ICE, SYNTAX_ERROR
and SYNTAX_ERROR2. Replace `' in messages with ''.
(op_to_str): Make re-entrant.
(_cpp_parse_expr): Implement new error macros. Use | rather
than || to logically or 2 boolean integers. Simply expression
checking we have a left operand iff needed.
From-SVN: r32890
Geoffrey Keating [Mon, 3 Apr 2000 21:29:03 +0000 (21:29 +0000)]
* execute/
20000402-1.c: New test.
From-SVN: r32889
Don Lindsay [Mon, 3 Apr 2000 21:11:27 +0000 (21:11 +0000)]
log entry
From-SVN: r32888
Don Lindsay [Mon, 3 Apr 2000 21:05:03 +0000 (21:05 +0000)]
More va-arg variations. OKed by Jeff Law.
From-SVN: r32887
Nick Clifton [Mon, 3 Apr 2000 19:30:12 +0000 (19:30 +0000)]
Add dependency of 'diagnostic.o' on 'diagnostic.c'
From-SVN: r32886