Commit Graph

18298 Commits

Author SHA1 Message Date
Benjamin Kosnik
6091762575 pt.c (decl_template_parm_p): Add checks for TEMPLATE_TEMPLATE_PARM.
�
1998-08-28  Benjamin Kosnik  <bkoz@loony.cygnus.com>
        * pt.c (decl_template_parm_p): Add checks for
        TEMPLATE_TEMPLATE_PARM.

From-SVN: r22071
1998-08-29 01:15:22 +00:00
Jeff Law
d84f48212d Daily bump.
From-SVN: r22069
1998-08-28 18:45:02 -06:00
David S. Miller
ddf8087493 sparc.c (arith_operand, [...]): Mark mode as unused.
* config/sparc/sparc.c (arith_operand, const64_operand,
	const64_high_operand, arith_double_4096_operand): Mark mode as
	unused.
	(create_simple_focus_bits): Remove unused arg highest_bit_set, all
	callers changed.
	(sparc_emit_set_const64): Remove unused variable i.
	(sparc_splitdi_legitimate): Likewise for addr_part.
	(ultra_code_from_mask): Likewise for mask.
	(ultra_cmove_results_ready_p): Fixup entry modulo calc.
	(ultra_flush_pipeline): Likewise.
	(ultra_fpmode_conflict_exists): Likewise, remove unused variable
	this_type, and allow loads and stores of differing FP modes as
	they do not create a conflict.
	(ultra_find_type): Initialize fpmode to SFmode, fix
	parenthesization thinkos in large conditional.
	(ultrasparc_sched_init): Mark dump and sched_verbose as unused.
	Init free_slot_mask after ultra_cur_hist is reset, not before.
	(ultrasparc_rescan_pipeline_state): Remove unused variable ucode.
	(ultrasparc_sched_reorder): Don't bzero current pipeline state,
	use ultra_flush_pipeline instead, then re-init group pointer.
	Fix statement with no effect.  If no progress made in, and no
	instructions scheduled at all, advance to new pipeline cycle else
	we get into an endless loop.
	(ultrasparc_adjust_cost): Remove previous arg.
	* config/sparc/sparc.h (ADJUST_COST): Update to reflect that.

From-SVN: r22068
1998-08-28 13:13:45 -07:00
Mark Mitchell
0078ab63c4 New test
From-SVN: r22067
1998-08-28 18:11:36 +00:00
Mark Mitchell
c296fce54e Tweak
From-SVN: r22066
1998-08-28 18:06:38 +00:00
Mark Mitchell
21d886ac9b New test
From-SVN: r22065
1998-08-28 18:00:56 +00:00
Mark Mitchell
479781c513 * lex.c (do_identifier): Fix thinko in previous change.
From-SVN: r22064
1998-08-28 17:36:09 +00:00
Mark Mitchell
818c888375 cp-tree.h (build_enumerator): Take the enumeration type as a paramter.
* cp-tree.h (build_enumerator): Take the enumeration type as a
	paramter.
	* decl.c (finish_enum): Don't set the TREE_TYPE for the
	enumeration constant values if we're processing_template_decls.
	Don't set the type for the CONST_DECLs either; that's done in
	build_enumerator. (
	(build_enumerator): Take the enumeration type as a
	paramter.
	* lex.c (do_identifier): Don't resolve enumeration constants while
	processing template declarations, even if they happen to be
	TEMPLATE_PARM_INDEXs.
	* parse.y (current_enum_type): New variable.
	(primary): Don't allow statement-expression in local classes just
	as we don't in global classes.
	(structsp): Use current_enum_type.
	(enum_list): Likewise.
	* pt.c (tsubst_enum): Don't check for NOP_EXPRs introduced by
	finish_enum; they no longer occur.

From-SVN: r22063
1998-08-28 17:02:44 +00:00
Mark Mitchell
541be14b8a New test
From-SVN: r22062
1998-08-28 16:48:44 +00:00
Jason Merrill
a1dd0d36f4 Add support for discarding unused virtual functions.
* search.c (dfs_search, binfo_for_vtable, dfs_bfv_helper): New fns.
	* decl2.c (output_vtable_inherit): Call binfo_for_vtable.
	* lang-options.h: Add -fvtable-gc.
	* cp-tree.h: Add flag_vtable_gc.
	* decl2.c (output_vtable_inherit): New fn.
	(finish_vtable_vardecl): Call it.
	* class.c (build_vtable_entry_ref): New fn.
	(build_vtbl_ref): Call it.

From-SVN: r22061
1998-08-28 12:11:35 -04:00
Mark Mitchell
079e1098ab cp-tree.h (build_enumerator): Take the enumeration type as a paramter.
* cp-tree.h (build_enumerator): Take the enumeration type as a
	paramter.
	* decl.c (finish_enum): Don't set the TREE_TYPE for the
	enumeration constant values if we're processing_template_decls.
	Don't set the type for the CONST_DECLs either; that's done in
	build_enumerator. (
	(build_enumerator): Take the enumeration type as a
	paramter.
	* lex.c (do_identifier): Don't resolve enumeration constants while
	processing template declarations, even if they happen to be
	TEMPLATE_PARM_INDEXs.
	* parse.y (current_enum_type): New variable.
	(primary): Don't allow statement-expression in local classes just
	as we don't in global classes.
	(structsp): Use current_enum_type.
	(enum_list): Likewise.
	* pt.c (tsubst_enum): Don't check for NOP_EXPRs introduced by
	finish_enum; they no longer occur.

From-SVN: r22060
1998-08-28 15:43:58 +00:00
Brendan Kehoe
ec8b2a1364 fix XCRASH setup
From-SVN: r22059
1998-08-28 11:43:10 -04:00
Brendan Kehoe
5d0c47400b dd `_eb91_' in front of the typenames, to avoid linux hiccups
From-SVN: r22058
1998-08-28 11:40:44 -04:00
Jim Wilson
0642498960 sparc.md (DImode, [...]): Delete self_reference code.
* sparc.md (DImode, DFmode, TFmode splits): Delete self_reference
	code.  Use reg_overlap_mentioned_p to detect when source and
	destination overlap.
	(negtf2_notv9+1): Use DFmode instead of SFmode in last two operands.

From-SVN: r22057
1998-08-28 07:57:55 -07:00
Mark Mitchell
ea6021e832 cp-tree.h (finish_base_specifier): New function.
* cp-tree.h (finish_base_specifier): New function.
	* parse.y (base_class): Use it.
	* semantics.c (finish_base_specifier): Define it.
	* parse.y (structsp): Warn on use of typename outside of template
	declarations.

From-SVN: r22055
1998-08-28 12:06:56 +00:00
Brendan Kehoe
9231189b62 loop.c (check_dbra_loop): Pass COMPARISON_VALUE, not COMPARISON_VAL, into invariant_p.
* loop.c (check_dbra_loop): Pass COMPARISON_VALUE, not
	COMPARISON_VAL, into invariant_p.

From-SVN: r22054
1998-08-28 07:23:35 -04:00
Brendan Kehoe
f285ef2072 mark as xfail for now, since we have the test but don't have a fix yet
From-SVN: r22053
1998-08-28 05:39:38 -04:00
J"orn Rennecke
3bb806ed99 regmove.c (regclass_compatible_p): New function.
* regmove.c (regclass_compatible_p): New function.
        (regmove_optimize): Use it.
        Use NREGS parameter insted of calling max_reg_num.
        (fixup_match_1): Don't use code = MINUS when later tieing with
        a hard register is likely.

From-SVN: r22052
1998-08-28 08:18:52 +01:00
J"orn Rennecke
8ed69d0908 loop.c (check_dbra_loop): Fix calculation of FINAL_VALUE when COMPARISON_VAL was normalized.
* loop.c (check_dbra_loop): Fix calculation of FINAL_VALUE when
	COMPARISON_VAL was normalized.

From-SVN: r22051
1998-08-28 08:05:20 +01:00
Martin v. Löwis
af3d5d5313 Update reference to standard.
From-SVN: r22050
1998-08-28 02:43:24 +00:00
Jeff Law
e6f018b241 Daily bump.
From-SVN: r22048
1998-08-27 18:45:03 -06:00
Jeffrey A Law
3aa94dc884 loop.c (check_dbra_loop): The loop ending comparison value must be an invariant or we can not reverse the...
* loop.c (check_dbra_loop): The loop ending comparison value
        must be an invariant or we can not reverse the loop.

From-SVN: r22045
1998-08-27 18:10:42 -06:00
Jeffrey A Law
78b87d18ae loop.c (scan_loop): Count down from max_reg_num - 1 to FIRST_PSEUDO_REGISTER to avoid calling...
* loop.c (scan_loop): Count down from max_reg_num - 1 to
        FIRST_PSEUDO_REGISTER to avoid calling max_reg_num each iteration
        of the loop.
        (load_mems_and_recount_loop_regs_set): Likewise.
Forgot second AVOID_CCMODE_COPIES loop.

From-SVN: r22044
1998-08-27 17:19:47 -06:00
Jeffrey A Law
3568fdd276 loop.c (scan_loop): Count down from max_reg_num - 1 to FIRST_PSEUDO_REGISTER to avoid calilng...
* loop.c (scan_loop): Count down from max_reg_num - 1 to
        FIRST_PSEUDO_REGISTER to avoid calilng max_reg_num each iteration
        of the loop.

From-SVN: r22043
1998-08-27 17:11:32 -06:00
Jeffrey A Law
3d55c13000 980827-1.c: New test.
* gcc.dg/980827-1.c: New test.
New test from Geoff Keating

From-SVN: r22042
1998-08-27 17:01:28 -06:00
Per Bothner
495897b71c Fix typo.
From-SVN: r22040
1998-08-27 13:52:38 -07:00
Per Bothner
615582bce1 Migrate from devo/gcc/ch.
From-SVN: r22039
1998-08-27 13:51:39 -07:00
Per Bothner
3c79b2da6b
Migrate from devo/gcc/ch.

From-SVN: r22038
1998-08-27 13:51:39 -07:00
Per Bothner
360c5f1547 Migrate from devo/gcc/ch.
From-SVN: r22037
1998-08-27 13:51:39 -07:00
Per Bothner
3a575f253d
Migrate from devo/gcc/ch.

From-SVN: r22036
1998-08-27 13:51:39 -07:00
Per Bothner
a2ca17fa85
Migrate from devo/gcc/ch.

From-SVN: r22035
1998-08-27 13:51:39 -07:00
Per Bothner
80a093b29e
Migrate from devo/gcc/ch.

From-SVN: r22034
1998-08-27 13:51:39 -07:00
Per Bothner
fc5074d4c9 d
Migrate from devo/gcc/ch.

From-SVN: r22033
1998-08-27 13:51:38 -07:00
Per Bothner
cb551490a3
Migrate from devo/gcc/ch.

From-SVN: r22032
1998-08-27 13:51:38 -07:00
Per Bothner
5ba6e819ef
Migrate from devo/gcc/ch.

From-SVN: r22031
1998-08-27 13:51:38 -07:00
Per Bothner
f62502329f (
Migrate from devo/gcc/ch.

From-SVN: r22030
1998-08-27 13:51:37 -07:00
Brendan Kehoe
db3c7f059c add missing typedefs
From-SVN: r22029
1998-08-27 16:02:34 -04:00
Jeffrey A Law
70f7facc71 * i386.c (print_operand): Remove obsolete 'c' docs.
From-SVN: r22028
1998-08-27 13:12:08 -06:00
Jason Merrill
56ae6d7780 lex.c (handle_cp_pragma): Remove #pragma vtable.
* lex.c (handle_cp_pragma): Remove #pragma vtable.
	* lang-options.h: Remove +e options.
	* decl2.c (lang_decode_option): Likewise.
	(import_export_vtable): Don't check write_virtuals.
	(finish_vtable_vardecl, finish_file): Likewise.
	* search.c (dfs_debug_mark): Likewise.
	* semantics.c (begin_class_definition): Likewise.
	* class.c (build_vtable, finish_vtbls, finish_struct_1): Likewise.
	* call.c (build_over_call): Check flag_elide_constructors.
	* decl2.c: flag_elide_constructors defaults to 1.
	* typeck.c (convert_arguments): Remove return_loc parm.
	(build_function_call_real): Adjust.

From-SVN: r22027
1998-08-27 15:03:59 -04:00
Brendan Kehoe
0603b640a0 fix test
From-SVN: r22026
1998-08-27 14:46:21 -04:00
Jason Merrill
e907984f30 search.c: Tear out all mi_matrix and memoize code.
* search.c: Tear out all mi_matrix and memoize code.
	(lookup_field, lookup_fnfields): Use scratch_tree_cons.
	* lang-options.h: Remove documentation for -fhandle-exceptions,
	-fmemoize-lookups and -fsave-memoized.
	* cp-tree.h: Lose mi_matrix and memoize support.
	* decl2.c: Ignore -fmemoize-lookups and -fsave-memoized.
	* class.c: Lose struct class_level.
	(pushclass, popclass): Lose memoize support.
	* init.c (build_offset_ref): Likewise.

From-SVN: r22025
1998-08-27 13:33:35 -04:00
Jason Merrill
dfbcd65a01 Never change BINFO_INHERITANCE_CHAIN.
* init.c (emit_base_init): Change modification of
	BINFO_INHERITANCE_CHAIN to an assert.
	* search.c (get_base_distance_recursive): Likewise.
	(get_base_distance): Likewise.
	(lookup_member): Likewise.
	(convert_pointer_to_single_level): Likewise.
	(lookup_field): Likewise.  Lose setting TREE_VIA_* on TREE_LISTs.
	(lookup_fnfields): Likewise.
	* tree.c (propagate_binfo_offsets): Don't call unshare_base_binfos.
	(unshare_base_binfos): Don't call propagate_binfo_offsets.
	(layout_basetypes): Call propagate_binfo_offsets instead of
	unshare_base_binfos.
	* decl.c (xref_basetypes): Call unshare_base_binfos.
	* pt.c (instantiate_class_template): Likewise.
	* tree.c (reverse_path): Remove 'copy' parm; always make a
	temporary copy.
	* class.c (build_vbase_path): Just call it.
	* search.c (compute_access): Likewise.  Don't re-reverse.

From-SVN: r22024
1998-08-27 11:30:49 -04:00
Tom Tromey
3e2a2957a0 gthr.h: Document __GTHREAD_MUTEX_INIT_FUNCTION.
* gthr.h: Document __GTHREAD_MUTEX_INIT_FUNCTION.
        * frame.c (init_object_mutex): New function.
        (init_object_mutex_once): Likewise.
        (find_fde): Call it.
        (__register_frame_info): Likewise.
        (__register_frame_info_table): Likewise.
        (__deregister_frame_info): Likewise.

From-SVN: r22023
1998-08-27 14:51:55 +00:00
Jeffrey A Law
54c3cf4bb9 * haifa-sched.c (sched_analyze_insn): Fix thinko in last change.
From-SVN: r22022
1998-08-27 08:15:32 -06:00
Mark Mitchell
ca107dedc7 class.c (build_vbase_path): Use reverse_path.
* class.c (build_vbase_path): Use reverse_path.
	(finish_base_struct): Move warnings for inaccessible bases to
	layout_basetypes.
	(modify_one_vtable): Remove check of TREE_USED (binfo).
	(fixup_vtable_deltas1): Likewise.
	* cp-tree.h (BINFO_INHERITANCE_CHAIN): Document here.
	(xref_tag): Remove binfos parameter.
	(make_binfo): Remove chain parameter.
	(reverse_path): Add copy parameter.
	* decl.c (init_decl_processing): Change calls to xref_tag.
	(xref_tag): Remove binfos parameter.
	(xref_basetypes): Change calls to make_binfo.
	* decl2.c (grok_x_components): Change calls to xref_tag.
	(handle_class_head): Likewise.
	* friend.c (do_friend): Likewise.
	* lex.c (make_lang_type): Change calls to make_binfo.
	* parse.y (structsp): Change calls to xref_tag.
	(named_complex_class_head_sans_basetype): Likewise.
	(named_class_head): Likewise.
	* rtti.c (init_rtti_processing): Likewise.
	* search.c (compute_access): Change calls to reverse_path.
	(dfs_get_vbase_types): Change calls to make_binfo.
	(get_vbase_types): Remove dead code.
	* tree.c (unshare_base_binfos): Change calls to make_binfo.
	(layout_basetypes): Warn here about inaccessible bases.
	(make_binfo): Remove chain parameter.
	(reverse_path): Add copy parameter.

From-SVN: r22021
1998-08-27 10:17:48 +00:00
Mark Mitchell
18337c03d5 Remove comma
From-SVN: r22020
1998-08-27 10:12:10 +00:00
J"orn Rennecke
7a5109b7f3 loop.c (check_dbra_loop): Enable code for reversal of some loops without a known constant loop end.
* loop.c (check_dbra_loop): Enable code for reversal
	of some loops without a known constant loop end.

From-SVN: r22019
1998-08-27 09:39:22 +01:00
Jason Merrill
8c1bd4f5dc class.c: #if 0 complete_type_p.
* class.c: #if 0 complete_type_p.
	* init.c (build_java_class_ref, build_new_1): Remove unused locals.
	* method.c (process_overload_item): Likewise.
	* typeck.c (comp_target_types): Likewise.

From-SVN: r22018
1998-08-26 22:04:34 -04:00
Jason Merrill
0ec5701756 Stop sharing binfos for indirect virtual bases.
* tree.c (propagate_binfo_offsets): Unshare vbases, too.
	(layout_basetypes): Likewise.
	(unshare_base_binfos): Copy vbases, too.
	* cp-tree.h (BINFO_VIA_PUBLIC, BINFO_BASEINIT_MARKED,
	BINFO_VBASE_INIT_MARKED): Remove obsolete macros.
	(BINFO_PUSHDECLS_MARKED, SET_BINFO_PUSHDECLS_MARKED,
	CLEAR_BINFO_PUSHDECLS_MARKED): New macros.
	* search.c (lookup_field, lookup_fnfields, lookup_member): Remove
	reference to BINFO_VIA_PUBLIC.
	(marked_pushdecls_p, unmarked_pushdecls_p): New fns.
	(push_class_decls): Use them.
	(dfs_pushdecls): Use SET_BINFO_PUSHDECLS_MARKED.
	(dfs_compress_decls): Use CLEAR_BINFO_PUSHDECLS_MARKED.

From-SVN: r22017
1998-08-26 21:41:17 -04:00
Jeff Law
1ca7641e55 Daily bump.
From-SVN: r22015
1998-08-26 18:45:02 -06:00