Commit Graph

36463 Commits

Author SHA1 Message Date
Jan Hubicka ca9fef16af flow.c (try_simplify_condjump): Avoid duplicated edges.
* flow.c (try_simplify_condjump): Avoid duplicated edges.
	(verify_flow_info): Check for duplicated edges; clarify
	error reporting.

	* flow.c (block_label): Update basic_block_for_insn.
	(commit_edge_insertions): Call compute_bb_for_insn.

	* flow.c (purge_dead_edges): Handle conditional jumps and conditional
	returns too.

	* flow.c (redirect_edge_and_branch,
	try_optimize_cfg): Use redirect_edge_succ_nodup
	(redirect_edge_succ_nodup): New.
	* basic_block.h (redirect_edge_succ_nodup): Declare.

	* toplev.c (rest_of_compilation): Rebuild CFG before cfg_cleanup
	after gcse.

From-SVN: r44320
2001-07-24 23:42:40 +00:00
Jan Hubicka 40fc4e6a9f flow.c (try_forward_edges): Accept fallthru edge; Update comment.
* flow.c (try_forward_edges): Accept fallthru edge; Update comment.
	(try_crossjump_to_edge): Update commetns.
	(try_crossjump_bb): Likewise.

From-SVN: r44318
2001-07-24 22:34:43 +00:00
Richard Henderson e7139885a9 combine.c (distribute_notes): Move set of need_refresh for noop_move_p down to catch all cases.
* combine.c (distribute_notes): Move set of need_refresh
        for noop_move_p down to catch all cases.

From-SVN: r44317
2001-07-24 14:39:19 -07:00
Rainer Orth edd60b15d1 prims.cc (_JNI_OnLoad): New function.
* prims.cc (_JNI_OnLoad): New function.
	(JNI_OnLoad): Use it.
	(_Jv_CreateJavaVM): Check for _JNI_OnLoad, not NULL.

From-SVN: r44316
2001-07-24 20:08:58 +00:00
Rainer Orth 6e6958dce4 Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
* Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
	Makefile.in: Regenerate.

From-SVN: r44314
2001-07-24 19:51:34 +00:00
Jan Hubicka 6f862f2fa9 recog.c (split_all_insns_noflow): New.
* recog.c (split_all_insns_noflow): New.
	* rtl.h (split_all_insns_noflow): Declare.
	* ia64.c (ia64_reorg): Use split_all_insns_noflow.
	* m68hc11.c (m68hc11_reorg): Likewise.
	* sh.c (machine_dependent_reorg): Likewise.
	* toplev.c (rest_of_compilation): Likewise for last split_all_insns
	call.

From-SVN: r44312
2001-07-24 18:34:07 +00:00
Andrew Haley 615cd49b9a sh.md (ashlsi3_std splitter): Split only after reload.
2001-07-18  Andrew Haley  <aph@cambridge.redhat.com>

        * config/sh/sh.md (ashlsi3_std splitter): Split only after reload.
        (ashlsi3_n splitter): Likewise.
        (lshrsi3_n splitter): Likewise.

        (GOTaddr2picreg): Make const SImode.
        (sym_label2reg): Likewise.
        (symGOT2reg): Likewise.
        (symGOTOFF2reg) Likewise.

        (casesi_worker_0): Make unspec SImode.

From-SVN: r44304
2001-07-24 15:52:26 +00:00
Andrew Haley 2b9d17c73c sh.c (barrier_align): Check that an operand really is an insn before extracting its INSN_CODE.
2001-07-18  Andrew Haley  <aph@cambridge.redhat.com>

        * config/sh/sh.c (barrier_align): Check that an operand really is
        an insn before extracting its INSN_CODE.

From-SVN: r44303
2001-07-24 15:25:51 +00:00
Jason Merrill 41971242cc * lib/scanasm.exp (scan-assembler*): Don't take "testcase" argument.
From-SVN: r44302
2001-07-24 11:17:04 -04:00
Jason Merrill 6f817aaf98 move to subdirs
From-SVN: r44301
2001-07-24 11:08:37 -04:00
Jason Merrill f8b529aa0a * g++.dg/dg.exp: Run tests from subdirectories other than "special".
From-SVN: r44300
2001-07-24 11:06:50 -04:00
Jason Merrill c934225791 prune.exp (prune_gcc_output): Prune "Please submit a full bug report" message.
* lib/prune.exp (prune_gcc_output): Prune "Please submit a full
        bug report" message.

From-SVN: r44299
2001-07-24 11:06:27 -04:00
Andrew Haley cfe1cd4037 sh.h (OVERRIDE_OPTIONS): Add braces to get rid of dangling else.
2001-07-24  Andrew Haley  <aph@cambridge.redhat.com>

        * config/sh/sh.h (OVERRIDE_OPTIONS): Add braces to get rid of
        dangling else.

        * config/sh/sh.h (INITIALIZE_TRAMPOLINE): Truncate operands
        for SImode to prevent overflow.

From-SVN: r44298
2001-07-24 15:06:14 +00:00
Jason Merrill 22d69b599b tweak comment
From-SVN: r44297
2001-07-24 10:55:07 -04:00
Tom Tromey 82545bf72f VMClassLoader.java (getPrimitiveClass): Return correct type.
* java/lang/VMClassLoader.java (getPrimitiveClass): Return correct
	type.

From-SVN: r44296
2001-07-24 14:31:42 +00:00
David Billinghurst 897c6ab759 intrinsic-unix-bessel.f: New test
2001-07-24  David Billinghurst <David.Billinghurst@riotinto.com>

	* g77.f-torture/execute/intrinsic-unix-bessel.f: New test
	* g77.f-torture/execute/intrinsic-unix-erf.f: New test
	* g77.f-torture/execute/intrinsic-vax-cd.f: New test
	* g77.f-torture/execute/intrinsic-f2c-z.f: New test

From-SVN: r44295
2001-07-24 13:32:53 +00:00
Rainer Orth 46d2e8d778 irix6-libc-compat.c: New file.
* config/mips/irix6-libc-compat.c: New file.
	* config/mips/t-iris6 (LIB2FUNCS_STATIC_EXTRA): Use it.
	* doc/install.texi (Specific, mips*-sgi-irix6): Mention structure
	passing workaround.

From-SVN: r44294
2001-07-24 12:27:03 +00:00
Lars Brinkhoff cd6e529112 rtl.texi (REG_POINTER): Document.
* rtl.texi (REG_POINTER): Document.
	(Machine Modes): Document BImode, OImode, PQImode, PHImode,
	QFmode, HFmode, TQFmode, QCmode, and HCmode.

From-SVN: r44292
2001-07-24 09:13:19 +00:00
Nathan Sidwell 7f54a8510b Simplify rtti, now we've only one ABI.
* cp-tree.h (cp_tree_index): Remove CPTI_TINFO_DECL_ID,
	CPTI_TINFO_VAR_ID.
	(tinfo_decl_id, tinfo_var_id): Remove.
	(get_typeid_1): Remove.
	* rtti.c
	(init_rtti_processing): Remove tinfo_decl_id & tinfo_var_id.
	(typeid_ok_p): New function.
	(build_type_id): Call typeid_ok_p. Don't call tinfo_from_decl.
	(get_tinfo_decl): Remove old abi documentation.
	(tinfo_from_decl): Remove.
	(get_type_id): Call typeid_ok_p. Absorb get_typeid_1.
	(get_typeid_1): Remove.
	(get_base_offset): Remove.
	(synthesize_tinfo_var): Absorb get_base_offset.
	(create_real_tinfo_var): Don't use tinfo_decl_id.

From-SVN: r44291
2001-07-24 08:56:12 +00:00
Jan Hubicka 8f54d2fffd * flow.c (delete_noop_moves): Do not confuse libcall regions.
From-SVN: r44290
2001-07-24 08:54:59 +00:00
GCC Administrator 016c22b5b4 Daily bump.
From-SVN: r44288
2001-07-24 07:16:15 +00:00
Richard Henderson 6a7ca9966b * flow.c (try_simplify_condjump): Use tidy_fallthru_edge.
From-SVN: r44287
2001-07-23 17:57:46 -07:00
Kazu Hirata 82efa2e524 * reload.c: Fix comment typos.
From-SVN: r44284
2001-07-23 22:41:10 +00:00
Kazu Hirata ba412630ae h8300-protos.h: Add a prototype for general_operand_dst_push.
* config/h8300/h8300-protos.h: Add a prototype for
	general_operand_dst_push.
 	* config/h8300/h8300.c (general_operand_dst_push): New.
	* config/h8300/h8300.h (OK_FOR_T): New.
	(EXTRA_CONSTRAINT): Use it.
	* config/h8300/h8300.md (movqi_push): Remove and integrate into
	the existing movqi pattern.
	(movhi_push): Likewise.

From-SVN: r44283
2001-07-23 21:46:38 +00:00
Jan Hubicka 21715220d5 * gcse.c (cprop_insn): Update call of cprop_cc0_jump.
From-SVN: r44282
2001-07-23 21:35:26 +00:00
H.J. Lu dd96fbc585 extend.texi: Update __builtin_return_address and __builtin_frame_address.
2001-07-23  H.J. Lu  (hjl@gnu.org)

	* doc/extend.texi: Update __builtin_return_address and
	__builtin_frame_address.

From-SVN: r44281
2001-07-23 14:20:35 -07:00
Richard Henderson c50e5bc0ab i386.c (ix86_expand_setcc): Don't use method 0 before CSE.
* config/i386/i386.c (ix86_expand_setcc): Don't use method 0
        before CSE.
        * config/i386/i386.md: New setcc+movzbl peephole2.

From-SVN: r44279
2001-07-23 14:16:02 -07:00
Neil Booth 9099cc4f79 Make-lang.in (objc-act.o): Depend on debug.h.
* objc/Make-lang.in (objc-act.o): Depend on debug.h.
	* objc/objc-act.c: Include debug.h.
	(synth_module_prologue): Save and restore debug hooks too.

From-SVN: r44278
2001-07-23 21:11:42 +00:00
Lars Brinkhoff 68eb4fb9c7 tm.texi (TARGET_FLOAT_FORMAT): Document IBM_FLOAT_FORMAT and C4X_FLOAT_FORMAT.
* tm.texi (TARGET_FLOAT_FORMAT): Document IBM_FLOAT_FORMAT
	and C4X_FLOAT_FORMAT.
	(BOOL_TYPE_SIZE): Document.

From-SVN: r44277
2001-07-23 20:33:40 +00:00
Tom Tromey e109d16f8c javaprims.h: Rebuilt class list.
* gcj/javaprims.h: Rebuilt class list.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added VMClassLoader.
	* java/lang/VMClassLoader.java: New file.
	* java/lang/Boolean.java: Merged with Classpath.
	* java/lang/Byte.java: Merged with Classpath.
	* java/lang/Integer.java: Merged with Classpath.
	* java/lang/Long.java: Merged with Classpath.
	* java/lang/Number.java: Merged with Classpath.
	* java/lang/Short.java: Merged with Classpath.

From-SVN: r44274
2001-07-23 20:01:29 +00:00
Clinton Popetz 57de7530c4 unroll.c (loop_iterations): Fix miscalculation of initial giv offset.
* unroll.c (loop_iterations): Fix miscalculation of initial
	giv offset.

From-SVN: r44272
2001-07-23 12:58:29 -04:00
David Edelsohn cba6dfc843 limits_generic.h (int): Set digits and digits10 appropriately for word size.
* include/bits/limits_generic.h (int): Set digits and digits10
	appropriately for word size.
	(unsigned int,long,unsigned long): Likewise.

From-SVN: r44271
2001-07-23 12:41:03 -04:00
Jeffrey A Law 1ee6b83994 * gcc.c-torture/execute/20010723-1.c: New test.
From-SVN: r44270
2001-07-23 10:13:51 -06:00
Andrew Haley 6e7b03e1f5 tm.texi (MD_CAN_REDIRECT_BRANCH): New macro.
2001-07-13  Andrew Haley  <aph@redhat.com>

        * doc/tm.texi (MD_CAN_REDIRECT_BRANCH): New macro.
        * config/sh/sh.h (MD_CAN_REDIRECT_BRANCH): New macro.
        * config/sh/sh.c (sh_can_redirect_branch): New function.
        * config/sh/sh-protos.h (sh_can_redirect_branch): Declare.
        * reorg.c (steal_delay_list_from_target): Use
        MD_CAN_REDIRECT_BRANCH to see if redirection is possible.

From-SVN: r44269
2001-07-23 16:00:06 +00:00
Jan Hubicka 0dd94abd70 flow.c (try_simplify_condjump): Unlink insn chain on fallthru edge; use can_fallthru.
* flow.c (try_simplify_condjump): Unlink insn chain on
	fallthru edge; use can_fallthru.

From-SVN: r44268
2001-07-23 15:27:33 +00:00
Jan Hubicka 0005550b58 basic-block.h (find_sub_basic_block): Declare.
* basic-block.h (find_sub_basic_block): Declare.
	* flow.c (make_edges): New arguments MIN and MAX;
	(find_sub_basic_blocks): Revamp to use make_edges
	and purge_dead_edges.
	(find_basic_blocks): Update call of find_sub_basic_block.

	* recog.c (split_all_insns): Always expect CFG to be consistent;
	call find_sub_basic_blocks in case something has changed.
	* toplev.c (rest_of_compilation): Always call split_all_insns once CFG
	has been built.

	* basic-block.h (delete_noop_moves): Declare.
	* combine.c (combine_instructions): Call it.
	(recog_for_combine): Tolerate noop moves
	(distribute_notes): Force refresh when register dies at noop move.
	* flow.c (delete_noop_moves): Use BB structure; delete JUMP insns
	too.
	(life_analysis): Update delete_noop_moves call.
	(set_noop_p): Move too ...
	* rtlanal.c (noop_move_p): ... here.
	* rtl.h (noop_move_p): Declare.

	* basic-block.h (purge_all_dead_edges, purge_dead_edges): New functions.
	* toplev.c (rest_of_compilation): Conditionally call purge_all_dead_edges
	after combine.
	* gcse.c (cprop_cc0_jump, cprop_insn): New argument "basic_block".
	(cprop_jump): Likewise; call purge_dead_edges if substitution suceeded.

From-SVN: r44267
2001-07-23 14:08:12 +00:00
Jan Hubicka 4edc91ae51 * analyze_brprob: Fix awk compatibility problems; update comment.
From-SVN: r44266
2001-07-23 13:55:28 +00:00
Ulrich Weigand bfa7942289 MAINTAINERS (Various maintainers: s390 port): Added myself.
From-SVN: r44265
2001-07-23 13:41:06 +00:00
Hans-Peter Nilsson e0120d6e53 reload.c (push_reload): Fix typo in comment.
* reload.c (push_reload): Fix typo in comment.
	(find_reloads_address): Ditto.
	(reg_overlap_mentioned_for_reload_p): Ditto in head comment.

From-SVN: r44264
2001-07-23 13:21:39 +00:00
Andreas Jaeger f981f97beb * analyze_brprob: Fix more typos.
From-SVN: r44263
2001-07-23 15:21:13 +02:00
Andreas Jaeger 075cc945ad * analyze_brprob: Fix typos.
From-SVN: r44262
2001-07-23 12:39:58 +02:00
GCC Administrator f3a0f754ad Daily bump.
From-SVN: r44258
2001-07-23 07:16:09 +00:00
Richard Henderson b02eea61ce flow.c: Grammar check and clarify a lot of comments.
* flow.c: Grammar check and clarify a lot of comments.
        (try_simplify_condjump): Rename variables to be clearer.
        (try_forward_edges): Skip complex and fallthru edges.
        Rearrange tests to avoid duplicate checks.
        (flow_find_cross_jump): Likewise.
        (outgoing_edges_match): Allow match if neither branch has
        probability data.  Loosen probability match to 5%.
        (try_crossjump_to_edge): Hoist repeated indirection into
        local variables.
        (try_crossjump_bb): Don't check complex edges.  Eliminate
        redundant crossjump tests.
        (try_optimize_cfg): Fix use of bool.  Reorganize cheaper
        checks before more expensive checks.

From-SVN: r44257
2001-07-23 00:03:34 -07:00
Graham Stott 18fee3ee73 class.c (type_requires_array_cookie): Fix use of uninitialised variable has_two_argument_delete_p.
* cp/class.c (type_requires_array_cookie): Fix use of uninitialised
	variable has_two_argument_delete_p.

From-SVN: r44256
2001-07-23 06:34:51 +00:00
Richard Henderson 1f2f8b29b1 fold-const.c (fold): Test vs FLOAT_TYPE_P instead of INTEGRAL_TYPE_P when...
* fold-const.c (fold): Test vs FLOAT_TYPE_P instead of
        INTEGRAL_TYPE_P when folding comparisons with operand_equal_p
        arguments.

From-SVN: r44255
2001-07-22 23:00:06 -07:00
Ben Elliston 541c655f05 enum5.C: Mark as XFAIL.
2001-07-23  Ben Elliston  <bje@redhat.com>

	* g++.old-deja/g++.other/enum5.C: Mark as XFAIL.

From-SVN: r44253
2001-07-23 15:35:26 +10:00
Richard Henderson 97660e202f m68k.c (const_uint32_operand): Abort if mode is <= 32 bits.
* m68k.c (const_uint32_operand): Abort if mode is <= 32 bits.
        (const_sint32_operand): Likewise.
        * m68k.md (anon mulsi pattern): Use const_int_operand not
        const_sint32_operand.
        (umulsi3_highpart): Zero extend a constant input.
        (smulsi3_highpart): Don't bother checking SImode constant.
        (const_umulsi3_highpart): Give op3 DImode.
        (const_smulsi3_highpart): Likewise.

From-SVN: r44252
2001-07-22 21:46:53 -07:00
Jeff Sturm 092a1f5ab3 configure.host: Enable hash synchronization for alpha*-*.
* configure.host: Enable hash synchronization for alpha*-*.
* include/posix-threads.h (_Jv_ThreadSelf): Added inline function for alpha.
* java/lang/natObject.cc (compare_and_swap, release_set,
compare_and_swap_release): Added inline functions for alpha.

From-SVN: r44251
2001-07-23 03:51:17 +00:00
Richard Henderson 0b6301aebe flow.c (split_block): Make sure bb_note is included in the new block when splitting before a label.
* flow.c (split_block): Make sure bb_note is included in the
        new block when splitting before a label.

From-SVN: r44250
2001-07-22 15:49:00 -07:00
Jan Hubicka 6b24c25948 basic-block.h (redirect_edge_and_branch_force, [...]): Declare.
* basic-block.h (redirect_edge_and_branch_force,
	redirect_edge_and_branch, block_label, forwarder_block_p): Declare.
	* flow.c (redirect_edge_and_branch_force,
	redirect_edge_and_branch, block_label, forwarder_block_p): Make global.
	(redirect_edge_and_branch_force): Fix copying of lifeness information.
	(block_label): Handle EXIT_BLOCK_PTR by returning NULL.
	* ifcvt.c (dead_or_predictable): Take BB as an new destionation
	instead of label; update CFG after transformation.
	(find_if_case_1): Update call, use redirect_edge_and_branch_force
	for finishing the transformation; handle even case where ELSE
	does not follow THEN.
	(find_if_case_2): Update call of dead_or_predictable; simplify
	CFG update.

	* emit-rtl.c (split_branch_probability): New global variable.
	(try_split): Take care to set split_branch_probability and
	create REG_BR_PROB note for new jump insns.
	* md.texi (define_split): Document new feature.

	* i386.c (ix86_split_fp_branch): Redistribute branch probability notes.

From-SVN: r44249
2001-07-22 21:42:35 +00:00