Commit Graph

62303 Commits

Author SHA1 Message Date
Joseph Myers de1041046f * gcc.pot: Regenerate.
From-SVN: r88363
2004-09-30 23:59:36 +01:00
Joseph Myers 9bf242660a c-tree.h (readonly_error): Remove.
* c-tree.h (readonly_error): Remove.
	* c-typeck (enum lvalue_use): New.
	(lvalue_or_else, readonly_error): Use it.  All callers changed.
	(readonly_error): Make static.

testsuite:
	* gcc.dg/lvalue-2.c: New test.

From-SVN: r88362
2004-09-30 23:52:06 +01:00
Jan Hubicka 29e12ba8ca Oops, revert accidental commit.
From-SVN: r88359
2004-09-30 21:30:20 +00:00
Jan Hubicka a710247903 re PR debug/13974 (bad line marker in debug info)
PR debug/13974
	* cfgrtl.c (try_redirect_by_replacing_jump,
	force_nonfallthru_and_redirect, commit_one_edge_insertion,
	cfg_layout_merge_blocks):  Do not attach any line number information
	to newly inserted instructions.
	* emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to
	emit_insn_*_noloc.
	(emit_*insn_before, emit_insn*_after): New.
	(emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite
	existing locators.
	* rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare.
	(emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill.

From-SVN: r88358
2004-09-30 21:25:52 +00:00
Ulrich Weigand 9108699053 s390-protos.h (s390_arg_frame_offset): Remove.
* config/s390/s390-protos.h (s390_arg_frame_offset): Remove.
	(s390_return_address_offset): Remove.
	(s390_can_eliminate): Add prototype.
	(s390_initial_elimination_offset): Add prototype.
	* config/s390/s390.h (CAN_ELIMINATE): Call s390_can_eliminate.
	(INITIAL_ELIMINATION_OFFSET): Call s390_initial_elimination_offset.
	* config/s390/s390.c (s390_arg_frame_offset): Remove.
	(s390_return_address_offset): Remove.
	(s390_can_eliminate, s390_initial_elimination_offset): New functions.
	(struct machine_function): New member split_branches_pending_p.
	(s390_mainpool_start): Allow nonexistant pool insn for empty pool.
	(s390_mainpool_finish): Likewise.  Clear base_reg if pool empty.
	(s390_optimize_prologue): Remove base_used argument.  Call
	s390_update_frame_layout instead of s390_register_info.  Handle
	prologue/epilogue insns that touch only RETURN_REGNUM.
	(s390_reorg): Remove base_used.  Clear split_branches_pending_p.
	(s390_register_info): Remove base_used and return_addr_used
	arguments, compute special register usage inline.  Return live
	register data to caller.
	(s390_frame_info): Remove arguments, do not call s390_register_info.
	(s390_init_frame_layout): New function.
	(s390_update_frame_layout): Likewise.
	(s390_emit_prologue): Call s390_update_frame_layout; some code
	move to there.  Do not emit pool placeholder insn if unnecessary.

From-SVN: r88357
2004-09-30 21:23:29 +00:00
Ulrich Weigand 13c025c186 s390.c (legitimate_reload_constant_p): Remove floating point constant workaround.
* config/s390/s390.c (legitimate_reload_constant_p): Remove
	floating point constant workaround.
	(s390_secondary_input_reload_class): Handle PLUS reloads
	with too-large constant.
	(s390_expand_plus_operand): Likewise.
	* config/s390/s390.md ("movdi"): Do not call force_const_mem.
	("movsi"): Likewise.  Also, remove workaround for non-general
	operands.
	("movdf"): Do not call force_const_mem.
	("movsf"): Likewise.  Merge expander with *movsf insn.
	("*movsf"): Remove, merge with movsf expander.

From-SVN: r88356
2004-09-30 21:21:57 +00:00
Paul Brook 99b2692a09 symbian.h (STARTFILE_SPEC): Remove crt*.o.
* config/arm/symbian.h (STARTFILE_SPEC): Remove crt*.o.
	(ENDFILE_SPEC): Define.
	* config/arm/t-symbian.h (EXTRA_MULTILIB_PARTS): Set.

From-SVN: r88355
2004-09-30 20:24:33 +00:00
Richard Henderson 3ac7c0f21f * config/alpha/qrnnd.asm: Mark for noexecstack.
From-SVN: r88349
2004-09-30 12:32:07 -07:00
Tom Tromey 02164889d5 2004-09-30 Tom Tromey <tromey@redhat.com>
i	* java/text/MessageFormat.java (Field): Constructor now
	protected.

From-SVN: r88346
2004-09-30 18:27:53 +00:00
Kazu Hirata 75b8070489 * protoize.c, tree-cfg.c: Fix comment typos.
From-SVN: r88345
2004-09-30 18:27:25 +00:00
Tom Tromey 26f7abae52 MacSpi.java: Fixed typo.
2004-09-30  Tom Tromey  <tromey@redhat.com>

	* javax/crypto/MacSpi.java: Fixed typo.

From-SVN: r88344
2004-09-30 18:21:42 +00:00
Joseph Myers 254ac10c31 re PR c/17730 (Regression in diagnost message "invalid lvalue in unary %<&%>")
PR c/17730
	* c-typeck.c (lvalue_or_else): Pass msgid directly to error.

testsuite:
	* gcc.dg/pr17730-1.c: New test

From-SVN: r88343
2004-09-30 19:17:54 +01:00
Paolo Carlini 9c9e97bdb4 PR libstdc++/10975 (DR 453)
2004-09-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/10975 (DR 453)
	* include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
	and __off == 0.
	* docs/html/ext/howto.html: Add an entry for DR 453.
	* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
	* testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
	* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
	* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
	move to...
	* testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
	* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
	move to...
	* testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.

From-SVN: r88341
2004-09-30 17:23:10 +00:00
Nathan Sidwell 84eeda0c97 cp-tree.h (struct lang_decl): Shrink by reordering fields and turning operator_code and fixed_offset into...
* cp-tree.h (struct lang_decl): Shrink by reordering fields and
	turning operator_code and fixed_offset into bitfields.

From-SVN: r88337
2004-09-30 15:25:18 +00:00
Michael Koch 0aa3602654 InetAddress.java: Reformatted.
2004-09-30  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java: Reformatted.
	(loopback): Initialize with Inet4Address object.
	(static): Initialize ANY_IF with Inet4Address object.
	(InetAddress): Removed unused package-private constructor.

From-SVN: r88336
2004-09-30 15:22:08 +00:00
Michael Koch 57da15a410 Beans.java, [...]: Reordered import statements and removed redundant modifiers.
2004-09-30  Michael Koch  <konqueror@gmx.de>

	* java/beans/Beans.java,
	java/beans/EventHandler.java,
	java/beans/EventSetDescriptor.java,
	java/beans/Introspector.java,
	java/beans/PropertyEditorManager.java,
	java/beans/beancontext/BeanContext.java,
	java/beans/beancontext/BeanContextChild.java,
	java/beans/beancontext/BeanContextChildSupport.java,
	java/beans/beancontext/BeanContextMembershipEvent.java:
	Reordered import statements and removed redundant modifiers.

From-SVN: r88335
2004-09-30 14:54:13 +00:00
Diego Novillo 20c16b361d tree-ssa-alias.c (collect_points_to_info_r): Move analysis of expressions...
* tree-ssa-alias.c (collect_points_to_info_r): Move analysis of
	expressions...
	(add_pointed_to_expr): ... here.
	Call add_pointed_to_expr for variables with DECL_INITIAL set.
	* tree-dfa.c (add_referenced_var): Scan DECL_INITIAL of any
	pointer variable, if set.

From-SVN: r88334
2004-09-30 10:09:45 -04:00
Kazu Hirata 8b0add272f * config/sh/sh.c: Follow spelling conventions.
From-SVN: r88333
2004-09-30 12:25:34 +00:00
Richard Henderson 282efe1c41 unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
* unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
        * doc/tm.texi (DWARF_ZERO_REG): New.
        * config/alpha/alpha.c (alpha_sa_mask, alpha_expand_prologue,
        alpha_expand_epilogue): Revert 2003-09-30 change to store zero.
        * config/alpha/alpha.h (DWARF_ZERO_REG): New.

From-SVN: r88331
2004-09-30 01:21:27 -07:00
Per Bothner de39930392 check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
* check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
	* decl.c (finish_method, java_add_stmt): Likewise.
	* java-gimplify.c (java-gimplify.c):  Likewise.
	* jcf-write.c (generate_bytecode_insns):  Likewise.
	* lang.c (java_post_options): Likewise - call linemap_add.

From-SVN: r88324
2004-09-29 19:16:46 -07:00
Per Bothner d68acc044e java-tree.h: Redefine some macros and add soem declaration to handle the USE_MAPPED_LOCATION...
* java-tree.h:  Redefine some macros and add soem declaration
	to handle the USE_MAPPED_LOCATION case.
	* parse.h (EXPR_WFL_QUALIFICATION):  Use operand 1, not 2.
	* java-tree.h (EXPR_WFL_FILENAME_NODE):  Use operand 2, not 1.
	* java-tree.def (EXPR_WITH_FILE_LOCATION): Only need two operands in
	USE_MAPPED_LOCATION case, since EXPR_WFL_FILENAME_NODE is gone.

From-SVN: r88323
2004-09-29 19:16:00 -07:00
Ulrich Weigand 7ce3fc8ffe builtins.c (expand_builtin_strlen): Do not call emit_move_insn with a PLUS as source operand.
* builtins.c (expand_builtin_strlen): Do not call emit_move_insn
	with a PLUS as source operand.
	(expand_movstr): Likewise.
	(expand_builtin_stpcpy): Likewise.

From-SVN: r88322
2004-09-30 01:39:35 +00:00
Richard Henderson e670d9e4ce re PR tree-optimization/17739 (tree-optimizers extend the lifetime of a hard register variable)
PR 17739
        * tree-gimple.c (is_gimple_reg): Reject hard registers.
        (is_gimple_asm_val): New.
        * tree-gimple.h (is_gimple_asm_val): Declare.
        * gimplify.c (gimplify_asm_expr): Use it.
        * tree-pretty-print.c (print_declaration): Dump hard regs.
        * tree-outof-ssa.c (check_replaceable): Don't check for hard regs.
        * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
        * tree-ssa-pre.c (is_undefined_value): Likewise.
        * tree-ssa-copy.c (may_propagate_copy): Likewise.
        (may_propagate_copy_into_asm): Protect DECL_HARD_REGISTER.
        * tree-ssa.c (warn_uninit): Likewise.
        * tree.h (DECL_HARD_REGISTER): Check for VAR_DECL.

From-SVN: r88321
2004-09-29 18:22:07 -07:00
Per Bothner 67a741463c directives.c (cpp_handle_deferred_pragma): Save, clear and restore cb.line_change.
* directives.c (cpp_handle_deferred_pragma):  Save, clear and restore
	cb.line_change.  Otherwise do_pragma will call the line_change
	call-back with a meaningless line number.

From-SVN: r88320
2004-09-29 18:19:46 -07:00
GCC Administrator fa74d329ec Daily bump.
From-SVN: r88316
2004-09-30 00:16:12 +00:00
Fariborz Jahanian 2587f86519 FIxed an IMA bug showed up in parse and gzip.
OKed by Richard Henderson.

From-SVN: r88312
2004-09-30 00:09:42 +00:00
Daniel Berlin 1b096a0a0a tree.h (INDIRECT_REF_P): New macro.
2004-09-29  Daniel Berlin  <dberlin@dberlin.org>

	* tree.h (INDIRECT_REF_P): New macro.
	* alias.c (get_alias_set): Use it
	(nonoverlapping_memrefs_p): Ditto.
	* emit-rtl.c (mem_expr_equal_p): Ditto.
	(set_mem_attributes_minus_bitpos): Ditto.
	(is_gimple_addressable): Ditto.
	(get_base_address): Ditto.
	* tree-ssa-alias.c (find_ptr_derefernece): Ditto.
	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Ditto.
	* tree-ssa-dom.c (record_equivalences_from_stmt): Ditto.
	* tree-ssa-loop-im.c (is_call_clobbered_ref): Ditto.
	* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Ditto.
	(add_address_candidates): Ditto.
	(rewrite_address_base): Ditto.

From-SVN: r88309
2004-09-29 23:08:32 +00:00
Ben Elliston 2a7cd6864b tree-flow.h (struct bb_ann_d): Remove num_preds member.
* tree-flow.h (struct bb_ann_d): Remove num_preds member.
	* tree-into-ssa.c (rewrite_into_ssa): Don't set it.
	(rewrite_ssa_into_ssa): Likewise.
	* tree-phinodes.c (create_phi_node): Access the number of
	predecessor edges using EDGE_COUNT() and not num_preds.

Co-Authored-By: Andrew Pinski <pinskia@physics.uc.edu>
Co-Authored-By: Steven Bosscher <stevenb@suse.de>

From-SVN: r88308
2004-09-30 07:23:35 +10:00
Paolo Carlini 983de0da66 std_sstream.h (basic_stringbuf(ios_base::openmode)): Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
2004-09-29  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
	Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
	(str()): Slightly tweak, protect from pptr() == 0.
	(_M_update_egptr()): Likewise.
	* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
	for an empty buffer use __beg instead of _M_string.capacity().
	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.

	* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
	* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.

2004-09-29  Paolo Carlini  <pcarlini@suse.de>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/testsuite_io.h (class constraint_buf): New, extended
	and templatized version of constraint_filebuf; add typedefs for
	streambuf/stringbuf/filebuf and wchar_t counterparts.

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>

From-SVN: r88307
2004-09-29 21:14:43 +00:00
Joseph Myers 302a2cc5c6 re PR c/7425 (deprecated attribute doesn't merge with multiple declarations)
PR c/7425
	* c-decl.c (merge_decls): Merge TREE_DEPRECATED.

cp:
	* decl.c (duplicate_decls): Merge TREE_DEPRECATED.

testsuite:
	* gcc.dg/deprecated-3.c, g++.dg/warn/deprecated-2.C: New tests.

From-SVN: r88303
2004-09-29 21:27:26 +01:00
Jason Merrill 08272b8528 revert accidental checkin
From-SVN: r88302
2004-09-29 16:18:49 -04:00
Tom Tromey 26aed92305 re PR libgcj/17715 (.properties files missing from libgcj-4.0.0.jar)
PR libgcj/17715:
	* Makefile.in: Rebuilt.
	* Makefile.am (libgcj-@gcc_version@.jar): Include properties
	files.
	(all_property_files): New macro.

From-SVN: r88300
2004-09-29 19:51:17 +00:00
Eric Christopher 3e6688a77f fold-const.c (tree_swap_operands_p): Remove duplicated code.
2004-09-29  Eric Christopher  <echristo@redhat.com>

	* fold-const.c (tree_swap_operands_p): Remove duplicated code.

From-SVN: r88299
2004-09-29 19:47:32 +00:00
Hans-Peter Nilsson 8820e4bed8 cris.md (moverside, movemside): With MEM, make sure the address is (plus reg mem).
* config/cris/cris.md (moverside, movemside): With MEM, make sure
	the address is (plus reg mem).

From-SVN: r88298
2004-09-29 19:46:18 +00:00
Tom Tromey c8dc36d6bc Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Re-sorted.
	(libgcj.la): Moved to old location near lib-gnu-awt-xlib.la.

From-SVN: r88294
2004-09-29 18:31:54 +00:00
Jason Merrill 5cefa0d95b re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed)
PR tree-optimization/17697
        * decl.c (duplicate_decls): Copy TREE_NOTHROW from newdecl to olddecl.

From-SVN: r88293
2004-09-29 14:16:34 -04:00
David Edelsohn d962e7adc0 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Define.
From-SVN: r88290
2004-09-29 11:19:56 -04:00
Andrew Haley eab3f38f80 re PR java/17007 (Inconsistent builtin attributes set by Java front end)
2004-09-29  Andrew Haley  <aph@redhat.com>

        PR java/17007
        * parse.y (patch_binop): Don't mess with the TREE_SIDE_EFFECTS of the
        result of TRUNC_MOD_EXPR.
        (patch_unaryop): Likewise for CONVERT_EXPR, which may throw.
        * decl.c (java_init_decl_processing): Mark
        soft_lookupinterfacemethod_node and soft_instanceof_node pure.

From-SVN: r88289
2004-09-29 14:13:17 +00:00
Nathan Sidwell c4b3f0eb21 tree.c (make_node_stat): Fix uninitialized warning.
* tree.c (make_node_stat): Fix uninitialized warning.  Replace
	cascaded if ... else if with a switch.

From-SVN: r88288
2004-09-29 13:07:50 +00:00
Richard Sandiford dca3f2e962 Regenerate.
From-SVN: r88285
2004-09-29 11:42:03 +00:00
Michael Roth 9082a7500a configure.in (--without-headers): Add missing double quotes.
* configure.in (--without-headers): Add missing double quotes.
	* configure: Regenerate.

From-SVN: r88284
2004-09-29 11:41:17 +00:00
Aaron W. LaFramboise b4f6904019 * read-rtl.c (apply_macro_to_string): Replace index with strchr.
From-SVN: r88283
2004-09-29 11:23:11 +00:00
Jakub Jelinek 58c8adc127 tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD and TI_VA_LIST_FPR_COUNTER_FIELD.
* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
	and TI_VA_LIST_FPR_COUNTER_FIELD.
	(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
	* tree-pass.h (pass_stdarg): Add.
	* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
	* tree-stdarg.c: New file.
	* Makefile.in (OBJS-common): Add tree-stdarg.o.
	(tree-stdarg.o): Add dependencies.
	* function.h (struct function): Add va_list_gpr_size and
	va_list_fpr_size fields.
	* function.c (allocate_struct_function): Initialize them.

	* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
	va_list_{g,f}pr_counter_field.
	(ix86_setup_incoming_varargs): Don't do anything if reg_save
	area will not be used.  Only save registers that tree-stdarg.c
	detected they need saving.
	(ix86_va_start): Don't set up fields that won't be used.

	* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
	va_list_{g,f}pr_counter_field.
	(setup_incoming_varargs): Don't do anything if reg_save
	area will not be used.  Only save registers that tree-stdarg.c
	detected they need saving.
	(rs6000_va_start): Don't set up fields that won't be used.

	* gcc.c-torture/execute/stdarg-1.c: New test.
	* gcc.c-torture/execute/stdarg-2.c: New test.
	* gcc.c-torture/execute/stdarg-3.c: New test.
	* gcc.dg/tree-ssa/stdarg-1.c: New test.
	* gcc.dg/tree-ssa/stdarg-2.c: New test.
	* gcc.dg/tree-ssa/stdarg-3.c: New test.
	* gcc.dg/tree-ssa/stdarg-4.c: New test.
	* gcc.dg/tree-ssa/stdarg-5.c: New test.

From-SVN: r88279
2004-09-29 11:47:56 +02:00
Jakub Jelinek 0d5b215ca1 builtins.def (BUILT_IN_FPUTC, [...]): Remove nothrow attribute.
* builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED,
	BUILT_IN_FPUTS, BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FWRITE,
	BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_PUTCHAR, BUILT_IN_PUTCHAR_UNLOCKED,
	BUILT_IN_PUTS, BUILT_IN_PUTS_UNLOCKED): Remove nothrow attribute.
	* builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_1_2,
	ATTR_NONNULL_1_4): New.

From-SVN: r88278
2004-09-29 11:06:49 +02:00
Jakub Jelinek a7d6ba2411 re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed)
PR tree-optimization/17697
	* tree-ssa-ccp.c (execute_fold_all_builtins): Update eh and cleanup
	cfg if needed.

	* g++.dg/opt/pr17697-1.C: New test.
	* g++.dg/opt/pr17697-2.C: New test.
	* g++.dg/opt/pr17697-3.C: New test.

From-SVN: r88277
2004-09-29 11:04:21 +02:00
Per Bothner ac973acecf Oops - fix typo in ChangeLog.
From-SVN: r88272
2004-09-28 23:44:51 -07:00
Per Bothner 50fd1c970f profile.c (brnahc_prob): Pass correct value to output_location, even when USE_MAPPED_LOCATION.
* profile.c (brnahc_prob):  Pass correct value to output_location,
	even when USE_MAPPED_LOCATION.  Fixes bug from 09-11.

From-SVN: r88271
2004-09-28 23:42:31 -07:00
Jason Merrill 550f100c57 re PR middle-end/17525 (ICE in emit_move_insn (non-BLKmode arg))
PR middle-end/17525
        * class.c (build_base_field): Set TYPE_MODE.

From-SVN: r88270
2004-09-29 02:23:49 -04:00
Richard Henderson aa24864c23 re PR tree-optimization/15089 (local register variable with a specified register is bad)
PR 15089
        * tree-ssa-copy.c (may_propagate_copy_into_asm): New.
        * tree-flow.h (may_propagate_copy_into_asm): Declare.
        * tree-ssa-ccp.c (replace_uses_in): Use it.
        * tree-ssa-dom.c (cprop_operand): Likewise.

From-SVN: r88269
2004-09-28 19:50:47 -07:00
Jeff Law e376fe5842 tree-ssa-threadupdate.c (create_block_for_threading): Request that no outgoing edges be left in the duplicate block.
* tree-ssa-threadupdate.c (create_block_for_threading):  Request
	that no outgoing edges be left in the duplicate block.  Do no
	update information on outgoing edges or PHI nodes in target
	blocks here.
	(remove_ctrl_stmt_and_useless_edges): Renamed from
	remove_last_stmt_and_useless_edges.  Handle case where the
	block is empty or has no control statements.  Do not update edge
	flags here.
	(thread_block): Create a template block rather than copying the
	original block every time.  Create outgoing edges from the
	duplicate blocks and update PHIs at the target of the outgoing
	edges here.  Fix edge flags for the original block if necessary.
	* cfghooks (duplicate_block): No longer assert that the original
	block has incoming edges.

From-SVN: r88267
2004-09-28 20:15:00 -06:00