Commit Graph

25984 Commits

Author SHA1 Message Date
Richard Henderson
7554ad67e5 Makefile.in (flow.o): Depend on $(EXPR_H).
* Makefile.in (flow.o): Depend on $(EXPR_H).
        * flow.c (mark_regs_live_at_end): Use hard_function_value, i.e.
        duplicate the structure of diddle_return_value for keeping regs live.

From-SVN: r31620
2000-01-25 16:54:44 -08:00
Mark Mitchell
1a588ad752 cp-tree.h (vcall_offset_in_vtable_p): New macro.
* cp-tree.h (vcall_offset_in_vtable_p): New macro.
	* class.c (build_vbase_offset_vtbl_entries): Fix typo in commment.
	(struct vcall_offset_data_s): New type.
	(dfs_vcall_offset_queue_p): New function.
	(dfs_build_vcall_offset_vtbl_entries): Likewise.
	(build_vcall_offset_vtbl_entries): Likewise.
	(layout_vtable_decl): Likewise.
	(num_vfun_entries): Likewise.
	(num_extra_vtbl_entries): Add the entries for vcall offsets.
	(build_vtbl_initializer): Likewise.
	(dfs_finish_vtabls): Use layout_vtable_decl.
	(modify_one_vtables): Always duplicate vtables under the new ABI.
	(finish_struct_1): Use layout_vtable_decl.

From-SVN: r31619
2000-01-25 23:26:21 +00:00
Michael Hayes
0534b8047e loop.c (current_loop_info): Delete.
2000-01-26  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>

	* loop.c (current_loop_info): Delete.
	(consec_sets_invariant_p): Add loop argument, update callers.
	(get_condition_for_loop): Likewise.
	(count_nonfixed_reads, update_giv_derive): Likewise.
	(simplify_giv_expr, general_induction_var): Likewise.
	(consec_sets_giv, recombine_givs): Likewise.
	(move_movables): Delete loop_start and loop_end arguments,
	add loop argument, and update callers.
	(find_mem_givs, check_final_value): Likewise.
	(record_giv, maybe_eliminate_biv, maybe_eliminate_biv_1): Likewise.
	(loop_invariant_p): Rename from invariant_p, add loop argument, and
	update callers.
	(basic_induction_var): Add loop argument, delete loop_level argument,
	and update callers.
	* unroll.c (iteration_info): Delete loop_start and loop_end arguments,
	add loop argument, and update callers.
	(find_splittable_regs, find_splittable_givs): Likewise.
	(reg_dead_after_loop, loop_find_equiv_value): Likewise.
	(final_biv_value, final_giv_value, back_branch_in_range_p): Likewise.
	(biv_total_increment): Delete loop_start and loop_end arguments;
	update callers.
	(precondition_loop_p): Delete loop_start and loop_info arguments;
	update callers.
	* loop.h (get_condition_for_loop): Add loop argument.
	(biv_total_increment): Delete loop_start and loop_end arguments.
	(precondition_loop_p): Delete loop_start and loop_info arguments;
	add loop argument.
	(final_biv_value): Delete loop_start and loop_end arguments;
	add loop argument.
	(final_giv_value, back_branch_in_range_p): Likewise.

From-SVN: r31618
2000-01-25 22:49:56 +00:00
Gavin Romig-Koch
8e46653128 * config/mips/mips.h (LEGITIMATE_CONSTANT_P): Fix for mips16.
From-SVN: r31617
2000-01-25 22:18:59 +00:00
Gavin Romig-Koch
490cab7248 Makefile.in (c-gperf.h): Change the "See" pointer to point to the new "generated_files" doc.
2000-01-25  Gavin Romig-Koch  <gavin@cygnus.com>

	* Makefile.in (c-gperf.h) : Change the "See" pointer to
	point to the new "generated_files" doc.

From-SVN: r31616
2000-01-25 20:16:06 +00:00
Kaveh R. Ghazi
4dacf5bd44 decl.c (member_function_or_else): Change third arg from a format specifier to an `enum overload_flags'.
* decl.c (member_function_or_else): Change third arg from a format
	specifier to an `enum overload_flags'.  Callers changed.

From-SVN: r31615
2000-01-25 18:40:05 +00:00
Kaveh R. Ghazi
2884c41e1c parse.h (OBSOLETE_MODIFIER_WARNING): Don't use ANSI string concatenation.
* parse.h (OBSOLETE_MODIFIER_WARNING): Don't use ANSI string
	concatenation.
	(OBSOLETE_MODIFIER_WARNING2): New macro allowing two args.

	* parse.y (register_fields): Don't pass a format specifier to
	OBSOLETE_MODIFIER_WARNING.
	(check_abstract_method_header): Use OBSOLETE_MODIFIER_WARNING2
	instead of OBSOLETE_MODIFIER_WARNING, and don't pass a format
	specifier.
	(check_modifiers): Change function into a macro.
	(check_class_interface_creation): Pass a literal format string.

From-SVN: r31614
2000-01-25 18:29:02 +00:00
Clinton Popetz
8c135f8458 * config/fp-bit.c (_unord_f2): Fix typo.
From-SVN: r31613
2000-01-25 12:25:26 -05:00
Jason Merrill
f7cf9dd67d new
From-SVN: r31612
2000-01-25 12:15:58 -05:00
Zack Weinberg
4dd7201eac c-common.c, [...]: Remove all references to obstack functions obsoleted by GC...
* c-common.c, c-decl.c, c-lang.c, c-lex.c, c-parse.in, c-pragma.c,
	c-typeck.c, objc/objc-act.c: Remove all references to obstack
	functions obsoleted by GC, such as push_obstacks_nochange,
	end_temporary_allocation, savealloc, saveable_tree_cons, etc.
	and code which existed only to decide whether or not to call
	them.  Remove now-unused NESTED argument from start_function;
	all callers changed.  Do not change behavior based on ggc_p.
	The use of the ixp_obstack in c-iterate.c and the util_obstack
	in objc/objc-act.c remain; these are not obsoleted by garbage
	collection.
	* c-tree.h: Update prototype for start_function.

	* c-parse.y, c-parse.c, objc/objc-parse.c, objc/objc-parse.y: Rebuild.

From-SVN: r31611
2000-01-25 17:13:14 +00:00
Clinton Popetz
b5031ab715 mips.md (zero_extendsidi2_internal): Disable for mips16.
* config/mips/mips.md (zero_extendsidi2_internal): Disable for
	mips16.

From-SVN: r31610
2000-01-25 10:51:20 -05:00
Richard Henderson
e267e17731 sparc-protos.h (select_cc_mode): Declare.
* sparc-protos.h (select_cc_mode): Declare.
        * sparc.c (select_cc_mode): New.  Handle unordered compares.
        (output_cbranch): Always reverse via code change.  Handle
        unordered compares.  Factor tests and string updates.
        * sparc.h (SELECT_CC_MODE): Split out to select_cc_mode.
        (REVERSIBLE_CC_MODE): Also exclude CCFPmode.
        * sparc.md (bunordered, bordered): New.
        (bungt, bunlt, buneq, bunge, bunle): New.

From-SVN: r31609
2000-01-25 04:42:25 -08:00
Gabriel Dos Reis
ddcc7cf6c8 typeck.c (composite_pointer_type, [...]): Avoid ANSI string concatenation usage.
2000-01-25  Gabriel Dos Reis  <gdr@codesourcery.com>

        * typeck.c (composite_pointer_type, c_sizeof, expr_sizeof,
        build_binary_op_nodefault, build_unary_op, build_reinterpret_cast,
        build_const_cast, get_delta_difference, check_return_expr): Avoid
        ANSI string concatenation usage.

From-SVN: r31608
2000-01-25 10:56:54 +00:00
Richard Henderson
ef8288f7de dwarf2out.c (dwarf2out_init): Use ggc_add_rtx_varray_root.
* dwarf2out.c (dwarf2out_init): Use ggc_add_rtx_varray_root.
        * ggc-common.c (ggc_add_rtx_varray_root): New.
        (ggc_mark_rtx_varray): New.
        (ggc_mark_rtx_varray_ptr): New.  Shift all ggc_mark_foo_ptr
        functions down below ggc_mark_foo.
        * ggc.h (ggc_add_rtx_varray_root, ggc_mark_rtx_varray): Declare.

From-SVN: r31607
2000-01-25 02:47:46 -08:00
Richard Henderson
41bd3d4130 alpha.c (secondary_reload_class): Don't allocate a secondary for integral mode memories into FLOAT_REGS.
* alpha.c (secondary_reload_class): Don't allocate a secondary
        for integral mode memories into FLOAT_REGS.  Rearrange the more
        complicated memory expression inward.

From-SVN: r31606
2000-01-25 02:38:41 -08:00
Jeff Law
38544f542a Daily bump.
From-SVN: r31605
2000-01-25 01:45:06 -07:00
Zack Weinberg
3be1fb7253 inclhack.def: Fixes to play nicer with FreeBSD, and corrections to comments.
2000-01-25  Zack Weinberg  <zack@wolery.cumb.org>

	* inclhack.def: Fixes to play nicer with FreeBSD, and
	corrections to comments.
	(cxx_unready): Add select expression.
	(irix_sockaddr): Add bypass expression.
	(machine_ansi_h_va_list): New fix.
	(stdio_va_list): No need to edit _BSD_VA_LIST_.
	Split out addition of "#include <stdarg.h>" to...
	(stdio_stdarg_h): ... here.
	(systypes_for_aix): Rename to systypes_stdlib_size_t.  Apply
	to stdlib.h also.  Do not munge _BSD_SIZE_T_.
	(sysz_stdlib_for_sun): Delete duplicate fix for unprotected
	size_t.
	(ultrix_ifdef): Tighten up select expression.

	* fixincl.tpl: Exorcise 'exesel'.  Rewrite calculations of
	re_ct and max_mach to avoid use of shell.  Make printed names
	match names in inclhack.def.  Use static copyright date.
	Don't count c_test and test expressions as requiring regex_t
	slots.  Add some commentary.
	* inclhack.tpl: Do not include the 'This script contains N
	fixup scripts' line if PROGRAM is defined.  Use static
	copyright date.

From-SVN: r31604
2000-01-25 08:06:23 +00:00
Mark Mitchell
534170eb29 class.c (layout_class_type): Put the fields required to make a class non-empty at the end...
* class.c (layout_class_type): Put the fields required to make a
	class non-empty at the end, not the beginning, of the TYPE_FIELDs
	list.

From-SVN: r31603
2000-01-25 06:33:06 +00:00
Jason Merrill
1865dbb5e2 dwarf2out.c: include "varray.h", not dyn-string.h.
* dwarf2out.c: include "varray.h", not dyn-string.h.
        (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_NAME_TO_STRING): Lose.
        (addr_const_to_string, addr_to_string): Lose.
        (ASM_OUTPUT_DWARF_ADDR_CONST): Copy from dwarfout.c.
        (struct dw_val_struct): val_addr is now an rtx.
        (add_AT_addr, AT_addr, free_AT, output_aranges): Adjust.
        (used_rtx_varray): New varray.
        (dwarf2out_init): Initialize it.
        (save_rtx): New fn.
        (mem_loc_descriptor, add_const_value_attribute): Call it instead of
        addr_to_string.
        * arm/telf.h, arm/unknown-elf.h, mn10200.h, mn10300.h,
        sparc/sp64-elf.h: Remove definition of ASM_OUTPUT_DWARF2_ADDR_CONST.
        * Makefile.in (dwarf2out.o): Update dependencies.

        * i386.c (i386_dwarf_output_addr_const): New.
        * i386.h (ASM_OUTPUT_DWARF_ADDR_CONST): New.

        * dwarf2out.c (mem_loc_descriptor): Call ASM_SIMPLIFY_DWARF_ADDR
        if defined.
        * dwarfout.c (output_mem_loc_descriptor): Likewise.
        * i386.c (i386_simplify_dwarf_addr): New.
        * i386.h (ASM_SIMPLIFY_DWARF_ADDR): New.

From-SVN: r31602
2000-01-25 00:59:18 -05:00
Jason Merrill
7610f2ce1b pt.c (maybe_fold_nontype_arg): Do nothing if we're not in a template.
* pt.c (maybe_fold_nontype_arg): Do nothing if we're not in a
        template.

        * decl2.c (mark_used): Do instantiate inlines that have been
        explicitly instantiated.

From-SVN: r31601
2000-01-25 00:53:12 -05:00
Jason Merrill
6d4e202ef0 typo
From-SVN: r31600
2000-01-24 21:53:54 -05:00
Jim Wilson
65e1263a0d Fix mips EABI/dwarf2 segfault while compiling newlib.
* dwarf2out.c (gen_struct_or_union_type_die): Set complete if
	TYPE_STUB_DECL is NULL.

From-SVN: r31599
2000-01-24 16:58:58 -08:00
Richard Henderson
5eda3d66aa builtins.c (expand_tree_builtin): Move ...
* builtins.c (expand_tree_builtin): Move ...
        * c-common.c (expand_tree_builtin): ... here.

From-SVN: r31598
2000-01-24 16:45:14 -08:00
Michael Hayes
52b3806475 loop.h (LOOP_INFO): New accessor macro.
2000-01-25  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>

	* loop.h (LOOP_INFO): New accessor macro.
	* basic-block.h (struct loop): Rename field `info' to `aux'.
	* loop.c (scan_loop): Replace loop->info with LOOP_INFO (loop).
	(prescan_loop, strength_reduce, check_dbra_loop, insert_bct): Likewise.
	* unroll.c (loop_iterations, unroll_loop): Likewise.

From-SVN: r31596
2000-01-25 00:38:09 +00:00
Christopher Faylor
a1e3399aef Include new cygwin include directories
From-SVN: r31595
2000-01-24 22:46:11 +00:00
Mark Mitchell
7a53e94bc8 Makefile.in (CXX_FOR_TARGET): Use g++, not xgcc, to invoke the C++ compiler.
* Makefile.in (CXX_FOR_TARGET): Use g++, not xgcc, to invoke
	the C++ compiler.

	* lib/g++.exp (g++init): Use g++, not xgcc, to invoke the C++
	compiler.
	(tool_option_proc): Fix typo.

From-SVN: r31593
2000-01-24 21:02:27 +00:00
Geoff Keating
360f2326ea ecos.exp (gcsec-1.c): Check the version of the ld on the host, not on the build machine.
* gcc.dg/special/ecos.exp (gcsec-1.c): Check the version
of the ld on the host, not on the build machine.
Also, don't crash if '--help' is not a supported option.

From-SVN: r31592
2000-01-24 20:56:33 +00:00
Richard Henderson
1eb8759b1b rtl.def: Add unordered fp comparisions.
* rtl.def: Add unordered fp comparisions.
        * tree.def: Likewise.
	* tree.h: Add ISO C 9x unordered fp comparision builtins.

	* builtins.c (expand_tree_builtin): New function.
	* c-typeck.c (build_function_call): Use it.
	(build_binary_op): Support unordered compares.
	* c-common.c (c_common_nodes_and_builtins): Add unordered compares.

	* combine.c (known_cond): Handle reverse_condition returning UNKNOWN.
	(reversible_comparison_p): Allow UNORDERED/ORDERED to be reversed.
	* cse.c (fold_rtx): Check FLOAT_MODE_P before reversing.
	(record_jump_equiv): Handle reverse_condition returning UNKNOWN.
	* jump.c (reverse_condition): Don't abort for UNLE etc, but
	return UNKNOWN.
	(swap_condition): Handle unordered compares.
	(thread_jumps): Check can_reverse before reversing.
	* loop.c (get_condition): Likewise.  Allow UNORERED/ORDERED to be
	reversed for FP.

	* optabs.c (can_compare_p): New argument CODE.  Verify branch or
	setcc is present before acking for cmp_optab.  Update all callers.
	(prepare_float_lib_cmp, init_optabs): Handle UNORDERED.
	* expmed.c (do_cmp_and_jump): Update for can_compare_p.
	* expr.c (expand_expr): Likewise.  Support unordered compares.
	(do_jump, do_store_flag): Likewise.
	* expr.h (enum libfunc_index): Add unordered compares.

	* Makefile.in (FPBIT_FUNCS): Add _unord_sf.
	(DPBIT_FUNCS): Add _unord_df.
	* config/fp-bit.c (_unord_f2): New.
	* fp-test.c (main): Try unordered compare builtins.

	* alpha-protos.h (alpha_fp_comparison_operator): Declare.
	* alpha.c (alpha_comparison_operator): Check mode properly.
	(alpha_swapped_comparison_operator): Likewise.
	(signed_comparison_operator): Likewise.
	(alpha_fp_comparison_operator): New.
	(alpha_emit_conditional_branch): Handle unordered compares.
	* alpha.h (PREDICATE_CODES): Update.
	* alpha.md (fp compares): Use alpha_fp_comparison_operator.
	(bunordered, bordered): New.

	* cp/call.c (build_over_call): Use expand_tree_builtin.
	* cp/typeck.c (build_function_call_real): Likewise.
	(build_binary_op_nodefault): Handle unordered compares.

	* gcc.c-torture/execute/ieee/fp-cmp-4.c: New.

From-SVN: r31591
2000-01-24 12:10:04 -08:00
Richard Henderson
d6cde8451a alpha.c (alpha_emit_xfloating_cvt): Thinko in operand manipulation.
* alpha.c (alpha_emit_xfloating_cvt): Thinko in operand manipulation.
        * alpha.md (movtf): New expander, insn, and splitter.

From-SVN: r31589
2000-01-24 11:51:09 -08:00
Jan Hubicka
eedf2f550c reg-stack.c (subst_stack_regs_pat): Handle correctly USEs of dead registers.
* reg-stack.c (subst_stack_regs_pat): Handle correctly USEs of
	dead registers.

From-SVN: r31588
2000-01-24 18:58:32 +00:00
Jan Hubicka
564d80f490 i386.h (FIRST_PSEUDO_REGISTER): Set to 21.
* i386.h (FIRST_PSEUDO_REGISTER): Set to 21.
	(FIXED_REGISTERS, CALL_USED_REGISTERS,
	 REG_ALLOC_ORDER): Add frame pointer
	(FRAME_POINTER_REGNUM): Set to 20
	(HARD_FRAME_POINTER_REGNUM): New macro.
	(ELIMINABLE_REGS): Eliminate ARG_POINTER and FRAME_POINTER
	to HARD_FRAME_POINTER.
	(REGNO_OK_FOR_BASE_P): Accept FRAME_POINTER_REGNUM
	(REG_OK_FOR_INDEX_NONSTRICT_P): Likewise.
	(REG_OK_FOR_BASE_NONSTRICT_P): Likewise.
	(HI_REGISTER_NAMES): Add "frame".
	(CAN_ELIMINATE): Handle FRAME_POINTER_REGNUM elimination.
	(debug_reg): Handle FRAME_POINTER_REGNUM.
	(reg_class): Add arg pointer and frame pointer to NON_Q_REGS,
	GENERAL_REGS and INDEX_REGS.
	* i386.c (SAVED_REGS_FIRST): new macro.
	(AT_BP): Use hard_frame_pointer_rtx instead of frame_pointer_rtx
	(ix86_decompose_address, memory_address_length): Likewise.
	(regclass_map): Add frame pointer.
	(call_insn_operand): Handle frame_pointer_rtx.
	(reg_no_sp_operand): Likewise.
	(ix86_decompose_address): Handle frame_pointer_rtx as stack_pointer_rtx.
	(print_operand, legitimize_pic_address): Fix formating.
	(ix86_compute_frame_size): Make static, update prototype, new
	parameters padding1, padding2, use ix86_nsaved_regs, use
	stack_alignment_needed.
	(ix86_initial_elimination_offset): Handle FRAME_POINTER_REGNUM
	to HARD_FRAME_POINTER_REGNUM conversions.
	(ix86_expand_prologue): Handle SAVED_REGS_FIRST prologues.
	(ix86_expand_epilogue): Handle SAVED_REGS_FIRST epilogues.
	(print_reg): Abort on FRAME_POINTER_REGNUM

From-SVN: r31587
2000-01-24 16:39:07 +00:00
Jan Hubicka
2247f6ed8d i386.h (PREDICATE_CODES): Add aligned_operand.
* i386.h (PREDICATE_CODES): Add aligned_operand.
	* i386.c (aligned_operand): New function.
	(ix86_aligned_p): Kill.
	* i386.md (movhi_1): Emit mov for aligned operands.
	(promoting peep2s): Use aligned_operand.

From-SVN: r31586
2000-01-24 15:54:35 +00:00
Nathan Sidwell
059fa5e776 cp-tree.h (CPTI_BAD_CAST, [...]): New cp_tree_index values.
* cp-tree.h (CPTI_BAD_CAST, CPTI_BAD_TYPEID, CPTI_DCAST): New
	cp_tree_index values.
	(throw_bad_cast_node, throw_bad_typeid_node, dynamic_cast_node):
	New global node #defines for them.
	* rtti.c (call_void_fn): Replace with ...
	(build_runtime_decl): ... new static function.
	(throw_bad_cast): Use throw_bad_cast_node and build_runtime_decl.
	(throw_bad_typeid): Use throw_bad_typeid_node and build_runtime_decl.
	(build_dynamic_cast_1): Always produce correctly typed result.
	Explicitly produce type_info addresses. Use dynamic_cast_node.
	* exception.cc (__throw_bad_cast): Return `void *'.
	(__throw_bad_typeid): Return `const type_info &'.

From-SVN: r31585
2000-01-24 12:16:59 +00:00
Gabriel Dos Reis
f1c9d505f9 stl_iterator.h: Make it possible to use standard class `iterator'.
2000-01-19  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>

        * stl_iterator.h: Make it possible to use standard class
        `iterator'.

From-SVN: r31584
2000-01-24 11:25:23 +00:00
Nathan Sidwell
1aa4ccd428 cp-tree.h (get_vtable_decl): Prototype new function.
* cp-tree.h (get_vtable_decl): Prototype new function.
	* class.c (get_vtable_decl): New function. Broken out from ...
	(build_vtable): ... here. Use it.
	* decl2.c (finish_vtable_vardecl): Ignore dummy vtables created
	by get_vtable_decl.

From-SVN: r31583
2000-01-24 10:59:02 +00:00
Nathan Sidwell
db1147b2e2 cp-tree.h (CPTI_TP_DESC_TYPE, [...]): Remove cp_tree_index enumerations.
* cp-tree.h (CPTI_TP_DESC_TYPE, CPTI_ACCESS_MODE_TYPE,
	CPTI_USER_DESC_TYPE, CPTI_CLASS_DESC_TYPE, CPTI_ATTR_DESC_TYPE,
	CPTI_PTMF_DESC_TYPE): Remove cp_tree_index enumerations.
	(CPTI_TI_DESC_TYPE, CPTI_REF_DESC_TYPE, CPTI_ARY_DESC_TYPE,
	CPTI_ENUM_DESC_TYPE, CPTI_CLASS_DESC_TYPE, CPTI_SI_CLASS_DESC_TYPE,
	CPTI_VMI_CLASS_DESC_TYPE, CPTI_BASE_DESC_TYPE): New enumerations.
	(CPTI_TINFO_FN_ID, CPTI_TINFO_FN_TYPE): Rename to ...
	(CPTI_TINFO_DECL_ID, CPTI_TINFO_DECL_TYPE): ... here.
	(CPTI_TINFO_VAR_ID): New enumeration.
	(__tp_desc_type_node, __access_mode_type_node,
	__bltn_desc_type_node, __user_desc_type_node,
	__class_desc_type_node, __ptr_desc_type_node,
	__attr_desc_type_node, __func_desc_type_node,
	__ptmf_desc_type_node, __ptmd_desc_type_node): Remove #defines.
	(ti_desc_type_node, bltn_desc_type_node, ptr_desc_type_node,
	ref_desc_type_node, ary_desc_type_node, func_desc_type_node,
	enum_desc_type_node, class_desc_type_node,
	si_class_desc_type_node, vmi_class_desc_type_node,
	ptmd_desc_type_node, base_desc_type_node): New #defines.
	(tinfo_fn_id, tinfo_fn_type): Rename to ...
	(tinfo_decl_id, tinfo_decl_type): ... here. Adjust.
	(tinfo_var_id): New enumeration.
	(DECL_TINFO_FN_P): Augment comment.
	* decl.c (cp_global_trees): Adjust documentation.
	* rtti.c (init_rtti_processing): Adjust for tinfo_decl_id,
	tinfo_decl_type and tinfo_var_id.
	(get_tinfo_decl_dynamic): Adjust for tinfo_decl_type.
	(build_typeid): Remove unused variable.
	(get_tinfo_var): Use tinfo_var_id.
	(tinfo_name): New static function.
	(get_tinfo_decl): Adjust for tinfo_decl_id and tinfo_decl_type.
	(tinfo_from_decl): Likewise.
	(get_base_offset): New static function, broken out of
	expand_class_desc.
	(expand_si_desc): Use tinfo_name.
	(expand_class_desc): Likewise. Lose local static variable.
	Use base_desc_type_node. Use get_base_offset.
	(expand_ptr_desc): Use tinfo_name.
	(expand_attr_desc): Likewise.
	(expand_generic_desc): Likewise.

	* tinfo.cc (__GXX_ABI_VERSION): Test value and existance.
	* tinfo.h (__GXX_ABI_VERSION): Test value and existance.

From-SVN: r31582
2000-01-24 10:23:26 +00:00
Jeff Law
e1a86dbb90 Daily bump.
From-SVN: r31581
2000-01-24 01:45:07 -07:00
Zack Weinberg
3a2e9dd24d fixfixes.c (fix_char_macro_uses): Correct regular expression to allow underscores in macro names.
* fixinc/fixfixes.c (fix_char_macro_uses): Correct regular
	expression to allow underscores in macro names.
	(fix_char_macro_defines): Increment scanning pointer.

From-SVN: r31580
2000-01-24 04:53:58 +00:00
Richard Henderson
5495cc558b osf.h (TARGET_HAS_XFLOATING_LIBS): Define.
* alpha/osf.h (TARGET_HAS_XFLOATING_LIBS): Define.
        * alpha/osf5.h: New file.
        * configure.in (alpha-*-osf5): Add it to tm_file.

        * emit-rtl.c (operand_subword): Support TFmode on a 64-bit target.

        * alpha-protos.h (alpha_emit_xfloating_arith): Declare.
        (alpha_emit_xfloating_cvt, function_arg): Declare.
        * alpha.c (alpha_emit_conditional_branch): Call
        alpha_emit_xfloating_compare for TFmode compares.
        (alpha_lookup_xfloating_lib_func): New.
        (alpha_compute_xfloating_mode_arg): New.
        (alpha_emit_xfloating_libcall): New.
        (alpha_emit_xfloating_arith): New.
        (alpha_emit_xfloating_compare): New.
        (alpha_emit_xfloating_cvt): New.
        (print_operand): Add default abort case.
        (function_arg): Mind FUNCTION_ARG_PASS_BY_REFERENCE.
        * alpha.h (TARGET_HAS_XFLOATING_LIBS): New.
        (BIGGEST_ALIGNMENT): Increase to 128 bits.
        (RETURN_IN_MEMORY): True for TF/TCmode.
        (ALPHA_ARG_SIZE): TF/TCmode is passed indirect.
        (FUNCTION_ARG): Move to function_arg.
        (FUNCTION_ARG_PASS_BY_REFERENCE): New.
        (ASM_OUTPUT_LONG_DOUBLE): New.
        (ASM_OUTPUT_DOUBLE): Always output bits.
        * alpha.md (addtf3, divtf3, multf3, subtf3, cmptf): New.
        (fix_trunctfdi2, floatditf2, floatunsditf2): New.
        (extenddftf2, trunctfdf2): New.

From-SVN: r31579
2000-01-23 20:02:40 -08:00
Alexandre Oliva
ac4904440b sol2-sld-64.h (TRANSFER_FROM_TRAMPOLINE): Moved...
* config/sparc/sol2-sld-64.h (TRANSFER_FROM_TRAMPOLINE): Moved...
* config/sparc/sol2.h: ... here.

From-SVN: r31578
2000-01-24 00:47:38 +00:00
Michael Hayes
d6181b1bdc basic-block.h (struct loops): New field `levels'.
2000-01-24  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>

	* basic-block.h (struct loops): New field `levels'.
	* flow.c (flow_loops_level_compute): Traverse all outer loops.
	(flow_loop_level_compute): Initialise level to 1.
	(flow_loops_find): Set loops->levels.
	(flow_loops_dump): Print loops->levels.

From-SVN: r31577
2000-01-23 23:10:09 +00:00
Richard Henderson
7e259f255f libgcc2.c (dwarf_reg_size_table): Size with DWARF_FRAME_REGISTERS.
* libgcc2.c (dwarf_reg_size_table): Size with DWARF_FRAME_REGISTERS.
        (throw_helper): Iterate over DWARF_FRAME_REGISTERS.

From-SVN: r31576
2000-01-23 14:33:30 -08:00
Richard Henderson
837748497c i386.c (dbx_register_map, [...]): New.
* i386.c (dbx_register_map, svr4_dbx_register_map): New.
        * i386.h (DBX_REGISTER_NUMBER): Use them.
        * i386/beos-elf.h, i386/freebsd-elf.h, i386/i386elf.h: Likewise.
        * i386/linux.h, i386/osfrose.h, i386/ptx4-i.h: Likewise.
        * i386/rtemself.h, i386/sco5.h, i386/sysv4.h: Likewise.
        * i386/sequent.h: Kill incorrect comment.

From-SVN: r31575
2000-01-23 13:43:06 -08:00
Mark Mitchell
d416576b49 (struct globals): Likewise.
From-SVN: r31574
2000-01-23 20:42:53 +00:00
Mark Mitchell
ba793d6e42 cp-tree.h (__eprintf): Remove declaration.
* cp-tree.h (__eprintf): Remove declaration.
	* tree.c (__eprintf): Remove definition.

	* cp-tree.h (CLASSTYPE_MARKED_N, SET_CLASSTYPE_MARKED_N,
	CLEAR_CLASSTYPE_MARKED_N): Avoid signed vs. unsigned warnings.

From-SVN: r31573
2000-01-23 19:51:01 +00:00
Mark Mitchell
ae373eda2f ggc-page.c (struct page_entry): Make context_depth' an unsigned short'.
* ggc-page.c (struct page_entry): Make `context_depth' an
	`unsigned short'.

From-SVN: r31572
2000-01-23 19:18:45 +00:00
Brad Lucier
92ac3c0f75 * class.c (dump_class_hierarchy): Print HOST_WIDE_INT properly.
From-SVN: r31571
2000-01-23 18:58:54 +00:00
Mark Mitchell
bf419747e9 cp-tree.h (register_dtor_fn): New function.
* cp-tree.h (register_dtor_fn): New function.
	* decl.c (destroy_local_static): Rename to ...
	(register_dtor_fn): ... this.  Give it external linkage.
	(expand_static_init): Use it.
	* decl2.c (do_static_initialization): Likewise, if using
	__cxa_atexit.
	(do_static_destruction): Check that __cxa_atexit is not in use.
	(finish_file): Don't call do_static_destruction if using
	__cxa_atexit.

	* typeck.c (convert_arguments): Restore two-message error
	reporting.

From-SVN: r31570
2000-01-23 18:40:20 +00:00
Clinton Popetz
5c75f60e28 loop.c (check_dbra_loop): When checking a loop for reversability...
* loop.c (check_dbra_loop): When checking a loop for
	reversability, check the source of any stores to ensure
	they don't depend on an initial value.

From-SVN: r31569
2000-01-23 11:07:00 -05:00
Robert Lipe
62bfd50d95 Improve comment on SUPPORTS_WEAK.
From-SVN: r31568
2000-01-23 13:46:16 +00:00