Commit Graph

25106 Commits

Author SHA1 Message Date
Mark Mitchell
1e4ceb6f9e except.h (struct eh_entry): Add goto_entry_p.
* except.h (struct eh_entry): Add goto_entry_p.
	(eh_region_from_symbol): Remove prototype.
	* except.c (find_func_region_from_symbol): New function.
	(emit_cleanup_handler): Likewise.
	(eh_region_from_symbol): Make it static.
	(add_new_handler): Verify the argument.
	(find_func_region): Update comment.
	(expand_eh_region_end): Expand handlers here, rater than waiting
	until expand_leftover_cleanups or start_all_catch.
	(expand_leftover_cleanups): Don't expand here.
	(expand_start_all_catch): Or here.
	(expand_rethrow): Check the return value from find_func_region.
	* function.c (expand_function_end): Emit the catch_clauses.

From-SVN: r30576
1999-11-18 17:50:56 +00:00
Gavin Romig-Koch
0e6b2107ca * integrate.c (expand_inline_function): Add necessary check for NULL.
From-SVN: r30575
1999-11-18 15:12:51 +00:00
Nick Clifton
bb51178fb1 Fix command line parsing to report unrecognised options.
From-SVN: r30574
1999-11-18 11:01:34 +00:00
Jeff Law
7f7df3111d Daily bump.
From-SVN: r30573
1999-11-18 01:45:07 -07:00
Michael Gschwind
5a42589324 basic-block.h (update_life_extent): Remove trailing comma on enumeration type list.
* basic-block.h (update_life_extent): Remove trailing comma on
        enumeration type list.

From-SVN: r30572
1999-11-18 01:00:50 -07:00
Herman A.J. ten Brugge
dfb2c079b1 * varasm.c (output_constructor) Solved problem with long long
bitfields. Corrected calculating this_time and shift. Also
        corrected calculating mask when BITS_PER_UNIT == 32 (c4x).

From-SVN: r30571
1999-11-18 00:57:32 -07:00
Herman A.J. ten Brugge
ee7602056e * gcc.c-torture/execute/991118-1.c: New test.
From-SVN: r30570
1999-11-18 00:56:12 -07:00
Tom Tromey
8cb9ab4b7e * no-threads.cc (_Jv_ThreadStart): Use JvFail and not JvAssert.
From-SVN: r30569
1999-11-18 07:32:50 +00:00
Tom Tromey
5b8c39e0aa natClass.cc (MCACHE_SIZE): Define as a power of 2 minus 1.
* java/lang/natClass.cc (MCACHE_SIZE): Define as a power of 2
	minus 1.
	(method_cache): Made larger.

From-SVN: r30568
1999-11-18 07:19:00 +00:00
Jeffrey A Law
9aa137f325 flow.c (split_edge): Take looping structure into account when determining where to put the new block...
* flow.c (split_edge): Take looping structure into account when
	determining where to put the new block note.

From-SVN: r30567
1999-11-17 23:45:55 -07:00
Godmar Back
7c2e3b9b52 typeck.c: (lookup_java_method): search all inherited interfaces when...
Wed Nov  3 15:20:02 MST 1999  Godmar Back <gback@cs.utah.edu>

        * typeck.c: (lookup_java_method):  search all inherited
        interfaces when looking up interface method.

From-SVN: r30566
1999-11-17 19:59:48 -08:00
Jeff Law
13aa2d0521 Replace spaces with tab in last change.
From-SVN: r30565
1999-11-17 20:59:33 -07:00
Jeff Holcomb
d7160de971 Makefile.in (ggc-none.o): Provide host specific version if needed.
* Makefile.in (ggc-none.o): Provide host specific version if
        needed.

From-SVN: r30564
1999-11-17 20:52:39 -07:00
Richard Henderson
e7a59e04e7 cse.c (delete_trivially_dead_insns): Identify no-op insns containing subregs too.
* cse.c (delete_trivially_dead_insns): Identify no-op insns
        containing subregs too.

From-SVN: r30563
1999-11-17 16:52:07 -08:00
Diego Novillo
919509ceea invoke.texi: Add documentation for -muninit-const-in-rodata.
* invoke.texi: Add documentation for -muninit-const-in-rodata.
	* config/mips/mips.h (MASK_UNINIT_CONST_IN_RODATA): Define.
	(TARGET_UNINIT_CONST_IN_RODATA): Define.
	(text_section): Add switches -munint-const-in-rodata and
	-mno-uninit-const-in-rodata.
	(ASM_OUTPUT_COMMON): Remove.
	(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. Check if uninitialized
	const objects should be placed in read-only data. Otherwise declare
	them in common.

From-SVN: r30562
1999-11-17 19:41:13 -05:00
Richard Henderson
d49256bbdf * jump.c (jump_optimize_1): Revert last change.
From-SVN: r30561
1999-11-17 16:39:00 -08:00
Alexandre Petit-Bianco
1e25de97de MAINTAINERS: Add new Java maintainer.
Wed Nov 17 16:08:43 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* MAINTAINERS: Add new Java maintainer.

From-SVN: r30560
1999-11-17 16:11:10 -08:00
Richard Henderson
bc6c134e71 jump.c (jump_optimize_1): Don't try to duplicate the loop exit test if optimizing for size.
* jump.c (jump_optimize_1): Don't try to duplicate the loop exit
        test if optimizing for size.

From-SVN: r30559
1999-11-17 15:28:50 -08:00
Gerald Pfeifer
00f8656751 Change mail address of Per Bothner to per@bothner.com.
Approved/requested by Per himself.

From-SVN: r30558
1999-11-17 20:23:43 +00:00
Craig Burley
afa6a3e0c7 a bit of a brain-dump from earlier this year
From-SVN: r30557
1999-11-17 13:36:40 -05:00
Mark Mitchell
fc99263b01 Makefile.in (toplev.o): Depend on except.h.
* Makefile.in (toplev.o): Depend on except.h.
	(dwarf2out.o,loop.o,flow.o,haifa-sched.o): Likewise.

From-SVN: r30556
1999-11-17 18:13:01 +00:00
Jan Hubicka
40745eecaf i386.md (divmodsi4): Rewrite to expander.
Mon Nov 15 22:45:39 CET 1999  Jan Hubicka  <hubicka@freesoft.cz>
	* i386.md (divmodsi4): Rewrite to expander.
	(*divmodsi4_nocltd): New.
	(*divmodsi4_cltd): New.
	(divmodsi4 splitter): Handle the case when input comes in edx.
	(udivmodhi4): Do not use constraints in exander.
	(ashrsi3_31): Conditionize by TARGET_USE_CLTD.

From-SVN: r30555
1999-11-17 17:39:18 +00:00
Jason Merrill
75e3fbdfe8 dwarf2out.c (push_decl_scope): Still use decl_scope_depth - 1 for the common case.
* dwarf2out.c (push_decl_scope): Still use decl_scope_depth - 1
	for the common case.

From-SVN: r30554
1999-11-17 12:29:36 -05:00
Jan Hubicka
fcd56b611d Add myself into "write after approval"
From-SVN: r30553
1999-11-17 17:27:30 +00:00
Jeff Law
63ed28c0a1 Daily bump.
From-SVN: r30552
1999-11-17 01:45:07 -07:00
Geoff Keating
9c7acf2f8f u77-test.f (wd): Allow for longer working directory pathnames.
* gcc/testsuite/g77.f-torture/execute/u77-test.f (wd): Allow for longer
working directory pathnames.
* libf2c/libU77/u77-test.f (wd): Allow for longer working directory
pathnames.

From-SVN: r30551
1999-11-17 02:34:15 +00:00
Jakub Jelinek
4dc07bd7c1 explow.c (hard_function_value): Add outgoing argument.
* explow.c (hard_function_value): Add outgoing argument.
        * expr.h (hard_function_value): Declare it.
        * calls.c (expand_call, emit_library_call_value): Update callers.
        * function.c (aggregate_value_p): Ditto.
        (diddle_return_value): Must look at the outgoing registers
        on archs with register windows.

From-SVN: r30550
1999-11-16 09:43:40 -08:00
Jeff Law
95a7b5548c Daily bump.
From-SVN: r30549
1999-11-16 01:45:10 -07:00
Jason Merrill
c95cd22e91 cp-tree.h, decl.c (compute_array_index_type): Make nonstatic.
* cp-tree.h, decl.c (compute_array_index_type): Make nonstatic.
        * pt.c (tsubst, case INTEGER_TYPE): Call it.
        Check uses_template_parms.

From-SVN: r30548
1999-11-16 00:58:53 -05:00
Richard Henderson
63408827c4 ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long for printing.
* ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long
        for printing.
        * ggc.h (struct ggc_statistics): Rearrange elements for better
        packing on 64-bit hosts.
        * lcm.c (compute_laterin): Store a size_t not an int in bb->aux.
        (compute_nearerout): Likewise.

From-SVN: r30547
1999-11-15 20:55:19 -08:00
Richard Henderson
1344f8d5d0 * flow.c (calculate_global_regs_live): Zero bb->aux to begin.
From-SVN: r30546
1999-11-15 20:51:28 -08:00
Richard Henderson
d4b15af97b alpha.c (alpha_build_va_list): Use make_lang_type and initialize TYPE_NAME for the va_list record.
* alpha.c (alpha_build_va_list): Use make_lang_type and
        initialize TYPE_NAME for the va_list record.

From-SVN: r30545
1999-11-15 20:47:55 -08:00
Mark Mitchell
58595203f2 cp-tree.h (build_enumerator): Change prototype.
* cp-tree.h (build_enumerator): Change prototype.
	* decl.c (enum_next_value): Remove.
	(enum_overflow): Likewise.
	(init_decl_processing): Don't register enum_next_value as a root.
	(start_enum): Clear TYPE_VALUES for a redefined enum.
	(finish_enum): Reset the type of enumeration constants.
	(build_enumerator): Fix indentation.  Don't copy CONST_DECLs when
	we don't need to.  Maintain the TYPE_VALUES list and look there
	for the previously defined enumeration constant.  Let enumeration
	constants have the type of their values until the enumeration type
	is complete.
	* parse.y (enumlist_opt, enumlist, enumerator): Don't return a value.
	(structsp): Adjust.
	* parse.c: Regenerated.
	* pt.c (tsubst_enum): Adjust according to build_enumerator changes.

From-SVN: r30544
1999-11-16 03:42:28 +00:00
Mark Mitchell
ff9655e94b New test
From-SVN: r30543
1999-11-16 03:41:13 +00:00
Geoff Keating
a38d360d6b rs6000.c (first_reg_to_save): Save PIC_OFFSET_TABLE_REGNUM when -fpic even though it is fixed.
* config/rs6000/rs6000.c (first_reg_to_save): Save
PIC_OFFSET_TABLE_REGNUM when -fpic even though it is fixed.

From-SVN: r30542
1999-11-16 03:40:16 +00:00
Jason Merrill
ae673f1403 class.c (finish_struct): If we're a local class in a template function, add a TAG_DEFN.
* class.c (finish_struct): If we're a local class in a template
        function, add a TAG_DEFN.
        * pt.c (lookup_template_class): If this is a local class in a
        template function, call pushtag.
        (tsubst_expr, case TAG_DEFN): Handle classes, too.

        Emit debug info with the vtable.
        * search.c (maybe_suppress_debug_info): New function...
        * class.c (finish_struct_1): ...split out from here.
        * cp-tree.h: Declare it.
        * decl2.c (finish_vtable_vardecl): Override TYPE_DECL_SUPPRESS_DEBUG
        if we're writing out the vtable.
        * decl.c, search.c (dfs_debug_mark, dfs_debug_unmarked_p,
        note_debug_info_needed): #if 0 out.

From-SVN: r30541
1999-11-15 20:37:39 -05:00
Jason Merrill
348bb3c7ed dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table notion of nesting to find the DIE for a type...
* dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table
        notion of nesting to find the DIE for a type or function.
        DIEs can go in limbo even if we got a context_die.
        (push_decl_scope): Our context doesn't need to be in decl_scope_table.
        (gen_struct_or_union_type_die): Don't use TREE_PERMANENT to test
        for local type.
        (gen_decl_die): Ignore NAMESPACE_DECLs for now.
        (gen_type_die): Writing out the context doesn't cause member class
        template instantiations to be written out as well.

From-SVN: r30540
1999-11-15 19:13:51 -05:00
Richard Henderson
290ad3550b rs6000.h (ASM_OUTPUT_DEF): New.
* rs6000.h (ASM_OUTPUT_DEF): New.
        Based on proposed addition from David Edelsohn.

From-SVN: r30539
1999-11-15 15:40:14 -08:00
Robert Lipe
86765ca02c SVR5 Byteorder fixes
Co-Authored-By: Bruce Korb <autogen@linuxbox.com>

From-SVN: r30538
1999-11-15 14:47:53 +00:00
David O'Brien
e1459ff820 configure.in: Handle libgcc2 threads support on FreeBSD platforms.
* configure.in: Handle libgcc2 threads support on FreeBSD platforms.
        * configure: Rebuilt.
        * config/t-freebsd-thread: New file.

From-SVN: r30537
1999-11-15 02:11:42 -07:00
Jeffrey A Law
329e1d019a i386.c (ix86_decompose_address): Verify the base is a REG before trying to examine its register number.
* i386.c (ix86_decompose_address): Verify the base is a REG
        before trying to examine its register number.

From-SVN: r30536
1999-11-15 02:06:12 -07:00
H.J. Lu
aff555c5de * Makefile.in ($(OBJS)): Depend on stamp-picdir.
From-SVN: r30535
1999-11-15 02:01:55 -07:00
Jeff Law
f507211e3c Revert last change.
Revert last change.  HJ's message meant "code like this already exists
in libiberty/libio", not "code like this needs to be added to libiberty/libio".

What a waste of my time.

From-SVN: r30534
1999-11-15 02:01:30 -07:00
Jeffrey A Law
ecc45b285a * Makefile.in (LIBOBJS): Depend on stamp-picdir.
From-SVN: r30533
1999-11-15 01:59:33 -07:00
Jeff Law
b94bff8d1d Daily bump.
From-SVN: r30532
1999-11-15 01:45:07 -07:00
Jeffrey A Law
6b8cf0c57c basic-block.h: Remove all #defines and prototypes related to integer lists.
* basic-block.h: Remove all #defines and prototypes related to
        integer lists.
        (free_bb_mem, compute_preds_succs): Remove prototype.
        * rtl.h (free_bb_mem): Remove prototype.
        * flow.c (alloc_int_list_node); Remove function.
        (add_inst_list_node, free_int_list, add_pred_succ): Likewise.
        (compute_preds_succs, free_bb_mem): Likewise.
        * gcse.c (gcse_main): Do not call free_bb_mem anymore.
        * toplev.c (rest_of_compilation): Likewise.
        * haifa-sched.c (build_control_flow): Use flow generated edge
        list to build the haifa specific edge list.
        (find_rgns): Use new CFG data structures instead of pred/succ lists.
        (schedule_insns): Do not build pred/succ lists anymore.  Instead
        build the edge table.

From-SVN: r30531
1999-11-15 01:12:29 -07:00
Jeffrey A Law
38e90e6c3b basic-block.h (dump_bb_data): Remove declaration.
* basic-block.h (dump_bb_data): Remove declaration.
        * flow.c (dump_bb_data): Remove function.
        * sbitmap.c (sbitmap_intersect_of_predsucc): Delete function.
        (sbitmap_union_of_predsucc): Likewise.

From-SVN: r30530
1999-11-15 00:01:22 -07:00
Jeffrey A Law
b71a2ff8fc gcse.c (delete_null_pointer_checks_1): Kill unused s_preds argument.
* gcse.c (delete_null_pointer_checks_1): Kill unused s_preds
        argument.  All callers changed.
        (delete_null_pointer_checks_1): No longer need to compute the
        pred/succ lists.

From-SVN: r30529
1999-11-14 23:18:36 -07:00
Jeffrey A Law
89e606c966 gcse.c (pre_expr_reaches_here_p): Kill CHECK_PRE_COM argument.
* gcse.c (pre_expr_reaches_here_p): Kill CHECK_PRE_COM argument.
        All callers changed.
        (pre_expr_reaches_here_p_work): Likewise.
        (pre_edge_insert): No longer call pre_expr_reaches_here_p.
        * lcm.c (compute_laterin): Fix initialization of LATER.
        (compute_nearerout): Similarly for NEARER.

From-SVN: r30528
1999-11-14 23:12:50 -07:00
Mark Mitchell
cd9f6678b3 cp-tree.h (DECL_LOCAL_FUCNTION_P): New macro.
* cp-tree.h (DECL_LOCAL_FUCNTION_P): New macro.
	* call.c (equal_functions): Use DECL_LOCAL_FUCNTION_P, not
	TREE_PERMANENT.
	* decl.c (pushdecl): Set DECL_LOCAL_FUNCTION_P.
	* decl2.c (lookup_arg_dependent): Use it.

	* cp-tree.h (cp_finish_decl): Change prototype.
	(finish_static_data_member_decl): Likewise.
	(push_permanent_obstack): Remove declaration.
	(push_expression_obstack): Likewise.
	(push_scratch_obstack): Likewise.
	(DECL_TEMPLATE_PARM_P): Robustify.
	(SET_DECL_TEMPLATE_PARM_P): New macro.
	* class.c (add_method): Don't manipulate obstacks.
	(finish_vtbls): Likewise.
	* cvt.c (build_up_reference): Adjust calls to cp_finish_decl.
	* decl.c (binding_for_name): Don't manipulate obstacks.
	(maybe_push_to_top_level): Likewise.
	(pop_from_top_level): Likewise.
	(duplicate_decls): Likewise.
	(pushdecl): Likewise.
	(implicitly_declare): Likewise.
	(build_typename_type): Likewise.
	(start_decl): Likewise.
	(cp_finish_decl): Likewise.
	(finish_decl): Likewise.
	(destroy_local_static): Likewise.
	(expand_static_init): Likewise.
	(complete_array_type): Likewise.
	(grokvardecl): Likewise.
	(build_ptrmemfnc_type): Likewise.
	(grokdeclarator): Likewise.
	(xref_tag): Likewise.
	(xref_basetypes): Likewise.
	(start_enum): Likewise.
	(finish_enum): Likewise.
	(start_function): Likewise.
	(finish_function): Likewise.
	(start_method): Adjust call to cp_finish_decl.
	* decl2.c (finish_static_data_member_decl): Don't manipulate
	obstacks.
	(grokfield): Likewise.
	(grokbitfield): Likewise.
	(get_temp_name): Likewise.
	(get_sentry): Likewise.
	(fnish_file): Likewise.
	(lookup_arg_dependent): Likewise.
	* except.c (call_eh_info): Likewise.
	(push_eh_info): Likewise.
	(do_pop_exception): Likewise.
	(initialize_handler_parm): Likewise.
	(expand_end_eh_spec): Likewise.
	(alloc_eh_object): Likewise.
	(expand_throw): Likewise.
	* expr.c (extract_scalar_init): Likewise.
	* init.c (build_java_class_ref): Likewise.
	* lex.c (get_time_identifier): Likewise.
	(snarf_defarg): Likewise.
	(add_defarg_fn): Likewise.
	(is_global): Simplify.
	(do_identifier): Don't check TREE_PERMANENT.
	* method.c (emit_thunk): Don't manipulate obstacks.
	* parse.y (condition): Adjust call to cp_finish_decl.
	(primary): Likewise.
	(initdcl): Likewise.
	(initdcl0_innards): Likewise.
	(nomods_initdcl0): Likewise.
	* pt.c (push_inline_template_parms_recursive): Use
	SET_DECL_TEMPLATE_PARM_P.
	(process_template_parm): Likewise.
	(lookup_template_class): Don't manipulate obstacks.
	(instantiate_class_template): Adjust call to
	finish_static_data_member_decl.
	(tsubst_decl): Don't manipulate obstacks.
	(tsubst_expr): Likewise.
	(instantiate_template): Likewise.
	(instantiate_decl): Adjust calls to cp_finish_decl.
	* rtti.c (call_void_fn): Don't manipulate obstacks.
	(get_tinfo_var): Likewise.
	(get_tinfo_fn_unused): Likewise.
	(build_dynamic_cast_1): Likewise.
	(expand_si_desc): Likewise.
	(expand_class_desc): Likewise.
	(expand_ptr_desc): Likewise.
	(expand_attr_desc): Likewise.
	(expand_generic_desc): Likewise.
	(synthesize_tinfo_fn): Likewise.
	* search.c (expand_upcast_fixups): Likewise.
	* semantics.c (finish_asm_stmt): Likewise.
	(finish_named_return_value): Likewise.
	(begin_class_definition): Likewise.
	(finish_class_definition): Likewise.
	(finish_typeof): Likewise.
	* tree.c (build_cplus_method_type): Likewise.
	(reverse_path): Likewise.
	(copy_template_template_parm): Likewise.
	(build_expr_ptr_wrapper): Likewise.
	(push_expression_obstack): Remove.
	(push_permanent_obstack): Likewise.
	* typeck.c (mark_addressable): Likewise.

From-SVN: r30527
1999-11-14 20:29:06 +00:00