Commit Graph

24270 Commits

Author SHA1 Message Date
Tom Tromey 5057b5e8d1 posix-threads.h (_Jv_MutexDestroy): Use _Jv_PthreadGetMutex.
* include/posix-threads.h (_Jv_MutexDestroy): Use
	_Jv_PthreadGetMutex.
	(_Jv_MutexLock): Likewise.
	(_Jv_MutexUnlock): Likewise.

From-SVN: r29569
1999-09-21 23:01:23 +00:00
Kaveh R. Ghazi 1eb1464424 machmode.h (HOST_PTR_PRINTF): Move from here ...
* machmode.h (HOST_PTR_PRINTF): Move from here ...

       * system.h (HOST_PTR_PRINTF): ... to here.

       * mips-tfile.c: Don't include machmode.h.

       * Makefile.in (MACHMODE_H): New variable.  Update to use it.
       (mips-tfile.o): Don't depend on machmode.h.

From-SVN: r29568
1999-09-21 22:31:29 +00:00
Kaveh R. Ghazi f5db61ef0b haifa-sched.c (sched_analyze): Rename local variable `region' to avoid conflicts with typedef struct `region'...
* haifa-sched.c (sched_analyze): Rename local variable `region' to
       avoid conflicts with typedef struct `region' at the top level scope.

From-SVN: r29567
1999-09-21 22:28:47 +00:00
Tom Tromey 49d385e3cd OutputStreamWriter.java (OutputStreamWriter): Reverted previous patch; it too was incorrect.
* java/io/OutputStreamWriter.java (OutputStreamWriter): Reverted
	previous patch; it too was incorrect.
	* java/io/PrintStream.java (PrintStream): Likewise.

From-SVN: r29566
1999-09-21 21:35:41 +00:00
Richard Henderson 336a6399a9 basic-block.h (basic_block): Add eh_beg, eh_end.
* basic-block.h (basic_block): Add eh_beg, eh_end.
        * flow.c (entry_exit_blocks): Update.
        (find_basic_blocks): Don't allocate bb_eh_end, or pass it around.
        Call new functions.
        (find_basic_blocks_1): Don't record eh_list at each bb.  Use
        lists.c functions to allocate insn lists.
        (make_edges): Use eh_beg+eh_end, not the lists.  Split out EH
        edge creation ...
        (make_eh_edge): ... here.  New.
        (move_stray_eh_region_notes): New.
        (record_active_eh_regions): New.
        (delete_unreachable_blocks): Split out block merging ...
        (try_merge_blocks): ... here.  New.
        (merge_blocks_move_predecessor_nojumps): Remove edge arg.
        Dump debugging data.
        (merge_blocks_move_successor_nojumps): Likewise.
        (merge_blocks): Use eh_beg+eh_end to validate block movement.

From-SVN: r29565
1999-09-21 14:15:37 -07:00
Mark Mitchell 9f14fb6404 dump.c (dequeue_and_dump): Handle START_CATCH_STMT, CLEANUP_STMT, and SCOPE_STMT.
* dump.c (dequeue_and_dump): Handle START_CATCH_STMT,
	CLEANUP_STMT, and SCOPE_STMT.

From-SVN: r29564
1999-09-21 20:32:44 +00:00
Mark Mitchell e88d975c08 * g++.dg/ecos.exp: Don't supply -finit-priority to cc1plus.
From-SVN: r29563
1999-09-21 20:27:48 +00:00
Mark Mitchell 69ca76581e decl2.c (lang_decode_option): Adjust, in the wake of recent changes to option processing.
* decl2.c (lang_decode_option): Adjust, in the wake of recent
	changes to option processing.

From-SVN: r29562
1999-09-21 20:19:18 +00:00
Martin v. Löwis 54965141fb New test case.
From-SVN: r29561
1999-09-21 19:51:16 +00:00
Tom Tromey 118a6ea134 OutputStreamWriter.java (OutputStreamWriter): Don't refer to `this' before calling superclass constructor.
* java/io/OutputStreamWriter.java (OutputStreamWriter): Don't
	refer to `this' before calling superclass constructor.
	* java/io/PrintStream.java (PrintStream): Don't refer to `this'
	before calling superclass constructor.

From-SVN: r29560
1999-09-21 19:49:13 +00:00
Martin v. Löwis 32facac808 typeck.c (get_member_function_from_ptrfunc): Allow extraction of function pointer from pmfs with no object given.
* typeck.c (get_member_function_from_ptrfunc): Allow extraction of
	function pointer from pmfs with no object given.
	(convert_for_assignment): Do not return error when converting
	pmfs.

From-SVN: r29559
1999-09-21 19:49:04 +00:00
Martin v. Löwis 0fb6bbf56e extend.texi (Bound member functions): Document unbound pmf conversion.
* extend.texi (Bound member functions): Document unbound pmf
	conversion.

From-SVN: r29558
1999-09-21 19:34:59 +00:00
Martin v. Löwis 7936455a2c extend.texi (Bound member functions): Document unbound pmf conversion.
* extend.texi (Bound member functions): Document unbound pmf
 conversion.

From-SVN: r29557
1999-09-21 19:34:55 +00:00
Andrew MacLeod abb14ef57e flow.c (split_edge): Handle insertion on a fallthrough edge which has the EXIT_BLOCK as a dest.
Tue Sep 21 14:55:11 EDT 1999  Andrew MacLeod  <amacleod@cygnus.com>

	* flow.c (split_edge): Handle insertion on a fallthrough edge which
	has the EXIT_BLOCK as a dest.

From-SVN: r29556
1999-09-21 18:57:12 +00:00
Andrew MacLeod 87fdf7fff0 flow.c (remove_edge): New function to remove an edge from the flow graph.
Tue Sep 21 14:51:23 EDT 1999  Andrew MacLeod  <amacleod@cygnus.com>

	* flow.c (remove_edge): New function to remove an edge from the
	flow graph.
	(remove_fake_successors): New function to remove fake successor edges.
	(remove_fake_edges): New function to remove all fake edges from the
	flow graph.
	(add_fake_exit_edges): New function to add fake edges from all blocks
	with no successors to the exit block.
	* basic-block.h (remove_fake_edges, add_fake_exit_edges): Add
	prototypes for new functions.

From-SVN: r29555
1999-09-21 18:54:34 +00:00
Andrew MacLeod 04fc632494 elf64.h (ASM_OUTPUT_CONSTRUCTOR, [...]): Use Pmode to determine whether to output .dword or .word.
Tue Sep 21 14:49:53 EDT 1999  Andrew MacLeod  <amacleod@cygnus.com>

	* config/mips/elf64.h (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR):
	Use Pmode to determine whether to output .dword or .word.

From-SVN: r29554
1999-09-21 18:52:37 +00:00
Alex Samuel f3cdb9c694 Replace string const "<internal>" with dynamic allocation.
* lex.c (internal_filename): New variable.
	(INTERNAL_FILENAME): New macro.
	(init_parse): Allocate internal_filename and mark as root.  Use it
	instead of a string constant.

From-SVN: r29553
1999-09-21 18:14:26 +00:00
Alex Samuel 5c7261ab87 Replace string const "<built-in>" with dynamic allocation.
* tree.c (built_in_filename): New variable.
	(BUILT_IN_FILENAME): New macro.
	(init_tree_codes): Allocate built_in_filename.
	(make_node): Use built_in_filename instead of string constant.

From-SVN: r29552
1999-09-21 18:09:54 +00:00
Nick Clifton 3e3f78a69b Add FR30 to list of targets for which -fpic is inappropriate.
From-SVN: r29551
1999-09-21 16:42:20 +00:00
Alexandre Petit-Bianco b771925e7e re GNATS gcj/46 (Static inializers compiled incorrectly)
Thu Sep 16 15:42:39 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (java_method_add_stmt): Test against GET_CURRENT_BLOCK
 	instead of fndecl.

(This patch fixes the net Java PR #46:
 http://sourceware.cygnus.com/ml/java-prs/1999-q3/msg00092.html)

From-SVN: r29550
1999-09-21 08:53:23 -07:00
Nick Clifton 309dd885ff Add FR30 port.
From-SVN: r29549
1999-09-21 15:21:17 +00:00
Nick Clifton 09b5f8bf2f Add FR30 target.
From-SVN: r29548
1999-09-21 15:17:53 +00:00
Toon Moene ea219ef04f * g77spec.c (lang_specific_driver): Initialise return value.
From-SVN: r29547
1999-09-21 09:10:06 -06:00
Nathan Sidwell 34d257b13c dyncast1.C: New test.
* g++.old-deja/g++.other/dyncast1.C: New test.
	* g++.old-deja/g++.other/dyncast2.C: New test.
	* g++.old-deja/g++.other/dyncast3.C: New test.
	* g++.old-deja/g++.other/dyncast4.C: New test.
	* g++.old-deja/g++.other/dyncast5.C: New test.
	* g++.old-deja/g++.eh/catch3.C: New test.
	* g++.old-deja/g++.eh/catch3p.C: New test.
	* g++.old-deja/g++.eh/catch4.C: New test.
	* g++.old-deja/g++.eh/catch4p.C: New test.
	* g++.old-deja/g++.eh/catch5.C: New test.
	* g++.old-deja/g++.eh/catch5p.C: New test.
	* g++.old-deja/g++.eh/catch6.C: New test.
	* g++.old-deja/g++.eh/catch6p.C: New test.
	* g++.old-deja/g++.eh/catch7.C: New test.
	* g++.old-deja/g++.eh/catch7p.C: New test.
	* g++.old-deja/g++.eh/catch8.C: New test.
	* g++.old-deja/g++.eh/catch8p.C: New test.
	* g++.old-deja/g++.eh/catch9.C: New test.
	* g++.old-deja/g++.eh/catch9p.C: New test.

From-SVN: r29546
1999-09-21 15:00:41 +00:00
Jeffrey A Law 8288909fc3 flow.c (merge_blocks_move_successor_nojumps): Delete the BARRIER at the end of the successor...
* flow.c (merge_blocks_move_successor_nojumps): Delete the
        BARRIER at the end of the successor, not the BARRIER before
        the successor.

From-SVN: r29545
1999-09-21 08:47:23 -06:00
Nathan Sidwell 4a9e5c6725 Reimplement dynamic cast and catch matching.
* cp-tree.h (get_dynamic_cast_base_type): Prototype new function
	* search.c (dynamic_cast_base_recurse): New function.
	(get_dynamic_cast_base_type): New function for dynamic cast.
	* rtti.c (build_dynamic_cast_1): Determine source and target
	class relationship. Call __dynamic_cast_2.
	* tinfo.h (__user_type_info::upcast): New catch dispatcher.
	(__user_type_info::dyncast): New dynamic cast dispatcher.
	(__user_type_info::sub_kind): New nested enumeration.
	(__user_type_info::contained_p): sub_kind predicate.
	(__user_type_info::contained_public_p): Likewise.
	(__user_type_info::contained_nonpublic_p): Likewise.
	(__user_type_info::contained_nonvirtual_p: Likewise.
	(__user_type_info::upcast_result): New nested struct.
	(__user_type_info::dyncast_result): New nested struct.
	(*::do_upcast): New catch function.
	(*::do_dyncast): New dynamic cast function.
	(__user_type_info::find_public_subobj): New dynamic cast
	helper dispatcher.
	(*::do_find_public_subobj): New dynamic cast helper function.
	* tinfo.cc (__user_type_info::upcast): Define catch dispatcher.
	(__user_type_info::dyncast): Define dynamic cast dispatcher.
	(*::do_upcast): Define catch function.
	(*::do_dyncast): Define dynamic cast function.
	(*::do_find_public_subobj): Define dynamic cast helper function.
	* tinfo2.cc (__throw_type_match_rtti_2): Use upcast.
	(__dynamic_cast): Backwards compatibility wrapper. Use dyncast.
	(__dynamic_cast_2): New dynamic cast runtime.

From-SVN: r29544
1999-09-21 14:40:13 +00:00
Jeffrey A Law e36e6e0261 Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to the compiler when building C code.
* Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
        the compiler when building C code.

From-SVN: r29543
1999-09-21 07:48:59 -06:00
Jeffrey A Law e151ac883e * pa.c (pa_add_gc_roots): Fix thinko in last change.
From-SVN: r29542
1999-09-21 06:48:36 -06:00
Richard Earnshaw 46826921eb stmt.c (any_pending_cleanups): Don't crash when current_function->stmt is unset.
* stmt.c (any_pending_cleanups): Don't crash when
        current_function->stmt is unset.

From-SVN: r29541
1999-09-21 05:31:14 -06:00
Alex Samuel acfaa91e95 Add myself to the list.
From-SVN: r29540
1999-09-21 08:53:52 +00:00
Mark Mitchell 9f52c201b7 Force check-in to ensure that it is up to date.
From-SVN: r29539
1999-09-21 07:45:38 +00:00
Jeff Law c0a3450d59 Daily bump.
From-SVN: r29538
1999-09-21 01:45:11 -06:00
Mark Mitchell bce9471e0c cp-tree.h (finish_stmt_expr): Change prototype.
* cp-tree.h (finish_stmt_expr): Change prototype.
	* expr.c (cplus_expand_expr): Adjust call accordingly.
	* init.c (finish_init_stmts): Likewise.
	* parse.y (primary): Likewise.
	* pt.c (tsubst_copy): Likewise.
	* semantics.c (finish_stmt_expr): Don't take two parameters.
	Don't remove generated BLOCKs from the block-tree.

From-SVN: r29537
1999-09-21 07:41:01 +00:00
Alexandre Oliva 5ba57b5522 cp-tree.h (finish_stmt_expr): Change prototype.
* cp-tree.h (finish_stmt_expr): Change prototype.
        * expr.c (cplus_expand_expr): Adjust call accordingly.
        * init.c (finish_init_stmts): Likewise.
        * parse.y (primary): Likewise.
        * pt.c (tsubst_copy): Likewise.
        * semantics.c (finish_stmt_expr): Don't take two parameters.
        Don't remove generated BLOCKs from the block-tree.

From-SVN: r29536
1999-09-21 04:06:31 +00:00
Alexandre Oliva a7e1e2acfd emit-rtl.c (init_emit_once): Initialize const_int_rtx before other initializations that may use it for...
* emit-rtl.c (init_emit_once): Initialize const_int_rtx before
other initializations that may use it for relative offsets.

From-SVN: r29535
1999-09-21 04:04:16 +00:00
Alexandre Oliva 0c723adada sol2.h (PREFERRED_DEBUGGING_TYPE): Use stabs.
* config/i386/sol2.h (PREFERRED_DEBUGGING_TYPE): Use stabs.
(ASM_SPEC): Moved from sol2dbg.h.  Added work-around for gas.
* config/i386/sol2dbg.h: Removed.
* config/i386/sol2gas.h: New file, to enable gas work-around.
* configure.in: Use i386/sol2gas.h on Solaris/x86 --with-gas.
Don't use sol2dbg.h.
* configure: Rebuilt.

From-SVN: r29534
1999-09-21 00:55:08 +00:00
Mark Mitchell 447cfcb9e1 cp-tree.h (finish_stmt_expr): Change prototype.
* cp-tree.h (finish_stmt_expr): Change prototype.
	* expr.c (cplus_expand_expr): Adjust call accordingly.
	* init.c (finish_init_stmts): Likewise.
	* parse.y (primary): Likewise.
	* pt.c (tsubst_copy): Likewise.
	* semantics.c (finish_stmt_expr): Don't take two parameters.
	Don't remove generated BLOCKs from the block-tree.

From-SVN: r29533
1999-09-20 21:26:06 +00:00
Mark Mitchell ea003f6d7c * invoke.texi (-fthis-is-variable): Remove documentation.
From-SVN: r29532
1999-09-20 20:24:42 +00:00
Mark Mitchell 9bfadf57a2 Remove support for assigning to `this'.
* NEWS: Note that fact.
	* class.c (build_vbase_path): Don't check flag_this_is_variable.
	* cp-tree.h (EXPR_STMT_ASSIGNS_THIS): Remove.
	(language_function): Remove assigns_this, just_assigned_this, and
	x_base_init_expr.  Add x_vcalls_possible_p.  Add vtbls_set_up_p.
	(base_init_expr): Remove.
	(current_vcalls_possible_p): New macro.
	(vtbls_set_up_p): Likewise.
	(emit_base_init): Change prototype.
	* decl.c (finish_destructor_body): New function, split out from
	finish_function.
	(current_function_assigns_this): Remove.
	(current_function_just_assigned_this): Likewise.
	(start_function): Don't set them.
	(finish_function): Don't check them.  Don't emit
	base-initialization code here.  Generate code for destructors when
	doing semantic analysis.
	(finish_stmt): Don't check current_function_just_assigned_this.
	* decl2.c (lang_f_options): Remove this-is-variable.
	(lang_decode_option): Likewise.
	(grokclassfn): Don't check flag_this_is_variable.
	* init.c (emit_base_init): Return the expression generated.
	(construct_virtual_bases): Don't push/pop obstacks.  Fix
	typo.
	(build_new_1): Don't check flag_this_is_variable.
	(get_temp_regvar): Don't set DECL_REGISTER.
	(build_vec_init): Don't call use_variable.
	* lang-options.h: Remove "-fthis-is-variable" and
	"-fno-this-is-variable".
	* pt.c (tsubst_expr): Don't check EXPR_STMT_ASSIGNS_THIS.
	* search.c (expand_upcast_fixups): Use finish_expr_stmt, not
	expand_expr_stmt.
	* semantics.c (finish_expr_stmt_real): Rename to ...
	(finish_expr_stmt): This.  Remove assigned_this parameter.
	(begin_if_stmt): Call do_pushlevel before starting the statement.
	(begin_compound_stmt): Don't declare __FUNCTION__ in scope-less
	blocks.
	(setup_vtbl_ptr): Emit initialization code for bases and members
	at semantic-analysis time.  Emit code to initialize vtables in
	destructors here.
	(expand_stmt): Use finish_expr_stmt, not finish_expr_stmt_real.
	Don't handle CTOR_INITIALIZER any more.
	* typeck.c (build_modify_expr): Don't check for assignments to
	this.
	(c_expand_return): Don't suggest assigning to `this'.

	* Makefile.in (decl.o): Depend on RTL_H.
	(decl2.o): Likewise.
	(class.o): Likewise.
	(call.o): Likewise.
	(method.o): Likewise.
	(search.o): Likewise.
	(tree.o): Likewise.
	(pt.o): Likewise.

	* decl.c (duplicate_decls): When a builtin function is redeclared
	as static, make sure it is mangled correctly.

	* ir.texi (CTOR_INITIALIZER): Remove mention.  Fix typo.  Add
	detail about the statement-tree.

From-SVN: r29531
1999-09-20 20:19:04 +00:00
Richard Henderson 2307e37238 basic-block.h (compute_bb_for_insn): Declare.
* basic-block.h (compute_bb_for_insn): Declare.
        * flow.c (compute_bb_for_insn): Export.  Don't accept the varray
        to use; set size of basic_block_for_insn directly.
        (find_basic_blocks): Update.

From-SVN: r29530
1999-09-20 13:11:36 -07:00
Tom Tromey 8801244b4f configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Send output of `-fuse-divide-subroutine' test
	compilation to /dev/null.

From-SVN: r29529
1999-09-20 20:09:42 +00:00
Kaveh R. Ghazi b8024b5942 * flow.c (verify_flow_info): Fix typo, "abort;" -> "abort ();".
From-SVN: r29528
1999-09-20 19:14:48 +00:00
Kaveh R. Ghazi 451fbdf217 crtstuff.c (ON_EXIT): Delete empty macro definition.
* crtstuff.c (ON_EXIT): Delete empty macro definition.
       (__do_global_ctors_aux): Call atexit(), not ON_EXIT().

From-SVN: r29527
1999-09-20 18:59:09 +00:00
Jeffrey A Law 8d02813512 Revert this change. Gavin's patch to operand_equal_p is a better fix.
* fold-const.c (fold_range_test): Do not try to fold the range
         test if the rhs or lhs has side effects.

From-SVN: r29526
1999-09-20 11:12:03 -06:00
Andreas Schwab 7161fcc7c5 Makefile.in (parse.o): Depend on $(JAVA_TREE_H).
1999-09-15  Andreas Schwab  <schwab@suse.de>

	* Makefile.in (parse.o): Depend on $(JAVA_TREE_H).

From-SVN: r29525
1999-09-20 16:27:29 +00:00
Nathan Sidwell ebaacb57d2 * parse.y (primary): Use build_functional_cast for CV_QUALIFIER.
From-SVN: r29524
1999-09-20 16:19:26 +00:00
Jeffrey A Law bb457bd901 basic-block.h (compute_flow_dominators): Declare.
* basic-block.h (compute_flow_dominators): Declare.

        * gcse.c (alloc_code_hoist_mem): New function.
        (free_code_hoist_mem, compute_code_hoist_vbeinout): Likewise.
        (compute_code_hoist_data, hoist_expr_reaches_here_p): Likewise.
        (hoist_code, one_code_hoisting_pass): Likewise.
        (gcse_main): If optimizing for size, then hoist expressions
        computed in multiple dominated basic blocks.

From-SVN: r29523
1999-09-20 08:53:51 -06:00
Nick Clifton 03d32d1a08 Add comment saying that lang_decode_options should not complain about
unrecognised options.

From-SVN: r29522
1999-09-20 14:26:59 +00:00
Jeffrey A Law dfdb644f4f gcse.c (invalid_nonnull_info): New function.
* gcse.c (invalid_nonnull_info): New function.
        (delete_null_pointer_checks): Likewise.
        * rtl.h (delete_null_pointer_checks): Declare.
        * toplev.c (rest_of_compilation): Call delete_null_pointer_checks.

From-SVN: r29521
1999-09-20 07:58:33 -06:00
Nick Clifton 39dd8003d3 Pass all command line options to both language dependent and language independent
decoders.

From-SVN: r29520
1999-09-20 13:48:12 +00:00