2005-05-15 Feng Wang <fengwang@nudt.edu.cn>
Jerry DeLisle <jvdelisle@verizon.net>
PR fortran/17432
* trans-stmt.c (gfc_trans_label_assign): fix pointer type, to
resolve ICE on assign of format label.
* trans-io.c (set_string): add fold-convert to properly
handle assigned format label in write.
2005-05-15 Jerry DeLisle <jvdelisle@verizon.net>
PR fortran/17432
* gfortran.dg/assign_4.f: New test.
From-SVN: r99711
* config/sh/sh.c (sh_output_mi_thunk): Check cfun->cfg instead
of basic_block_info. Call init_flow and find_basic_blocks
before dbr_schedule if needed.
From-SVN: r99710
* config/vax/vax.md: define_constant VAXens AP, FP, SP and PC
registers and use them (specifically the stack pointer).
* config/vax/vax.h: Use above defines right here.
From-SVN: r99702
2005-05-14 Richard Guenther <rguenth@gcc.gnu.org>
Revert
2005-05-11 Richard Guenther <rguenth@gcc.gnu.org>
* fold-const.c (fold_indirect_ref_1): Avoid removing
NOP_EXPRs with type qualifiers like const.
From-SVN: r99699
* tree-ssa-live.c (tpa_init, tpa_delete, tpa_compact,
root_var_init, type_var_init): Use VEC instead of VARRAY.
* tree-ssa-live.h (tree_partition_associator_d): Change the
type of trees to VEC(tree,heap)*.
(tpa_tree): Use VEC instead of VARRAY.
From-SVN: r99695
2005-05-14 Richard Guenther <rguenth@gcc.gnu.org>
* fold-const.c (div_if_zero_remainder): New function.
(try_move_mult_to_index): Use it.
* g++.dg/tree-ssa/tmmti-2.C: New testcase.
From-SVN: r99694
* tree-eh.c (leh_tf_state): Change the type of dest_array to
VEC(tree,heap)*.
(maybe_record_in_goto_queue, lower_try_finally_onedest,
lower_try_finally_copy, lower_try_finally_switch,
lower_try_finally): Use VEC instead of VARRAY.
From-SVN: r99693
2005-05-13 Bryce McKinlay <mckinlay@redhat.com>
PR libgcj/21557
* java/lang/natObject.cc (_Jv_MonitorEnter): Save and clear thread
interrupt status flag if _Jv_CondWait is interrupted.
From-SVN: r99687
2005-05-13 Josh Conner <jconner@apple.com>
* config/arm/arm.c (arm_size_return_regs): New.
(thumb_unexpanded_epilogue): replace in-line calculation
of return registers with call to arm_size_return_regs.
(use_return_insn): Include test of which registers are
being used to hold return values, to accommodate
vector return values.
From-SVN: r99679
PR middle-end/20714:
* optabs.c (no_conflict_data): New struct.
(no_conflict_move_test): New function.
(emit_no_conflict_block): Use it.
From-SVN: r99674
* config/cris/cris.h (CRIS_ASSERT): New macro.
* config/cris/cris.md ("*movsi_internal"): Use CRIS_ASSERT and
internal_error instead of abort.
("movsi"): Ditto. Unquote preparation statement section.
* config/cris/cris.c (ASSERT_PLT_UNSPEC): Define in terms of
CRIS_ASSERT.
("call", "call_value"): Ditto, but use gcc_assert where
appropriate. Tweak comments.
(cris_op_str): Call internal_error, not abort.
(cris_print_operand): Tweak "abort" reference to "die" in comment.
(cris_initial_elimination_offset): Call gcc_unreachable, not abort.
(cris_notice_update_cc): Call internal_error, not abort.
(cris_expand_return, cris_expand_prologue, cris_gen_movem_load)
(cris_emit_movem_store, cris_asm_output_symbol_ref)
(cris_output_addr_const_extra): Use CRIS_ASSERT, don't call abort.
(cris_symbol, cris_got_symbol): Use CRIS_ASSERT instead of
ENABLE_CHECKING-guarded abort call.
(cris_split_movdx): Use CRIS_ASSERT instead of abort with test.
Use internal_error at end of test-chain.
From-SVN: r99669
2005-05-13 Magnus Fromreide <magfr@lysator.liu.se>
* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Use
initialization instead of copying as the string is used only once.
* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
From-SVN: r99663
* c-decl.c (finish_function): Suppress "control reaches end of
non-void function" when "no return statement in function
returning non-void" is issued.
From-SVN: r99659
PR rtl-optimization/20756:
* basic-block.h (PROP_DEAD_INSN): Define.
* flow.c (propagate_one_insn): Set during mark_set_regs call
for a dead insn.
(mark_set_1): Emit a clobber when we are about to delete a dead insn
that kills a live register.
From-SVN: r99657
PR rtl-optimization/20756:
* basic-block.h (PROP_DEAD_INSN): Define.
* flow.c (propagate_one_insn): Set during mark_set_regs call
for a dead insn.
(mark_set_1): Emit a clobber when we are about to delete a dead insn
that kills a live register.
From-SVN: r99655
2005-05-14 Richard Guenther <rguenth@gcc.gnu.org>
* c-format.c (check_format_arg): Handle string literals of
the form &"string"[offset].
* g++.dg/warn/format4.C: New testcase.
From-SVN: r99652