Commit Graph

27291 Commits

Author SHA1 Message Date
Zack Weinberg
8c389f849a cpphash.c (timestamp): Delete.
* cpphash.c (timestamp): Delete.
	(del_HASHNODE): If type is T_MCONST, free value.cpval.
	(special_symbol): Remove unnecessary braces.  Remove
	T_VERSION.  Treat T_STDC like T_CONST unless
	STDC_0_IN_SYSTEM_HEADERS.  Render both __DATE__ and __TIME__
	when one is encountered, then convert them into T_MCONST
	nodes.
	* cppinit.c (builtin_array): version_string is T_MCONST.
	__STDC__ has a "1" in its cpval.  Don't have a terminator
	entry.  Clean up which entries are dumped.
	(initialize_builtins): Only __STDC__ gets the special
	-traditional treatment.  Count the length of builtin_array.
	Render version_string here.
	* cpphash.h: Remove T_VERSION.  Add T_MCONST.
	* cpplib.h (struct cpp_reader): Remove timebuf.

From-SVN: r33047
2000-04-10 03:27:21 +00:00
Richard Henderson
3a3677ff46 genrecog.c (pred): Update comparison_operator for the unordered operators.
* genrecog.c (pred): Update comparison_operator for the unordered
        operators.

        * config/i386/i386.c (no_comparison_operator): Disallow unordered
        operators.
        (fcmov_comparison_operator): Allow UNORDERED/ORDERED.
        (uno_comparison_operator): New.
        (put_condition_code): Handle UNORDERED/ORDERED.
        (unsigned_comparison): Likewise.
        (ix86_fp_compare_mode): Broken out of ix86_expand_fp_compare.
        (ix86_use_fcomi_compare, ix86_prepare_fp_compare_args): Likewise.
        (ix86_expand_fp_compare): Use them.  Take scratch as argument,
        update all callers.  Handle all 8 unordered operators.
        (ix86_expand_setcc): Lose the unordered argument, update all callers.
        (ix86_expand_branch): Likewise.  Don't fully expand fp branches.
        * config/i386/i386.h (PREDICATE_CODES): Update.
        * config/i386/i386-protos.h (ix86_expand_fp_compare): Declare.
        (ix86_expand_branch, ix86_expand_setcc): Update.
        * config/i386/i386.md (sunordered, sordered): New.
        (suneq, sunge, sungt, sunle, sunlt, sltgt): New.
        (bunordered, bordered): New.
        (buneq, bunge, bungt, bunle, bunlt, bltgt): New.
        (*fp_jcc_1, *fp_jcc_2, *fp_jcc_3, *fp_jcc_4): New.
        (*fp_jcc_5, *fp_jcc_6, and splitters): New.

From-SVN: r33046
2000-04-09 13:26:42 -07:00
Philip Blundell
00fdafefd6 Strip '*' prefix from label names.
From-SVN: r33045
2000-04-09 20:13:21 +00:00
John Wehle
46d21d2c82 i386.md (fix_truncsfhi2, [...]): New patterns.
* i386.md (fix_truncsfhi2, fix_truncdfhi2,
	fix_truncxfhi2): New patterns.
	* i386.c (output_fix_trunc): Handle converting to HImode.

From-SVN: r33044
2000-04-09 19:26:31 +00:00
Nathan Sidwell
e33c685bd6 * g++.old-deja/g++.abi/cxa_vec.C: New test.
From-SVN: r33043
2000-04-09 16:05:49 +00:00
Nathan Sidwell
b8c1233b5e vec.cc: Include <new> and <exception>.
* vec.cc: Include <new> and <exception>.
	(__cxa_vec_ctor): Use __cxa_vec_dtor for cleanup.
	(__cxa_vec_dtor): Catch dtor exceptions, and rethrow or
	terminate.
	(__cxa_vec_delete): Catch dtor exceptions.

From-SVN: r33042
2000-04-09 16:05:16 +00:00
Nathan Sidwell
7e2d247261 Prepend __ to implementation defined names.
* inc/typeinfo (type_info): Rename _name to __name.
	(type_info::type_info): Rename parameter.
	(type_info::operator==, type_info::operator!=,
	type_info::before): Likewise.
	(type_info::is_pointer_p, type_info::is_function_p,
	type_info::do_catch, type_info::do_upcast): Prepend __. Rename
	parameters.
	* inc/cxxabi.h
	(__fundamental_type_info::__fundamental_type_info) Rename parameters.
	(__pointer_type_info::__pointer_type_info): Likewise.
	(__pointer_type_info::is_pointer_p,
	__pointer_type_info::do_catch): Prepend __. Rename parameters.
	(__array_type_info::__array_type_info): Rename parameters.
	(__function_type_info::__function_type_info): Likewise.
	(__function_type_info::is_function_p): Prepend __.
	(__enum_type_info::__enum_type_info): Rename parameters.
	(__pointer_to_member_type_info::__pointer_to_member_type_info):
	Likewise.
	(__pointer_to_member_type_info::do_catch): Prepend __. Rename
	parameters.
	(__base_class_info::is_virtual_p, is_public_p, offset): Prepend	__.
	(__class_type_info::__class_type_info): Rename parameters.
	(__class_type_info::sub_kind): Prepend __. Adjust member names.
	(__class_type_info::upcast_result,
	__class_type_info::dyncast_result): Prepend __. Move definition
	into tinfo.cc.
	(__class_type_info::do_upcast, __class_type_info::do_catch,
	__class_type_info::find_public_src,
	__class_type_info::do_dyncast,
	__class_type_info::do_find_public_src): Prepend __. Rename
	parameters.
	(__si_class_type_info::__si_class_type_info): Rename parameters.
	(__si_class_type_info::do_upcast, __si_class_type_info::do_dyncast,
	__si_class_type_info::do_find_public_src): Prepent __. Rename
	parameters.
	(__vmi_class_type_info::__vmi_class_type_info): Rename parameters.
	(__vmi_class_type_info::do_upcast, __vmi_class_type_info::do_dyncast,
	__vmi_class_type_info::do_find_public_src): Prepent __. Rename
	parameters.
	(__dynamic_cast): Rename parameters.
	* tinfo.cc (type_info::is_pointer_p, type_info::is_function_p,
	type_info::do_catch, type_info::do_upcast): Prepend __.
	(contained_p, public_p, virtual_p, contained_public_p,
	contained_nonpublic_p, contained_nonvirtual_p): Adjust.
	(__class_type_info::do_catch,
	__class_type_info::do_upcast): Prepend __. Adjust.
	(__class_type_info::__upcast_result,
	__class_type_info::__dyncast_result): Move from inc/cxxabi.h.
	Adjust.
	(__class_type_info::find_public_src): Prepend __. Adjust.
	(__class_type_info::do_find_public_src,
	__si_class_type_info::do_find_public_src,
	__vmi_class_type_info::do_find_public_src): Likewise.
	(__class_type_info::do_dyncast,
	__si_class_type_info::do_dyncast,
	__vmi_class_type_info::do_dyncast): Likewise.
	(__class_type_info::do_upcast,
	__si_class_type_info::do_upcast,
	__vmi_class_type_info::do_upcast): Likewise.
	(__dynamic_cast): Adjust.
	* tinfo2.cc (__pointer_type_info::is_pointer_p): Prepend __.
	(__function_type_info::is_function_p): Likewise.
	(__pointer_type_info::do_catch): Likewise. Adjust.
	(__pointer_to_member_type_info::do_catch): Likewise. Adjust.
	(__throw_type_match_rtti_2): Adjust.
	(__is_pointer): Adjust.

From-SVN: r33041
2000-04-09 15:59:16 +00:00
Jeff Law
c42f056abe Daily bump.
From-SVN: r33040
2000-04-09 01:45:07 -06:00
Anthony Green
e472b4f96b posix-threads.h (_Jv_MutexUnlock): Replace _JV_NOT_OWNER.
2000-04-08  Anthony Green  <green@cygnus.com>

	* include/posix-threads.h (_Jv_MutexUnlock): Replace
	_JV_NOT_OWNER.

From-SVN: r33039
2000-04-09 06:53:00 +00:00
Mark Mitchell
9eb71d8c3b cp-tree.h (cp_tree_index): Add CPTI_COMPLETE_CTOR_IDENTIFIER.
* cp-tree.h (cp_tree_index): Add CPTI_COMPLETE_CTOR_IDENTIFIER.
	(complete_ctor_identifier): New macro.
	(special_function_kind): Add sfk_copy_constructor and
	sfk_assignment_operator.
	(LOOKUP_HAS_IN_CHARGE): Remove.
	(cons_up_default_function): Rename to ...
	(implicitly_declare_fn): ... this.
	* call.c (build_new_method_call): Add in-charge parameters for
	constructors here.
	* class.c (add_implicitly_declared_members): Change parameter name
	from cant_have_assignment to cant_have_const_assignment.
	Replace calls to cons_up_default_function to implicitly_declare_fn.
	* cvt.c (ocp_convert): Use complete_ctor_identifier.
	* decl.c (initialize_predefined_identifiers): Initialize it.
	(start_function): Use DECL_CONSTRUCTOR_FOR_VBASE_P instead of
	complex expression.
	* init.c (expand_default_init): Don't calculate the in-charge
	parameter here.
	(build_new_1): Likewise.
	* lex.c (cons_up_default_function): Move to method.c.
	* method.c (synthesize_method): Use DECL_DESTRUCTOR_P.
	(implicitly_declare_fn): New function.
	* typeck.c (build_static_cast): Use complete_ctor_identifier.
	(build_modify_expr): Likewise.
	* typeck2.c (build_functional_cast): Likewise.

From-SVN: r33038
2000-04-09 06:44:20 +00:00
Anthony Green
568fe067bc posix-threads.cc (_Jv_MutexLock): Moved back to posix-threads.h.
2000-04-08  Anthony Green  <green@cygnus.com>

	* posix-threads.cc (_Jv_MutexLock): Moved back to posix-threads.h.
	(_Jv_MutexUnlock): Ditto.
	* include/posix-threads.h (_Jv_MutexLock): From posix-threads.cc.
	(_Jv_MutexUnlock): Ditto.

From-SVN: r33037
2000-04-09 05:41:56 +00:00
Anthony Green
bdf2ced905 StringBuffer.java (ensureCapacity): Don't call Math::max.
2000-04-08  Anthony Green  <green@cygnus.com>

	* java/lang/StringBuffer.java (ensureCapacity): Don't call Math::max.
	(ensureCapacity_unsynchronized): New private method.
	(append): Use ensureCapacity_unsynchronized.

From-SVN: r33036
2000-04-09 04:52:43 +00:00
Mark Mitchell
3dbc07b651 Under the new ABI, constructors don't return `this'.
* cp-tree.h (warn_reorder): Declare.
	(special_function_kind): New enum.
	(global_base_init_list): Remove declaration.
	(emit_base_init): Don't return a value.
	(check_base_init): Don't declare.
	(is_aggr_typedef): Likewise.
	* decl.c (check_special_function_return_type): New function.
	(return_types): Remove.
	(grokdeclarator): Use check_special_function_return_type.
	(start_function): Don't initialize ctor_label under the new ABI.
	(finish_construtor_body): Don't create a corresponding LABEL_STMT.
	* init.c (begin_init_stmts): Move to top of file.
	(finish_init_stmts): Likewise.
	(warn_reorder): Don't declare.
	(emit_base_init): Don't create a STMT_EXPR here.  Don't return a
	value.
	(check_base_init): Remove.
	(is_aggr_typedef): Likewise.
	(build_new_1): Don't use the return value of a constructor.
	* semantics.c (setup_vtbl_ptr): Don't use the return value
	of emit_base_init.
	* typeck.c (check_return_expr): Don't magically convert return
	statements into `return this' in constructors under the new ABI.

From-SVN: r33035
2000-04-09 04:28:33 +00:00
Tom Tromey
4eaf5996ad Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/IllegalComponentStateException.java: New file.
	* java/awt/ItemSelectable.java: New file.
	* java/awt/event/WindowEvent.java: Finished.
	* java/awt/event/TextEvent.java: Finished.
	* java/awt/event/ContainerEvent.java: New file.
	* java/awt/Component.java (getX, getY): New methods.
	* java/awt/event/PaintEvent.java: New file.
	* java/awt/event/MouseEvent.java: New file.
	* java/awt/ActiveEvent.java: New file.
	* java/awt/event/KeyEvent.java: Finished.
	* java/awt/event/ItemEvent.java: New file.
	* java/awt/Adjustable.java: New file.
	* java/awt/event/InputMethodEvent.java: New file.
	* java/awt/event/InputEvent.java: Finished.
	* java/awt/event/FocusEvent.java: New file.
	* java/awt/event/MouseMotionAdapter.java: New file.
	* java/awt/event/MouseAdapter.java: New file.
	* java/awt/event/KeyAdapter.java: New file.
	* java/awt/event/FocusAdapter.java: New file.
	* java/awt/event/ContainerAdapter.java: New file.
	* java/awt/event/ComponentEvent.java: Finished.
	* java/awt/event/AdjustmentEvent.java: New file.
	* java/awt/event/ComponentAdapter.java: New file.
	* java/awt/event/ActionEvent.java: Finished.
	* java/awt/event/MouseMotionListener.java: New file.
	* java/awt/event/MouseListener.java: New file.
	* java/awt/event/ItemListener.java: New file.
	* java/awt/event/InputMethodListener.java: New file.
	* java/awt/event/ContainerListener.java: New file.
	* java/awt/event/FocusListener.java: New file.
	* java/awt/event/ComponentListener.java: New file.
	* java/awt/event/AWTEventListener.java: New file.
	* java/awt/event/AdjustmentListener.java: New file.

From-SVN: r33034
2000-04-09 04:13:27 +00:00
Anthony Green
3bd835f73f natObject.cc (_Jv_MonitorEnter): Only perform null check when we have to.
2000-04-08  Anthony Green  <green@redhat.com>

	* java/lang/natObject.cc (_Jv_MonitorEnter): Only perform null
	check when we have to.

	* gcj/array.h: Mark elements(JArray<T>& x) and elements(JArray<T>*
	x) as `inline'.

	* java/util/StringTokenizer.java: Minor optimization.  Eliminates
	one method call.

	* java/util/Vector.java (VectorEnumeration.nextElement): Manually
	inline hasMoreElements.

From-SVN: r33033
2000-04-09 01:26:20 +00:00
Alex Samuel
6308dae99a ssa.c (convert_to_ssa): Eliminate dead code when calling life_analysis.
* ssa.c (convert_to_ssa): Eliminate dead code when calling
	life_analysis.
	(convert_from_ssa): Call compute_bb_for_insn before life_analysis.
	(for_each_successor_phi): Change parameter to basic_block.
	(coalesce_regs_in_successor_phi_nodes): Likewise.
	(coalesce_regs_in_copies): Likewise.
	(compute_coalesced_reg_partition): Use basic_block instead of index.
	* rtl.h (convert_to_ssa): Delete.
	(convert_from_ssa): Likewise.
	(successor_phi_fn): Likewise.
	(for_each_successor_phi): Likewise.
	(in_ssa_form): Likewise.
	* basic-block.h (convert_to_ssa): Moved from rtl.h.
	(convert_from_ssa): Likewise.
	(successor_phi_fn): Likewise.
	(in_ssa_form): Likewise.
	(for_each_successor_phi): Likewise.  Change parameter to basic_block.
	* flow.c (calculate_global_regs_live): Pass a basic_block to
	for_each_successor_phi.

From-SVN: r33032
2000-04-09 01:16:44 +00:00
Mark Mitchell
d43829f9ee cp-tree.h (cp_tree_index): Add CPTI_BASE_CTOR_IDENTIFIER...
* cp-tree.h (cp_tree_index): Add CPTI_BASE_CTOR_IDENTIFIER,
	CPTI_BASE_DTOR_IDENTIFIER, and CPTI_DELETING_DTOR_IDENTIFIER.
	(base_ctor_identifier): New macro.
	(base_dtor_identifier): Likewise.
	(deleting_dtor_identifier): Likewise.
	* decl.c: Don't include obstack.h.
	(obstack_chunk_alloc): Don't define.
	(obstack_chunk_free): Likewise.
	(struct predefined_identifier): New type.
	(initialize_predefined_identifiers): New function.
	(init_decl_processing): Use it.
	(debug_temp_inits): Remove.
	(start_method): Don't call preserve_data.
	(hack_incomplete_structures): Update comment.
	* init.c (init_init_processing): Don't initialize
	nelts_identifier.
	(build_offset_rf): Remove dead code.
	(build_delete): Use CLASSTYPE_N_BASECLASSES.
	* search.c (init_search_processing): Don't initialize
	vptr_identifier.

From-SVN: r33031
2000-04-09 00:27:16 +00:00
Richard Henderson
729a708984 flow.c (mark_used_reg): Use reg_set_p to determine if a register was modified in the current insn.
* flow.c (mark_used_reg): Use reg_set_p to determine if a register
        was modified in the current insn.

From-SVN: r33030
2000-04-08 15:38:38 -07:00
Richard Earnshaw
83ffeecd1d thumb.md: Delete.
* arm/thumb.md: Delete.
* arm/thumb-protos.h: Delete.

From-SVN: r33029
2000-04-08 14:47:04 +00:00
Richard Earnshaw
d5b7b3ae33 Merge changes from merged-arm-thumb-backend-branch onto trunk.
From-SVN: r33028
2000-04-08 14:29:53 +00:00
Jeff Law
002e89d374 Daily bump.
From-SVN: r33023
2000-04-08 01:45:08 -06:00
Neil Booth
c6c5d57825 cpp-nullchar.c: Remove test as embedded nulls cause problems.
* cpp-nullchar.c:  Remove test as embedded nulls
	cause problems.

From-SVN: r33022
2000-04-08 05:09:33 +00:00
Kaveh R. Ghazi
b0340202d1 * basic-block.h (conflict_graph_enum_fn): K&R fix.
From-SVN: r33021
2000-04-08 05:06:29 +00:00
Neil Booth
ed343779f4 Correct merge conflict
From-SVN: r33020
2000-04-08 05:03:43 +00:00
Kaveh R. Ghazi
3facde269a tree.c (tree_expr_nonnegative_p): New function.
* tree.c (tree_expr_nonnegative_p): New function.

        * tree.h (tree_expr_nonnegative_p): Declare.

        * c-typeck.c (build_binary_op): Call `tree_expr_nonnegative_p' to
        elide some sign_compare warnings.
        (build_conditional_expr): Likewise.

cp:
        * typeck.c (build_binary_op): Call `tree_expr_nonnegative_p' to elide
        some sign_compare warnings.

From-SVN: r33019
2000-04-08 04:45:18 +00:00
John Wehle
155d8a473c i386.md (ashrsi3, [...]): Fix typo.
* i386.md (ashrsi3, ashrhi3, ashrqi3): Fix typo.

	* i386.md (floathisf2, floathidf2, floathixf2): New patterns.
	* i386.c (print_operand): Use the proper suffix for a 387 HImode
	operand.  Abort if a 387 operand has an unsupported size.

From-SVN: r33018
2000-04-08 04:33:28 +00:00
Kaveh R. Ghazi
4ddf4d7b81 * gcc.dg/compare2.c: New test.
From-SVN: r33016
2000-04-08 04:17:59 +00:00
Neil Booth
65232ce915 * gcc.dg/cpp-nullchar.c: New test.
From-SVN: r33015
2000-04-08 04:15:20 +00:00
Neil Booth
4db32ec692 * cpp-nullchar.c: New test.
From-SVN: r33014
2000-04-08 04:12:53 +00:00
Neil Booth
64aaf40718 cppexp.c (parse_charconst): Null does not end character constants.
* 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-08 04:00:02 +00:00
Richard Henderson
62828c0078 flow.c (loop_depth): Remove.
* 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-07 16:33:47 -07:00
Joern Rennecke
4f0207119f Fix filename for block_lump_real_i4 patch.
From-SVN: r33011
2000-04-08 00:25:05 +01:00
Joern Rennecke
ebdfc3b7d6 Fix comment.
From-SVN: r33010
2000-04-08 00:03:20 +01:00
Richard Henderson
03492bae59 Makefile.in (conflict.o): Depend on $(RTL_H) and $(BASIC_BLOCK_H) not the raw files.
* Makefile.in (conflict.o): Depend on $(RTL_H) and $(BASIC_BLOCK_H)
        not the raw files.

From-SVN: r33009
2000-04-07 14:37:56 -07:00
Zack Weinberg
f787c583ae cpplib.c (do_elif): Skip the rest of the line if we're not going to bother 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-07 21:09:51 +00:00
Jim Wilson
fbc18d1984 Fix nit.
* config/ia64/ia64.c: Delete stdio.h and ctype.h includes.

From-SVN: r33007
2000-04-07 11:51:44 -07:00
Jason Merrill
1c81f9fe75 * calls.c (expand_call): emit_queue if we're trying a sibcall.
From-SVN: r33006
2000-04-07 13:44:14 -04:00
Nathan Sidwell
e8ff28b4bd vmihint.C: Adjust __vmi_class_type_info member name.
* g++.old-deja/g++.abi/vmihint.C: Adjust __vmi_class_type_info
	member name.

From-SVN: r33005
2000-04-07 16:59:12 +00:00
Nathan Sidwell
7b820993a5 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
2000-04-07 16:57:48 +00:00
Jakub Jelinek
a9e6777fb2 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
2000-04-07 16:57:58 +02:00
Richard Henderson
000ca3735d 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
2000-04-07 02:53:18 -07:00
Richard Henderson
0c99ec5c42 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
2000-04-07 02:24:45 -07:00
Richard Henderson
4c85a96d6e 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
2000-04-07 02:24:06 -07:00
Richard Henderson
a18820c64c 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
2000-04-07 02:23:29 -07:00
Richard Henderson
dc108b7a75 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
2000-04-07 02:22:10 -07:00
Nathan Sidwell
1e143002cb 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
2000-04-07 09:07:24 +00:00
Alex Samuel
62771d5186 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
2000-04-07 08:16:31 +00:00
Jeff Law
4eda98a61f Daily bump.
From-SVN: r32991
2000-04-07 01:45:42 -06:00
Richard Henderson
4e9887c70b 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
2000-04-07 00:16:59 -07:00
Richard Henderson
391b788c04 * flow.c (compute_flow_dominators): Free worklist.
From-SVN: r32983
2000-04-06 23:15:22 -07:00