Andreas Jaeger [Sun, 15 May 2005 12:49:45 +0000 (14:49 +0200)]
Remove extra whitespace.
From-SVN: r99720
Andreas Jaeger [Sun, 15 May 2005 12:44:42 +0000 (14:44 +0200)]
normalize.c (almostone_r4, [...]): Fix parameter list.
* runtime/normalize.c (almostone_r4, almostone_r8): Fix parameter
list.
* intrinsics/random.c (KISS_DEFAULT_SEED): Remove extra semicolon.
* io/transfer.c: Do not use empty initializers for global objects.
Add missing initializers.
* io/lock.c: Do not use empty initializers for global objects.
* io/close.c: Add missing initializers.
* runtime/environ.c: Add missing initializers. Do not use empty
initializers for global object.
(init_string): Mark argument as unused.
* runtime/main.c (cleanup): Fix parameter list.
* io/io.h: Fix parameter lists.
* m4/transpose.m4, m4/matmul.m4: Fix pointer cast to avoid
warning.
* generated/transpose_c4.c, generated/transpose_c8.c,
generated/transpose_i4.c, generated/transpose_i8.c,
generated/matmul_c4.c, generated/matmul_c8.c,
generated/matmul_i4.c, generated/matmul_i8.c,
generated/matmul_r4.c, generated/matmul_r8.c: Regenerated.
* io/write.c (nml_write_obj): Fix 64-bit problem.
* io/list_read.c (nml_get_obj_data): Add missing braces around
initializer to avoid warnings.
* intrinsics/etime.c (etime_sub): Remove unused variable.
From-SVN: r99719
Andreas Jaeger [Sun, 15 May 2005 08:25:52 +0000 (10:25 +0200)]
chdir.c, [...]: Include <string.h> for prototypes.
* intrinsics/chdir.c, intrinsics/getlog.c, intrinsics/link.c,
intrinsics/symlnk.c, intrinsics/perror.c: Include <string.h> for
prototypes.
* runtime/string.c (compare0): Remove unused variable.
* io/unit.c (init_units): Remove unused variables.
* intrinsics/getcwd.c (getcwd_i4_sub): Remove unused variable.
* intrinsics/unlink.c (unlink_i4_sub): Remove unused variable.
* intrinsics/stat.c (stat_i4_sub, fstat_i8_sub, fstat_i4_sub,
stat_i8_sub): Remove unused variable.
From-SVN: r99716
Richard Sandiford [Sun, 15 May 2005 08:16:01 +0000 (08:16 +0000)]
* opth-gen.awk: Remove excess indentation.
From-SVN: r99715
Richard Sandiford [Sun, 15 May 2005 08:10:10 +0000 (08:10 +0000)]
* optc-gen.awk: Remove excess indentation.
From-SVN: r99714
Feng Wang [Sun, 15 May 2005 02:45:29 +0000 (02:45 +0000)]
[multiple changes]
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
Kaz Kojima [Sun, 15 May 2005 02:02:58 +0000 (02:02 +0000)]
sh.c (sh_output_mi_thunk): Check cfun->cfg instead of basic_block_info.
* 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
GCC Administrator [Sun, 15 May 2005 00:16:42 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99708.2
Kazu Hirata [Sat, 14 May 2005 20:32:59 +0000 (20:32 +0000)]
re PR tree-optimization/21563 (A trivial VRP opportunity missed)
gcc/
PR tree-optimization/21563
* tree-vrp.c (compare_value): Return boolean_false_node when
SSA_NAME in "if (SSA_NAME == CST)" is strictly smaller than or
strictly larger than CST.
testsuite/
PR tree-optimization/21563
* gcc.dg/tree-ssa/pr21563.c: New.
From-SVN: r99705
Kazu Hirata [Sat, 14 May 2005 20:22:58 +0000 (20:22 +0000)]
tree-optimize.c (init_tree_optimization_passes): Move pass_cd_dce in place of the last pass_dce.
* tree-optimize.c (init_tree_optimization_passes): Move
pass_cd_dce in place of the last pass_dce.
From-SVN: r99704
Nathan Sidwell [Sat, 14 May 2005 18:08:20 +0000 (18:08 +0000)]
vax.c: (print_operand_address) Use gcc_unreachable() and gcc_assert().
* config/vax/vax.c: (print_operand_address) Use gcc_unreachable() and
gcc_assert().
(rev_cond_name) Likewise.
(vax_float_literal) Likewise.
* config/vax/vax.md: Likewise.
Co-Authored-By: Jan-Benedict Glaw <jbglaw@lug-owl.de>
From-SVN: r99703
Jan-Benedict Glaw [Sat, 14 May 2005 17:55:33 +0000 (17:55 +0000)]
vax.md: define_constant VAXens AP...
* 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
Jan-Benedict Glaw [Sat, 14 May 2005 17:50:00 +0000 (17:50 +0000)]
vax.c: (override_options) Remove 'register' keyword.
* config/vax/vax.c: (override_options) Remove 'register' keyword.
(split_quadword_operands) Likewise. (rev_cond_name) Likewise.
(vax_float_literal) Likewise. (vax_rtx_costs) Remove trailing
whitespace.
* config/vax/vax.h: Remove 'register' keyword. Misc. whitespace fixes,
mostly removal of trailing spaces...
* config/vax/vax-modes.def: Remove trailing whitespace.
From-SVN: r99701
Jan-Benedict Glaw [Sat, 14 May 2005 17:38:46 +0000 (17:38 +0000)]
* config/vax/elf.h: Update whitespace.
From-SVN: r99700
Richard Guenther [Sat, 14 May 2005 15:42:01 +0000 (15:42 +0000)]
revert: fold-const.c (fold_indirect_ref_1): Avoid removing NOP_EXPRs with type qualifiers like const.
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
Jan Hubicka [Sat, 14 May 2005 14:32:39 +0000 (16:32 +0200)]
Patch by Richard Henderson:
* tree-eh.c (tree_can_throw_internal, tree_can_throw_external):
Handle RESX expressions properly.
From-SVN: r99698
Jan Hubicka [Sat, 14 May 2005 14:27:09 +0000 (16:27 +0200)]
tree-eh.c (record_stmt_eh_region): Use add_stmt_to_eh_region.
* tree-eh.c (record_stmt_eh_region): Use add_stmt_to_eh_region.
(add_stmt_to_eh_region_fn): Nest into CALL_EXPR.
(remove_stmt_from_eh_region_fn): Likewise.
From-SVN: r99697
Jan Hubicka [Sat, 14 May 2005 14:24:49 +0000 (16:24 +0200)]
tree-cfg.c (execute_warn_function_return): Break out noreturn warning too..
* tree-cfg.c (execute_warn_function_return): Break out noreturn
warning too..
(execute_warn_function_noreturn): ... here.
(pass_warn_function_noreturn): New pass.
* tree-pass.h (pass_warn_function_noreturn): Declare
* tree-optimize.c (init_tree_optimization_passes): Move return
warnings early and add noreturn warnings at place of previous
return warnings.
From-SVN: r99696
Kazu Hirata [Sat, 14 May 2005 13:05:37 +0000 (13:05 +0000)]
tree-ssa-live.c (tpa_init, [...]): Use VEC instead of VARRAY.
* 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
Richard Guenther [Sat, 14 May 2005 12:53:20 +0000 (12:53 +0000)]
fold-const.c (div_if_zero_remainder): New function.
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
Kazu Hirata [Sat, 14 May 2005 03:25:44 +0000 (03:25 +0000)]
tree-eh.c (leh_tf_state): Change the type of dest_array to VEC(tree,heap)*.
* 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
Hans-Peter Nilsson [Sat, 14 May 2005 02:33:25 +0000 (02:33 +0000)]
cris.h (Node: Register Classes): Remove obsoleted comment regarding defined register classes.
* config/cris/cris.h (Node: Register Classes): Remove obsoleted
comment regarding defined register classes.
(LEGITIMIZE_RELOAD_ADDRESS): Do not define.
From-SVN: r99692
Kazu Hirata [Sat, 14 May 2005 00:46:12 +0000 (00:46 +0000)]
tree-optimize.c (init_tree_optimization_passes): Move pass_merge_phi before the first pass_dominator.
* tree-optimize.c (init_tree_optimization_passes): Move
pass_merge_phi before the first pass_dominator.
From-SVN: r99691
Bryce McKinlay [Sat, 14 May 2005 00:42:46 +0000 (00:42 +0000)]
re PR libgcj/21557 (Hash synchronization: Thread.interrupt() can make _Jv_MonitorEnter hang)
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
GCC Administrator [Sat, 14 May 2005 00:16:34 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99684.2
Richard Earnshaw [Fri, 13 May 2005 21:56:58 +0000 (21:56 +0000)]
arm.h (INITIALIZE_TRAMPOLINE): Make the call to __clear_cache unconditional.
* arm.h (INITIALIZE_TRAMPOLINE): Make the call to __clear_cache
unconditional.
From-SVN: r99680
Josh Conner [Fri, 13 May 2005 21:13:17 +0000 (21:13 +0000)]
arm.c (arm_size_return_regs): New.
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
Tom Tromey [Fri, 13 May 2005 20:20:56 +0000 (20:20 +0000)]
SystemClassLoader.java (init): Handle empty element in path.
* gnu/gcj/runtime/SystemClassLoader.java (init): Handle empty
element in path.
From-SVN: r99676
Aldy Hernandez [Fri, 13 May 2005 19:52:39 +0000 (19:52 +0000)]
sysv4.opt (mlittle): Handle.
* config/rs6000/sysv4.opt (mlittle): Handle.
* config/rs6000/rs6000.c (rs6000_handle_option): Set
target_flags_explicit when appropriate.
From-SVN: r99675
J"orn Rennecke [Fri, 13 May 2005 18:22:57 +0000 (18:22 +0000)]
re PR middle-end/20714 (emit_no_conflict_block does invalid reordering)
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
Adam Nemet [Fri, 13 May 2005 17:51:16 +0000 (17:51 +0000)]
invoke.texi (Debugging Options): Option -fdump-translation-unit only works with C++ now.
* doc/invoke.texi (Debugging Options): Option
-fdump-translation-unit only works with C++ now.
From-SVN: r99673
Julian Brown [Fri, 13 May 2005 17:34:45 +0000 (17:34 +0000)]
20041218-2.c: Add __attribute__((packed)).
* gcc.c-torture/execute/
20041218-2.c: Add __attribute__((packed)).
* gcc.dg/intmax_t-1.c: Disable on *arm*-*-*elf*.
From-SVN: r99672
Hans-Peter Nilsson [Fri, 13 May 2005 17:09:56 +0000 (17:09 +0000)]
Correct mixup in last entry
From-SVN: r99670
Hans-Peter Nilsson [Fri, 13 May 2005 17:08:29 +0000 (17:08 +0000)]
Replace calls to abort in CRIS port.
* 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
J"orn Rennecke [Fri, 13 May 2005 16:56:11 +0000 (16:56 +0000)]
re PR rtl-optimization/20769 (bt-load.c doesn't take nonlocal gotos into account.)
PR rtl-optimization/20769:
* bt-load.c (compute_defs_uses_and_gen): Check for the blockage
pattern emitted by expand_nl_goto_receiver.
PR middle-end/20793:
* integrate.c (allocate_initial_values): Update register liveness
information.
From-SVN: r99668
Josh Conner [Fri, 13 May 2005 16:44:16 +0000 (16:44 +0000)]
* arm.c (arm_return_in_memory): Add handling for vector return types.
From-SVN: r99666
David Ung [Fri, 13 May 2005 15:24:35 +0000 (15:24 +0000)]
mips.h (processor_type): Add new PROCESSOR_4KP name.
* config/mips/mips.h (processor_type): Add new PROCESSOR_4KP
name.
* config/mips/mips.c: Add 4km alias.
* config/mips/mips.md: Add 4kp to cpu attrib and include 4k.md.
* config/mips/4k.md: New file, add 4Kc/4Kp DFA pipeline
description.
From-SVN: r99664
Magnus Fromreide [Fri, 13 May 2005 15:24:30 +0000 (17:24 +0200)]
1.cc: Use initialization instead of copying as the string is used only once.
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
David Ung [Fri, 13 May 2005 15:21:49 +0000 (15:21 +0000)]
* MAINTAINERS (Write After Approval): Add self.
From-SVN: r99662
Paul Brook [Fri, 13 May 2005 14:34:29 +0000 (14:34 +0000)]
trans-stmt.c (gfc_trans_forall_1): Fix comment typo.
2005-05-13 Paul Brook <paul@codesourcery.com>
* trans-stmt.c (gfc_trans_forall_1): Fix comment typo.
From-SVN: r99660
Jan Hubicka [Fri, 13 May 2005 14:00:55 +0000 (16:00 +0200)]
c-decl.c (finish_function): Suppress "control reaches end of non-void function" when...
* 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
Jan Hubicka [Fri, 13 May 2005 13:57:19 +0000 (15:57 +0200)]
builtins-43.c: Use gimple dump instead of generic.
* gcc.dg/builtins-43.c: Use gimple dump instead of generic.
* gcc.dg/fold-xor-?.c: Likewise.
* gcc.dg/pr15784-?.c: Likewise.
* gcc.dg/pr20922-?.c: Likewise.
* gcc.dg/tree-ssa/
20050128-1.c: Likewise.
* gcc.dg/tree-ssa/pr17598.c: Likewise.
* gcc.dg/tree-ssa/pr20470.c: Likewise.
* tree-inline.c (copy_body_r): Simplify substituted ADDR_EXPRs.
* tree-optimize.c (pass_gimple): Kill.
(init_tree_optimization_passes): Kill pass_gimple.
* tree-cfg.c (build_tree_cfg): Do verify_stmts to check that we are gimple.
* tree-dump.c (dump_files): Rename .generic to .gimple.*
From-SVN: r99658
Joern Rennecke [Fri, 13 May 2005 13:34:17 +0000 (14:34 +0100)]
re PR rtl-optimization/20756 (Clobbers of deleted insns are processed, but left out)
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
Ulrich Weigand [Fri, 13 May 2005 12:27:10 +0000 (12:27 +0000)]
Fix last ChangeLog entry.
From-SVN: r99656
J"orn Rennecke [Fri, 13 May 2005 12:25:28 +0000 (12:25 +0000)]
re PR rtl-optimization/20756 (Clobbers of deleted insns are processed, but left out)
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
Adrian Straetling [Fri, 13 May 2005 12:21:01 +0000 (12:21 +0000)]
s390.md: ("DBL"): New mode attribute.
2005-05-13 Adrian Straetling <straetling@de.ibm.com>
* config/s390.md: ("DBL"): New mode attribute.
("*movmem_long_64", "*movmem_long_31"): Merge to "*movmem_long".
("*clrmem_long_64", "*clrmem_long_31"): Merge to "*clrmem_long".
("*cmpmem_long_64", "*cmpmem_long_31"): Merge to "*cmpmem_long".
From-SVN: r99654
Richard Guenther [Fri, 13 May 2005 09:48:12 +0000 (09:48 +0000)]
c-format.c (check_format_arg): Handle string literals of the form &"string"[offset].
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
Nick Clifton [Fri, 13 May 2005 08:03:47 +0000 (08:03 +0000)]
Update the address and telephone number of the FSF organization
From-SVN: r99650
Benjamin Kosnik [Fri, 13 May 2005 03:46:26 +0000 (03:46 +0000)]
create_testsuite_files: Fix.
2005-05-12 Benjamin Kosnik <bkoz@redhat.com>
* scripts/create_testsuite_files: Fix.
From-SVN: r99648
Kazu Hirata [Fri, 13 May 2005 03:19:57 +0000 (03:19 +0000)]
3000.md, [...]: Update copyright.
* config/mips/3000.md, config/mips/4000.md,
config/mips/4100.md, config/mips/4300.md, config/mips/4600.md,
config/mips/5000.md, config/mips/7000.md, config/mips/9000.md,
config/mips/generic.md, config/pdp11/pdp11.md,
config/sh/crt1.asm, config/sh/lib1funcs.asm,
config/sh/sh-modes.def, config/sh/sh-protos.h,
config/sh/shmedia.md, config/sh/ushmedia.h: Update copyright.
From-SVN: r99647
Bryce McKinlay [Fri, 13 May 2005 01:02:39 +0000 (02:02 +0100)]
[multiple changes]
2005-05-12 Bryce McKinlay <mckinlay@redhat.com>
* include/jvm.h (gcj::verifyClasses): Declare.
* link.cc (gcj::verbose_class_flag): Moved.
* prims.cc (gcj::verifyClasses): Define here.
(gcj::verbose_class_flag): Move definition here.
(_Jv_Linker::wait_for_state): Don't call verify_class
if gcj::verifyClasses is not set.
* gij.cc (main): Set gcj::verifyClasses when '-noverify' is given.
2005-05-12 Aaron Luchko <aluchko@redhat.com>
* gij.cc (main): Recognize '-verify', '-noverify', and
'-verifyremote'
2005-05-12 Aaron Luchko <aluchko@redhat.com>
* gcj.texi: Add '-verify', '-noverify', and '-verifyremote'.
From-SVN: r99646
Kaz Kojima [Fri, 13 May 2005 00:23:28 +0000 (00:23 +0000)]
numeric_limits.cc (dg-options): Add -mieee to options on sh*-*-*.
* testsuite/18_support/numeric_limits.cc (dg-options): Add
-mieee to options on sh*-*-*.
From-SVN: r99643
Kaz Kojima [Fri, 13 May 2005 00:21:01 +0000 (00:21 +0000)]
* configure.host: Set IEEESPEC to -mieee for sh*-*-*.
From-SVN: r99642
GCC Administrator [Fri, 13 May 2005 00:16:20 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99640.2
Richard Henderson [Thu, 12 May 2005 23:52:37 +0000 (16:52 -0700)]
function.c (instantiate_virtual_regs_in_insn): Do not simplify addition to move unless dest is a register.
* function.c (instantiate_virtual_regs_in_insn): Do not simplify
addition to move unless dest is a register. Do not skip
instantiation in dest on addition simplification.
From-SVN: r99637
Thomas Fitzsimmons [Thu, 12 May 2005 23:45:17 +0000 (23:45 +0000)]
Makefile.am (cond_gtk_gcjawt_ltlibrary): Rename libjawt.la libgcjawt.la.
2005-05-12 Thomas Fitzsimmons <fitzsim@redhat.com>
* Makefile.am (cond_gtk_gcjawt_ltlibrary): Rename libjawt.la
libgcjawt.la.
From-SVN: r99636
Hans-Peter Nilsson [Thu, 12 May 2005 23:36:46 +0000 (23:36 +0000)]
cris.c (cris_print_operand): Use operand_subword and HOST_WIDE_INT_PRINT_DEC for output...
* config/cris/cris.c (cris_print_operand) <case 'H'; case
CONST_INT>: Use operand_subword and HOST_WIDE_INT_PRINT_DEC for
output; don't have special case for HOST_BITS_PER_WIDE_INT == 32.
From-SVN: r99635
Jan Hubicka [Thu, 12 May 2005 22:32:16 +0000 (00:32 +0200)]
basic-block.h (FOR_ALL_BB_FN): New macro.
* basic-block.h (FOR_ALL_BB_FN): New macro.
(init_flow): Initialize cfg structure.
* function.c (allocate_struct_function): Do not initialize cfg structure.
* tree-cfg.c (init_empty_tree_cfg): Break out from ...
(build_tree_cfg): ... here.
* tree-flow.h (init_empty_tree_cfg): Declare.
From-SVN: r99633
Steven Bosscher [Thu, 12 May 2005 22:13:00 +0000 (22:13 +0000)]
re PR tree-optimization/21520 (missing PRE opportunity with operand after operand)
Fix PR tree-optimization/21520
* tree-ssa-pre.c (phi_translate): Use fully_constant_expression
to attempt to fold constants.
From-SVN: r99632
Kaz Kojima [Thu, 12 May 2005 21:45:05 +0000 (21:45 +0000)]
sh.c: Declare the prototype of sh_adjust_unroll_max only when...
* config/sh/sh.c: Declare the prototype of sh_adjust_unroll_max
only when TARGET_ADJUST_UNROLL_MAX is defined.
(general_movsrc_operand): Use the C style comment.
(ua_offset): Use prototype.
From-SVN: r99631
Zdenek Dvorak [Thu, 12 May 2005 19:41:10 +0000 (21:41 +0200)]
tree-ssa-loop-im.c (struct mem_ref): Add field "next".
* tree-ssa-loop-im.c (struct mem_ref): Add field "next".
(struct hmr_data, hoist_memory_reference, memref_del,
struct fmrv_data): Removed.
(hoist_memory_references, free_mem_ref, free_mem_refs): New functions.
(gather_mem_refs, gather_mem_refs_stmt): Add new references to the
list.
(find_more_ref_vops): Traverse the list of memory references.
(determine_lsm_loop): Work with the list of memory references instead
of traversing the hashtable.
From-SVN: r99627
Steve Ellcey [Thu, 12 May 2005 19:29:53 +0000 (19:29 +0000)]
libiberty.h: Do not define empty basename prototype.
From-SVN: r99626
Steven Bosscher [Thu, 12 May 2005 19:29:21 +0000 (19:29 +0000)]
except.c (duplicate_eh_region_1, [...]): New functions, based on old implementation removed with RTL inliner.
* except.c (duplicate_eh_region_1, duplicate_eh_region_2,
duplicate_eh_regions): New functions, based on old
implementation removed with RTL inliner.
(reachable_next_level): Modify behaviour pre-inline.
* except.h (duplicate_eh_regions_map, duplicate_eh_regions):
Declare.
* function.h (struct function): Add after_inlining flag.
* tree-optimize.c (tree_rest_of_compilation): Set it.
* tree-eh.c (add_stmt_to_eh_region_fn): Initialize hashtable
when needed.
* tree-cfg.c (label_to_block_fn): Deal with cases where
label was never insterted into code.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
Co-Authored-By: Stuart Hastings <stuart@apple.com>
From-SVN: r99625
Zack Weinberg [Thu, 12 May 2005 18:31:38 +0000 (18:31 +0000)]
directives.c (#sccs table entry): Mark IN_I, consistent with #ident.
libcpp:
* directives.c (#sccs table entry): Mark IN_I, consistent with #ident.
(do_sccs): Delete function definition, #define to do_ident.
(do_ident): Don't hardwire directive name.
gcc:
* doc/cpp.texi: Document that #sccs is a synonym for #ident.
From-SVN: r99623
Tobias Schlüter [Thu, 12 May 2005 18:19:37 +0000 (20:19 +0200)]
* trans-types.c (gfc_is_nodesc_array): Remove redundant check.
From-SVN: r99621
Thomas Koenig [Thu, 12 May 2005 17:50:33 +0000 (17:50 +0000)]
re PR libfortran/21324 (#undef GFC_CLEAR_MEMORY causes testsuite failures)
2005-05-12 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/21324
* runtime/memory.c: Don't define GFC_CLEAR_MEMORY (it's a
performance hog).
* io/open.c (new_unit): Zero freshly allocated memory for
unit structure.
* io/unit.c (init_units): Zero freshly allocated memory for
STDIN, STDOUT and STDERR.
* io/unix.c (open_internal): Zero freshly allocated memory
for unix_stream.
(fd_to_stream): Likewise.
From-SVN: r99619
Daniel Berlin [Thu, 12 May 2005 17:11:16 +0000 (17:11 +0000)]
re PR tree-optimization/21532 (ICE caused by PRE dead instruction removal)
2005-05-12 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/21532
* tree-ssa-pre.c (create_expression_by_pieces): stmt
needs to go onto the inserted_exprs list.
From-SVN: r99617
Ian Lance Taylor [Thu, 12 May 2005 13:06:15 +0000 (13:06 +0000)]
c-common.h (statement_code_p): Don't declare.
./: * c-common.h (statement_code_p): Don't declare.
(STATEMENT_CODE_P): Don't define.
(INIT_STATEMENT_CODES): Don't define.
* c-common.c (statement_code_p): Don't define.
cp/:
* cp-tree.h (cp_stmt_codes): Don't define.
(statement_code_p): Declare.
(STATEMENT_CODE_P): Define.
* lex.c (statement_code_p): Define.
(cxx_init): Use actual codes in stmt_codes initializer, not
cp_stmt_codes macro. Initialize statement_code_p directly, rather
than using INIT_STATEMENT_CODES.
From-SVN: r99615
Ryota Kunisawa [Thu, 12 May 2005 12:22:08 +0000 (21:22 +0900)]
re PR bootstrap/21230 (bootstrap failed unless bootstrap compiler is gcc.)
config/
PR bootstrap/21230
* warnings.m4 (ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Add
double quotes around GCC variable.
libcpp/
PR bootstrap/21230
* configure: Regenerate.
From-SVN: r99613
Eric Botcazou [Thu, 12 May 2005 12:07:07 +0000 (12:07 +0000)]
Revert latest accidental commit.
From-SVN: r99610
Eric Botcazou [Thu, 12 May 2005 11:43:05 +0000 (13:43 +0200)]
sparc.h: Remove dead code.
* config/sparc/sparc.h: Remove dead code.
* config/sparc/sparc.c (sparc_compute_frame_size): Use
FIRST_PARM_OFFSET for the size of the register window area.
(emit_save_regs): Rename into emit_save_or_restore_regs.
Add 'action' parameter. Use 4095 as upper bound for the offset.
Pass 'action' to save_or_restore_regs.
(emit_restore_regs): Delete.
(sparc_expand_prologue): Call emit_save_or_restore_regs.
(sparc_expand_epilogue): Likewise.
* config/sparc/sparc.md (mode macro P): Move.
(movdi_insn_sp32_v9, movdi_insn_sp32): Swap.
(mov<V32:mode> expander): Move to the top of the V32 section.
(movdf_insn_sp32_v9_no_fpu, movdf_insn_sp32_v9): Swap.
(movtf_insn_sp64_hq, movtf_insn_sp64): Swap.
(sibcall_epilogue): Move.
From-SVN: r99609
Richard Earnshaw [Thu, 12 May 2005 10:36:03 +0000 (10:36 +0000)]
re PR target/21501 (ICE in extract_insn, at recog.c:2082)
PR target/21501
* arm.c (arm_gen_constant): Sign-extend intermediate values when
synthesizing a constant of the difference of two immediates.
From-SVN: r99608
Richard Earnshaw [Thu, 12 May 2005 08:05:11 +0000 (08:05 +0000)]
vfp.md (negsf2_vfp): Add alternative using integer registers.
* arm/vfp.md (negsf2_vfp): Add alternative using integer registers.
(negdf2_vfp): Likewise. Convert to define_insn_and_split and split
the alternatives using integer registers into the appropriate
primitives.
From-SVN: r99607
Eli Zaretskii [Thu, 12 May 2005 03:44:58 +0000 (03:44 +0000)]
pex-djgpp.c: Include string.h, fcntl.h, unistd.h, and sys/stat.h.
2005-05-11 Eli Zaretskii <eliz@gnu.org>
* pex-djgpp.c: Include string.h, fcntl.h, unistd.h, and
sys/stat.h.
(pex_init): Fix last argument to pex_init_common.
(pex_djgpp_exec_child): Remove leading underscore from _open,
_dup, _dup2, _close, and _spawnv/_spawnvp. Replace `program',
which is undeclared, with `executable', which was unused. Remove
unused variable `e'. Fix casting of last arg to spawnv/spawnvp.
(pex_djgpp_wait): Declare arguments with ATTRIBUTE_UNUSED.
From-SVN: r99606
Kenneth Zadeck [Thu, 12 May 2005 03:01:44 +0000 (03:01 +0000)]
bitmap.c (bitmap_elmt_to_freelist, [...]): Changed freelist structure.
2005-05-11 Kenneth Zadeck <zadeck@naturalbridge.com>
* bitmap.c (bitmap_elmt_to_freelist, bitmap_element_allocate,
bitmap_elt_clear_from, bitmap_clear): Changed freelist structure.
* bitmap.h: Fixed comments.
From-SVN: r99605
Tom Tromey [Thu, 12 May 2005 01:27:15 +0000 (01:27 +0000)]
gcj.texi (Code Generation): Document -fbootstrap-classes.
gcc/java:
* gcj.texi (Code Generation): Document -fbootstrap-classes.
* decl.c (GCJ_BOOTSTRAP_LOADER_ADDITION): New macro.
(parse_version): Use it.
* lang.opt (-fbootstrap-classes): New option.
libjava:
* external/w3c_dom/Makefile.in: Rebuilt.
* external/w3c_dom/Makefile.am (libw3c_gcj_la_GCJFLAGS): Added
-fbootstrap-classes.
* external/sax/Makefile.in: Rebuilt.
* external/sax/Makefile.am (libsax_gcj_la_GCJFLAGS): Added
-fbootstrap-classes.
* java/lang/Class.h (_Jv_CopyClassesToSystemLoader): Declare as
friend.
* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal):
Call _Jv_CopyClassesToSystemLoader.
* java/lang/natClassLoader.cc (system_class_list): New global.
(_Jv_RegisterClassHookDefault): Handle bootstrap and system
classes differently.
(_Jv_CopyClassesToSystemLoader): New function.
(SYSTEM_LOADER_INITIALIZED): New define.
* include/jvm.h (GCJ_BOOTSTRAP_LOADER_ADDITION): New define.
(_Jv_CheckABIVersion): Use it.
(_Jv_ClassForBootstrapLoader): New function.
* Makefile.in: Rebuilt.
* Makefile.am (AM_GCJFLAGS): Added -fbootstrap-classes.
From-SVN: r99604
GCC Administrator [Thu, 12 May 2005 00:16:20 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99602.2
Tobias Schlüter [Wed, 11 May 2005 22:32:04 +0000 (00:32 +0200)]
re PR fortran/21260 (Conflict between comment and H edit descriptor)
fortran/
PR fortran/21260
* io.c (check_format): Look for literal characters inside
hollerith constant.
testsuite/
PR fortran/21260
* gfortran.dg/hollerith_1.f90: New test.
From-SVN: r99597
Richard Henderson [Wed, 11 May 2005 21:34:19 +0000 (14:34 -0700)]
re PR target/21412 (ICE loading TLS address)
PR target/21412
* config/ia64/ia64.c (TARGET_CANNOT_FORCE_CONST_MEM): New.
(ia64_cannot_force_const_mem): New.
(tls_symbolic_operand_type): New.
(ia64_legitimate_constant_p): New.
(ia64_expand_load_address): Return true on success. Improve
checks for when we should not split.
(ia64_expand_tls_address): New addend operand. Distribute it
as appropriate to the tls_kind. Delay referencing gp.
(ia64_expand_move): Split symbolic addend as necessary. Handle
tls symbols with addends.
* config/ia64/ia64-protos.h: Update.
* config/ia64/ia64.h (CALL_REALLY_USED_REGISTERS): False for r0,
p0, f0, f1, and r13.
(LEGITIMATE_CONSTANT_P): Move to ia64_legitimate_constant_p.
* config/ia64/ia64.md (UNSPEC_DTPMOD): New.
(symbolic_operand splitter): Pass everything through
ia64_expand_load_address and FAIL or DONE as appropriate.
(load_fptr): Only accept after reload.
(load_fptr_internal1, gprel64_offset, load_gprel64, load_symptr_high,
load_symptr_low, load_ltoff_dtpmod,
(load_dtpmod): New.
(load_dtprel): Only accept tls symbols.
(load_dtprel64, load_dtprel22): Likewise.
(load_tprel, load_tprel64, load_tprel22): Likewise.
(load_dtprel_gd, load_ltoff_dtprel, load_tprel_ie): New.
(add_dtprel): Only accept tls symbols. Canonicalize PLUS.
(add_dtprel14, add_dtprel22): Likewise.
(add_tprel, add_tprel14, add_tprel22): Likewise.
* config/ia64/predicates.md (small_addr_symbolic_operand): New.
(any_offset_symbol_operand, aligned_offset_symbol_operand): New.
(got_symbolic_operand): Check CONST offsets.
(tls_symbolic_operand, ld_tls_symbolic_operand): New.
(ie_tls_symbolic_operand, le_tls_symbolic_operand): New.
(move_operand): Don't handle tls here. Check CONST offsets.
From-SVN: r99596
Richard Sandiford [Wed, 11 May 2005 20:03:39 +0000 (20:03 +0000)]
7000.md (rm7_impy_si_mult): Just match imul and imadd.
* config/mips/7000.md (rm7_impy_si_mult): Just match imul and imadd.
Remove hilo_operand check.
(rm7_impy_si_mul): Just match imul3. Remove hilo_operand check.
* config/mips/predicates.md (hilo_operand): Delete.
From-SVN: r99592
Richard Sandiford [Wed, 11 May 2005 19:02:35 +0000 (19:02 +0000)]
* config/mips/sr71k.md, config/mips/7000.md: Reformat.
From-SVN: r99591
Kazu Hirata [Wed, 11 May 2005 18:27:33 +0000 (18:27 +0000)]
re PR tree-optimization/18472 (TREE_OPERAND (t, 1) is referenced for t being GOTO_EXPR)
PR tree-optimizer/18472
* tree-if-conv.c (tree_if_convert_stmt,
if_convertible_modify_expr_p): Don't handle GOTO_EXPR.
From-SVN: r99588
Tobias Schlüter [Wed, 11 May 2005 17:04:32 +0000 (19:04 +0200)]
Fix incomplete ChagneLog from previous checkin.
From-SVN: r99586
Jan Hubicka [Wed, 11 May 2005 16:25:30 +0000 (18:25 +0200)]
Makefile.in (tree-eh.o): Kill gt-tree-eh.h dependency.
* Makefile.in (tree-eh.o: Kill gt-tree-eh.h dependency.
(GTFILES): add except.h.
* except.c (eh_status): Add throw_stmt_table.
(set_eh_throw_stmt_table, get_eh_throw_stmt_table): New functions.
* except.h (add_stmt_to_eh_region_fn, remove_stmt_from_eh_region_fn,
lookup_stmt_eh_region_fn): Declare.
(throw_stmt_node): New structure.
(set_eh_throw_stmt_table, get_eh_throw_stmt_table): New.
* gengtype.c (open_base_files): Add except.h to inlines.
* tree-eh.c (throw_stmt_node): Kill.
(record_stmt_eh_region): Update.
(add_stmt_to_eh_region_fn): Break out from ...
(add_stmt_to_eh_region): ... here.
(remove_stmt_from_eh_region_fn): Break out from ...
(remove_stmt_from_eh_region): ... here.
(lookup_stmt_eh_region_fn): Break out from ...
(lookup_stmt_eh_region): ... here.
(honor_protect_cleanup_actions): Use build_resx.
(lower_try_finally_onedest): Likewise.
(lower_try_finally_copy): Likewise.
(lower_try_finally_switch): Likewise.
(lower_eh_constructs): Update eh table construction.
* tree.c (build_resx): New.
* tree.h (build_resx): Declare.
From-SVN: r99585
H.J. Lu [Wed, 11 May 2005 16:08:27 +0000 (16:08 +0000)]
libgcov.c (gcov_exit): Set prefix_length to 0 if no relocation is needed.
2005-05-11 H.J. Lu <hongjiu.lu@intel.com>
* libgcov.c (gcov_exit): Set prefix_length to 0 if no relocation
is needed.
From-SVN: r99584
Kazu Hirata [Wed, 11 May 2005 16:06:36 +0000 (16:06 +0000)]
tree-ssa-forwprop.c (forward_propagate_into_cond_1): Remove redundant code.
* tree-ssa-forwprop.c (forward_propagate_into_cond_1): Remove
redundant code.
From-SVN: r99583
Kazu Hirata [Wed, 11 May 2005 15:21:28 +0000 (15:21 +0000)]
* fold-const.c, libgcov.c: Fix comment typos.
From-SVN: r99582
Daniel Jacobowitz [Wed, 11 May 2005 14:59:09 +0000 (14:59 +0000)]
linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Define.
* config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Define.
* config/arm/arm.h (SUBTARGET_FRAME_POINTER_REQUIRED): Provide
default definition.
(FRAME_POINTER_REQUIRED): Use SUBTARGET_FRAME_POINTER_REQUIRED.
From-SVN: r99581
Tobias Schlüter [Wed, 11 May 2005 14:52:51 +0000 (16:52 +0200)]
resolve.c (resolve_symbol): Copy 'pointer' and 'dimension' attribute from result symbol to function symbol.
fortran/
* resolve.c (resolve_symbol): Copy 'pointer' and 'dimension'
attribute from result symbol to function symbol.
testsuite/
* gfortran.dg/func_result_2.f90: New test.
From-SVN: r99580
Nathan Sidwell [Wed, 11 May 2005 13:40:12 +0000 (13:40 +0000)]
re PR bootstrap/21481 (crtstuff.c should not include auto-host.h)
PR bootstrap/21481
* crtstuff.c: Include auto-host.h again, for now.
From-SVN: r99579
Richard Sandiford [Wed, 11 May 2005 13:08:50 +0000 (13:08 +0000)]
* config/mips/24k.md: Remove trailing whitespace.
From-SVN: r99578
David Ung [Wed, 11 May 2005 12:52:58 +0000 (12:52 +0000)]
mips.md (type): Add imul3.
* config/mips/mips.md (type): Add imul3.
(length, hazard, may_clobber_hilo): Check for imul3.
(mulsi3_mult3, muldi3_mult3, *muls, <su>mulsi3_highpart_mulhi_internal)
(*<su>mulsi3_highpart_neg_mulhi_internal): Set attr to imul3.
* config/mips/24k.md (r24k_int_mul3): Enable this reservation
for a 3 operand mul and its bypasses.
* config/mips/3000.md (r3k_imul): Add imul3 to reservations.
* config/mips/4000.md (r4k_imul): Likewise.
* config/mips/4100.md (r4100_imul_si, r4100_imul_di): Likewise.
* config/mips/4130.md (vr4130_class, vr4130_mulsi)
(vr4130_muldi): Likewise.
* config/mips/4300.md (r4300_imul_si, r4300_imul_di): Likewise.
* config/mips/4600.md (r4600_imul, r4650_imul): Likewise.
* config/mips/5000.md (r5k_imul_si, r5k_imul_di): Likewise.
* config/mips/5400.md (ir_vr54_imul_si, ir_vr54_imul_di)
(ir_vr54_imadd_si): Likewise.
* config/mips/5500.md (ir_vr55_imul_si, ir_vr55_imul_di): Likewise.
* config/mips/7000.md (rm7_impy_si_mult, rm7_impy_si_mul)
(rm7_impy_di): Likewise.
* config/mips/9000.md (rm9k_mulsi, rm9k_muldi): Likewise.
* config/mips/generic.md (generic_imul): Likewise.
* config/mips/sb1.md (ir_sb1_mulsi, ir_sb1_muldi): Likewise.
* config/mips/sr71k.md (ir_sr70_imul_si, ir_sr70_imul_di): Likewise.
From-SVN: r99577
J"orn Rennecke [Wed, 11 May 2005 12:24:43 +0000 (12:24 +0000)]
re PR middle-end/20371 (Some corner cases of MS bitfields don't work)
PR middle-end/20371:
* tree.h (record_layout_info_s): New member prev_packed.
* stor-layout.c (update_alignment_for_field): Fix comment about
KNOWN_ALIGN. For MS bitfields, if we start a new run, make sure
we start it properly aligned.
(place_field): At the beginning of a record, pass 0 as KNOWN_ALIGN
to update_alignment_for_field, and recompute it afterwards using
the alignment of the record.
When a packed bitfield precedes an MS bitfield, don't add padding
at the end of the packed bitfield on behalf of the base type of
the packed bit field.
Don't adjust rli->bitpos at the end
of an MS bitfield run if we already adjusted bitpos/offset for an
alignment as large or larger than the bitfield type size.
Take possible record alignment > BIGGEST_ALIGNMENT into account
when calculating actual_align.
Only put packed buit fields into rli->prev_field if they end up
suitably aligned.
Also set rli->remaining_in_alignment when we re-set rli->prev_field.
Update rli->remaining_in_alignment when we have already started a
run of bit fields and we process a packed bit field.
From-SVN: r99574
Sebastian Pop [Wed, 11 May 2005 11:03:31 +0000 (13:03 +0200)]
tree-data-ref.c (find_data_references_in_loop): Give up when the body of the loop contains a CALL_EXPR or an ASM_EXPR...
* tree-data-ref.c (find_data_references_in_loop): Give up when
the body of the loop contains a CALL_EXPR or an ASM_EXPR: they
may embed arbitrary side effects.
Remove the assumption that GIMPLE form contains a single array
access per statement.
When the statement contains virtual operands, fail if it is not
a MODIFY_EXPR or a CALL_EXPR.
Return after the dont know node is inserted.
From-SVN: r99573
Bud Davis [Wed, 11 May 2005 10:34:05 +0000 (10:34 +0000)]
re PR libfortran/19478 (reading back from /dev/null)
PR fortran/19478
* io/unix.c (fd_truncate): update positions when ftruncate
fails (like writing to /dev/null).
* gfortran.dg/dev_null.f90: New test.
From-SVN: r99570
Richard Earnshaw [Wed, 11 May 2005 10:13:23 +0000 (10:13 +0000)]
arm.md (negsf2, negdf2): Permit these expands when compiling for VFP.
* arm.md (negsf2, negdf2): Permit these expands when compiling for VFP.
* gcc.dg/arm-vfp1.c: Revert last change.
From-SVN: r99569
Richard Guenther [Wed, 11 May 2005 08:14:44 +0000 (08:14 +0000)]
re PR middle-end/19807 (fold does not fold &a[4]-1)
2005-05-11 Richard Guenther <rguenth@gcc.gnu.org>
PR middle-end/19807
PR tree-optimization/19639
* fold-const.c (try_move_mult_to_index): Handle INTEGER_CST
and generic summands for char* as s * delta, too, folding &a[i]
CODE x to &a[i CODE x/s]. Use tree_int_cst_equal
for comparison of steps. Convert types for index addition.
(fold_binary): Adjust the callers to always dispatch to
try_move_mult_to_index.
* tree-ssa-propagate.c (set_rhs): Avoid setting rhs to
expr with non-gimple ARRAY_REF offset.
* g++.dg/tree-ssa/pr19807.C: New testcase.
From-SVN: r99568
Richard Guenther [Wed, 11 May 2005 07:43:33 +0000 (07:43 +0000)]
fold-const.c (fold_indirect_ref_1): Avoid removing NOP_EXPRs with type qualifiers like const.
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: r99566
Richard Henderson [Wed, 11 May 2005 07:33:31 +0000 (00:33 -0700)]
re PR c/21502 (small data relocation mismatch)
PR c/21502
* c-decl.c (finish_decl): Propagate the completed array type of
a global variable into the binding.
From-SVN: r99563
Francois-Xavier Coudert [Wed, 11 May 2005 05:56:20 +0000 (07:56 +0200)]
re PR libfortran/21471 ('POSITION = "APPEND"' doesn't seem to work)
PR libfortran/21471
* open.c (new_unit): Take care of the case where POSITION_APPEND
is specified (sseek to the end, and set u>-endfile).
* gfortran.dg/append-1.f90: New test.
From-SVN: r99560