hubicka [Tue, 28 Nov 2006 14:30:49 +0000 (14:30 +0000)]
Oops, wrong file committed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119293
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 28 Nov 2006 14:20:04 +0000 (14:20 +0000)]
* builtins.c: Include tree-flow.h.
(fold_builtin_memory_op): Be more aggressive on converting memcpy to
assignment; convert memmove to memcpy for sizes greater than 1 where
alignment of operands prohibit the partial overlap.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119292
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 28 Nov 2006 12:56:53 +0000 (12:56 +0000)]
PR c++/29735
* decl.c (grokfndecl): Check main's type after applying
attributes, not before.
* g++.dg/warn/main-3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119287
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 28 Nov 2006 12:04:32 +0000 (12:04 +0000)]
* sv.po, tr.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119284
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 28 Nov 2006 10:53:16 +0000 (10:53 +0000)]
* invoke.texi (large-stack-frame, large-stack-frame-growth): New params.
* cgraph.c (dump_cgraph_node): Dump stack usage.
* cgraph.h (cgraph_local_info): Add estimated_self_stack_size.
(cgraph_global_info): Add estimated_stack_size and stack_frame_offset.
* cgraphunit.c (cgraph_analyze_function): Analyze stack sizes.
* ipa-inline.c (cgraph_clone_inlined_nodes): Propagate stack usage.
(cgraph_check_inline_limits): Limit stack growth.
* cfgexpand.c: Include tree-inline.h.
(account_stack_vars): New function.
(expand_one_var): New param to just account the stack; return estimated
size.
(expand_used_vars_for_block): Update call of expand_one_var.
(account_used_vars_for_block): New function.
(estimated_stack_frame_size): Likewise.
(init_vars_expansion, fini_vars_expansion): Break out from..
(expand_used_vars): ... here.
* tree-inline.h (estimated_stack_frame_size): Declare.
* params.def (PARAM_LARGE_STACK_FRAME, PARAM_STACK_FRAME_GROWTH): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119281
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 28 Nov 2006 10:03:49 +0000 (10:03 +0000)]
2006-11-28 Richard Guenther <rguenther@suse.de>
* ggc-page.c (ggc_print_statistics): Use %ul and a cast to
unsigned long for printing OBJECT_SIZE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119280
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Tue, 28 Nov 2006 07:44:11 +0000 (07:44 +0000)]
* gcc.dg/pack-test-1.c: Use __alignof__ to determine natural
alignments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119277
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Tue, 28 Nov 2006 06:05:25 +0000 (06:05 +0000)]
* sysdep/x86-64/locks.h: Enable use of either file on either
target to support multilibs from one to the other.
* sysdep/i386/locks.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119276
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 28 Nov 2006 05:39:42 +0000 (05:39 +0000)]
2006-11-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29976
* trans-expr.c (gfc_conv_missing_dummy): Remove build_int_const
and replace with cast to type of se->expr of integer_zero_node.
2006-11-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29976
* gfortran.dg/missing_optional_dummy_3.f90
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119273
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 28 Nov 2006 05:36:07 +0000 (05:36 +0000)]
2006-11-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20880
* resolve.c (resolve_fl_procedure): Error if procedure is
ambiguous modified to require attr.referenced.
2006-11-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20880
* gfortran.dg/interface_3.f90: Modify errors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119272
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 28 Nov 2006 02:19:02 +0000 (02:19 +0000)]
* class.c (build_vcall_offset_vtbl_entries): Do not add vcall
entries for a primary construction virtual table.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119271
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Tue, 28 Nov 2006 02:14:26 +0000 (02:14 +0000)]
* lib/gcc-defs.exp (${tool}_check_compile): xfail test cases that
fail to link due to relocation overflows on spu-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119270
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 28 Nov 2006 00:18:00 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119267
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Mon, 27 Nov 2006 23:15:38 +0000 (23:15 +0000)]
* alias.c (init_alias_analysis): Remove simplification loop
after propagating pointers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119262
138bc75d-0d04-0410-961f-
82ee72b054a4
bwilson [Mon, 27 Nov 2006 20:15:58 +0000 (20:15 +0000)]
* xtensa-config.h (XSHAL_ABI): New.
(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119261
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 27 Nov 2006 19:50:40 +0000 (19:50 +0000)]
* config/i386/i386.c (x86_ext_80387_constants): Add m_K8, m_CORE2
and m_GENERIC64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119260
138bc75d-0d04-0410-961f-
82ee72b054a4
bwilson [Mon, 27 Nov 2006 18:48:57 +0000 (18:48 +0000)]
* config/xtensa/xtensa.h (XCHAL_HAVE_MUL32_HIGH): Provide default.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119259
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Mon, 27 Nov 2006 18:47:41 +0000 (18:47 +0000)]
2006-11-27 Roger Sayle <roger@eyesopen.com>
Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* c-common.c (constant_fits_type_p): Delete.
(unsigned_conversion_warning): Delete.
(conversion_warning): Integrate Wconversion warning from
unsigned_conversion_warning.
(convert_and_check): Integrate Woverflow warning from
unsigned_conversion_warning. Reorganize and simplify to avoid
dependence upon the middle-end setting TREE_OVERFLOW on integral
conversions, by using int_fits_type_p directly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119258
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 27 Nov 2006 16:43:12 +0000 (16:43 +0000)]
2006-11-27 Tobias Burnus <burnus@net-b.de>
* doc/invoke.texi: Fixed typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119257
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Mon, 27 Nov 2006 16:34:19 +0000 (16:34 +0000)]
2006-11-27 Michael Matz <matz@suse.de>
Andreas Krebbel <krebbel1@de.ibm.com>
PR target/29319
* config/s390/predicates.md (larl_operand): Check addend of larl
operand to be in range of -/+2GB.
* config/s390/s390.c (legitimize_pic_address): Likewise.
Changed type of variable even to HOST_WIDE_INT.
2006-11-27 Michael Matz <matz@suse.de>
Andreas Krebbel <krebbel1@de.ibm.com>
PR target/29319
* gcc.dg/
20061127-1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119256
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 27 Nov 2006 16:10:36 +0000 (16:10 +0000)]
* gcc.dg/
20061124-1.c: Add exit() function prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119253
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 27 Nov 2006 16:00:26 +0000 (16:00 +0000)]
* expr.c (emit_block_move_via_libcall): Export.
(clear_storage_via_libcall): Rename to ...
(set_storage_via_libcall): ... this one; handle arbitrary value to set.
(clear_storage): Update to set_storage_via_libcall.
* expr.h (emit_block_move_via_libcall): Declare
* config/i386/i386.h (stringop_alg): New enum.
(MAX_STRINGOP_ALGS): New constant.
(stringop_algs): New struct.
(processor_costs): Add memcpy/memset descriptors.
(TARGET_REP_MOVEL_OPTIMAL): Remove.
* config/i386/i386.md (movsi_insv_1_rex64): New pattern.
(strmovsi, strmovdi, strsetsi, strsetdi): Update; accept all operands
for memset.
* config/i386/i386.opt (minline-stringops-dynamically,
mstringop-strategy): New
parameters.
* config/i386/i386-prostos.h (ix86_expand_movmem): Update prototype.
(ix86_expand-clrmem): Rename to ...
(ix86_expand_setmem): ... this one; update prototype.
* config/i386/i386.c (DUMMY_STRINGOP_ALGS): New constant.
(size_cost, i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
geode_cost, k6_cost, athlon_cost, k8_cost, pentium4_cost,
nocona_cost, core2_cost, generic_cost, generic64_cost,
generic32_cost): Add memcpy/memset descriptors.
(x86_rep_movl_optimal): Remove.
(stringop_alg): New static variable.
(ix86_expand_aligntest): Handle predictions.
(override_options): Add strgop_alg handling.
(predict_jump): New function.
(scale_counter): New function.
(expand_set_or_movmem_via_loop): New function.
(expand_movmem_via_rep_mov): New function.
(expand_setmem_via_rep_stots): New function.
(emit_strmov): New function.
(expand_movmem_epilogue): New function.
(expand_setmem_epilogue_via_loop): New function.
(expand_setmem_epilogue): New function.
(expand_movmem_prologue): New function.
(expand_setmem_prologue): New function.
(decide_alg): New function.
(decide_alignment): New function.
(ix86_exand_movmem): Rewrite.
(promote_duplicated_reg): New function.
(ix86_expand_clrmem): Rename to ...
(ix86_expand_setmem): ... this one. Rewrite.
* invoke.texi (minline-stringops-dynamically): New command line option.
(mstringop-strategy): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119252
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 27 Nov 2006 15:21:36 +0000 (15:21 +0000)]
* cfgexpand.c (construct_exit_block): Don't disturb end of last BB.
* rtl.texi (NOTE_INSN_FUNCTION_END): Remove.
* final.c (final_scan_insn): Don't scan NOTE_INSN_FUNCTION_END.
* insn-notes.def (FUNCTION_END): Remove.
* jump.c (delete_related_insns): Don't worry about FUNCTION_END.
(redicect_jump_2): Don't accept -1 parameter to remove FUNCTION_END
note.
* ifcvt.c (dead_or_predictable): Update call of redirect_jump_2.
* function.c (expand_function_end): Don't emit NOTE_INSN_FUNCTION_END
* cfglayout.c (duplicate_insn_chain): Don't worry about
NOTE_FUNCTION_END.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119251
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 27 Nov 2006 15:07:10 +0000 (15:07 +0000)]
* cfgexpand.c (construct_exit_block): Don't disturb end of last BB.
* rtl.texi (NOTE_INSN_FUNCTION_END): Remove.
* final.c (final_scan_insn): Don't scan NOTE_INSN_FUNCTION_END.
* insn-notes.def (FUNCTION_END): Remove.
* jump.c (delete_related_insns): Don't worry about FUNCTION_END.
(redicect_jump_2): Don't accept -1 parameter to remove FUNCTION_END
note.
* ifcvt.c (dead_or_predictable): Update call of redirect_jump_2.
* function.c (expand_function_end): Don't emit NOTE_INSN_FUNCTION_END
* cfglayout.c (duplicate_insn_chain): Don't worry about
NOTE_FUNCTION_END.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119250
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 27 Nov 2006 12:41:51 +0000 (12:41 +0000)]
2006-11-27 Richard Guenther <rguenther@suse.de>
Zdenek Dvorak <dvorakz@suse.cz>
* target.h (struct gcc_target): Add builtin_vectorized_function
target hook.
* target-def.h (TARGET_VECTORIZE): Likewise.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
Document new target hook.
* targhooks.h (default_builtin_vectorized_function): Declare.
* targhooks.c (default_builtin_vectorized_function): Define.
* tree-vectorizer.h (stmt_vec_info_type): Add call_vec_info_type.
(vectorizable_call): Declare.
* tree-vect-analyze.c (vect_analyze_operations): Call
vectorizable_call.
* tree-vect-transform.c (vectorizable_function): New static function.
(build_vectorized_function_call): Likewise.
(vectorizable_call): New function.
(vect_transform_stmt): Handle vectorizable calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119249
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 27 Nov 2006 11:38:42 +0000 (11:38 +0000)]
2006-11-27 Richard Guenther <rguenther@suse.de>
PR middle-end/25620
* builtins.c (expand_builtin_pow): Optimize non integer valued
constant exponents using sqrt or cbrt if possible. Always fall back
to expanding via optabs.
* gcc.target/i386/pow-1.c: New testcase.
* gcc.dg/builtins-58.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119248
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Mon, 27 Nov 2006 08:10:23 +0000 (08:10 +0000)]
PR tree-optimization/22372
* tree-vect-transform.c (vect_create_addr_base_for_vector_ref): Convert
the type of the base address.
(vect_create_data_ref_ptr): Add an argument, type of the data-ref. Use
it in the data-ref pointer creation.
(vect_init_vector): Add an argument, type of the init vector. Use it in
the stmt creation.
(vect_get_vec_def_for_operand): Fix calls to vect_init_vector.
(get_initial_def_for_reduction): Likewise.
(vect_create_epilog_for_reduction): Change type of MODIFY_EXPR to
void_type_node.
(vectorizable_assignment, vect_permute_store_chain): Likewise.
(vectorizable_store): Fix call to vect_create_data_ref_ptr. Use the
correct type in stmt creation.
(vect_setup_realignment): Use the correct type in stmt creation.
(vect_permute_load_chain): Change type of MODIFY_EXPR to
void_type_node.
(vectorizable_load): Fix calls to vect_create_data_ref_ptr. Change type
of MODIFY_EXPR to void_type_node.
(vectorizable_condition): Change type of MODIFY_EXPR to
void_type_node.
(vect_update_ivs_after_vectorizer): Use the correct type in stmt
creation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119247
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 27 Nov 2006 08:03:45 +0000 (08:03 +0000)]
Revert:
2006-05-08 Uros Bizjak <uros@kss-loka.si>
* config/i386/i386.c (ix86_rtx_costs) [FLOAT_EXTEND]: For
standard 80387 constants, raise the cost to prevent
compress_float_constant() to generate load from memory.
* config/i386/i386.md: Add new splitter pattern to split
float_extended load of constant from constant pool into
pure constant load.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119246
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 27 Nov 2006 03:38:57 +0000 (03:38 +0000)]
PR c++/29886
* parser.c (cp_parser): Add in_function_body.
(cp_parser_new): Initialize it.
(cp_parser_primary_expression): Use parser->in_function_body
instead of at_function_scope_p.
(cp_parser_asm_definition): Likewise.
(cp_parser_direct_declarator): Likewise.
(cp_parser_class_specifier): Clear parser->in_function_body.
(cp_parser_constructor_declarator_p): Use parser->in_function_body
instead of at_function_scope_p.
(cp_parser_function_body_after_declarator): Set
parser->in_function_body.
PR c++/29886
* g++.dg/expr/cast8.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119242
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Mon, 27 Nov 2006 00:23:24 +0000 (00:23 +0000)]
Checkin ChangeLogs from previous checkin.
* configure.in (--with-mpfr-dir, --with-gmp-dir): Remove flags.
(--with-mpfr-include, --with-mpfr-lib, --with-gmp-include,
--with-gmp-lib): New flags.
* configure: Regenerate.
gcc:
* doc/install.texi: Move GMP/MPFR configure options from Fortran
section to general section. Remove documentation for
--with-mpfr-dir and --with-gmp-dir, add documentation for
--with-mpfr-include, --with-mpfr-lib, --with-gmp-include and
--with-gmp-lib.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119240
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 27 Nov 2006 00:18:23 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119238
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sun, 26 Nov 2006 22:37:33 +0000 (22:37 +0000)]
* configure.in (--with-mpfr-dir, --with-gmp-dir): Remove flags.
(--with-mpfr-include, --with-mpfr-lib, --with-gmp-include,
--with-gmp-lib): New flags.
* configure: Regenerate.
gcc:
* doc/install.texi: Move GMP/MPFR configure options from Fortran
section to general section. Remove documentation for
--with-mpfr-dir and --with-gmp-dir, add documentation for
--with-mpfr-include, --with-mpfr-lib, --with-gmp-include and
--with-gmp-lib.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119232
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 26 Nov 2006 18:27:19 +0000 (18:27 +0000)]
Fix oversight.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119228
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sun, 26 Nov 2006 14:35:54 +0000 (14:35 +0000)]
* builtins.c (fold_builtin_fmin_fmax): Handle NaN arguments.
testsuite:
* gcc.dg/torture/builtin-minmax-1.c: Test NaN in fmin/fmax.
Don't ever inline the testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119224
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 26 Nov 2006 12:25:50 +0000 (12:25 +0000)]
PR fortran/29892
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Use a locus in
the call to gfc_trans_runtime_check.
* trans-array.c (gfc_trans_array_bound_check): Try harder to find
the variable or function name for the runtime error message.
(gfc_trans_dummy_array_bias): Use a locus in the call to
gfc_trans_runtime_check
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119223
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Sun, 26 Nov 2006 10:29:28 +0000 (10:29 +0000)]
2006-11-26 Razya Ladklesky <razya@il.ibm.com>
* testsuite/gcc.dg/ipa/ipa-6.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119222
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sun, 26 Nov 2006 10:04:25 +0000 (10:04 +0000)]
2006-11-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
* include/bits/stl_tree.h (_Rb_tree<>::_M_equal_range): Add.
(equal_range(const key_type&)): Use it.
2006-11-26 Paolo Carlini <pcarlini@suse.de>
* testsuite/23_containers/multiset/operations/1.cc: New.
* testsuite/23_containers/set/operations/1.cc: Likewise.
* testsuite/23_containers/multimap/operations/1.cc: Likewise.
* testsuite/23_containers/map/operations/1.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119221
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Sun, 26 Nov 2006 10:00:18 +0000 (10:00 +0000)]
2006-11-26 Razya Ladklesky <razya@il.ibm.com>
PR tree-optimization/29122
* tree-inline.c (tree_function_versioning): Update DECL_ASSEMBLER_NAME
for the new version. Assign NULL to DECL_RTL of the new version.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119220
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Sun, 26 Nov 2006 08:09:05 +0000 (08:09 +0000)]
2006-11-26 Andrew Pinski <pinskia@gmail.com>
* trans-decl.c (gfc_build_intrinsic_function_decls): Mark the
pow functions as constant functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119219
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Sun, 26 Nov 2006 04:42:00 +0000 (04:42 +0000)]
2006-11-25 Andrew Pinski <pinskia@gmail.com>
PR fortran/29982
* trans-expr.c (gfc_conv_expr_reference): Strip off NOP_EXPRs.
2006-11-25 Andrew Pinski <pinskia@gmail.com>
PR fortran/29982
* gfortran.fortran-torture/compile/parameter_3.f90: New
testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119218
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 26 Nov 2006 00:17:37 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119216
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Sat, 25 Nov 2006 21:43:48 +0000 (21:43 +0000)]
2006-11-25 Andrew Pinski <pinskia@gmail.com>
PR fortran/29951
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Change to
call memcpy instead of creating a VIEW_CONVERT_EXRP.
2006-11-25 Andrew Pinski <pinskia@gmail.com>
PR fortran/29951
* gfortran.fortran-torture/execute/transfer2.f90: New test
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119211
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sat, 25 Nov 2006 21:40:53 +0000 (21:40 +0000)]
* reg-stack.c (get_true_reg): Fix UNSPEC_TRUNC_NOOP handling.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119210
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Sat, 25 Nov 2006 21:23:27 +0000 (21:23 +0000)]
* cse.c (cse_altered): Remove.
(record_jump_equiv): Make true/false argument a bool instead
of an int.
(cse_insn): Don't set cse_altered. Use delete_insn_and_edges
where appropriate. Emit a new jump before the existing one
instead of after so that delete_insn_and_edges removes the
dead edges properly. Check any_condjump_p before calling
record_jump_equiv.
(cse_basic_block): Check any_condjump_p before calling
record_jump_equiv.
(cse_main): Don't set/check cse_altered. Remove USE_C_ALLOCA.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119209
138bc75d-0d04-0410-961f-
82ee72b054a4
brooks [Sat, 25 Nov 2006 19:15:29 +0000 (19:15 +0000)]
* c.opt: Remove -ffixed-form, -ffixed-line-length-none, and
-ffixed-line-length-* options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119206
138bc75d-0d04-0410-961f-
82ee72b054a4
brooks [Sat, 25 Nov 2006 19:08:22 +0000 (19:08 +0000)]
* MAINTAINERS (Write After Approval): Change my email address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119205
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 25 Nov 2006 17:22:53 +0000 (17:22 +0000)]
* Makefile.am: Remove intrinsics/erf.c and intrinsics/bessel.c.
* Makefile.in: Regenerate.
* intrinsics/erf.c: Remove.
* intrinsics/bessel.c: Remove.
* c99_protos.h: Add prototypes for bessel and error functions.
* intrinsics/c99_functions.c: Move content for intrinsics/erf.c
and intrinsics/bessel.c here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119204
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 25 Nov 2006 16:57:25 +0000 (16:57 +0000)]
PR fortran/29711
* error.c (error_print): Handle printf-style position specifiers,
of the form "%3$d".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119203
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sat, 25 Nov 2006 15:05:53 +0000 (15:05 +0000)]
config/i386/i386.md (fpremxf4): Rename to fpremxf4_i387.
(fprem1xf4): Rename to fprem1xf4_i387.
(fmodsf3, fmoddf3): Macroize patterns using X87MODEF12 mode macro.
Rename patterns to fmod<mode>3. Use general_operand operand
constraint for operands 1 and 2. Use SSE_FLOAT_MODE_P to disable
patterns for SSE math.
(remaindersf3, remainderdf3): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119199
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 25 Nov 2006 14:28:56 +0000 (14:28 +0000)]
PR fortran/29973
* gfortran.fortran-torture/execute/specifics.f90: Remove test
for CHAR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119197
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sat, 25 Nov 2006 14:12:23 +0000 (14:12 +0000)]
Add some missing >s.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119196
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sat, 25 Nov 2006 13:21:43 +0000 (13:21 +0000)]
* function.c (instantiate_virtual_regs_in_insn): Call force_reg
inside start_sequence / end_sequence pair.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119192
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Sat, 25 Nov 2006 10:53:06 +0000 (10:53 +0000)]
* jump.c (mark_all_labels): Work in cfglayout mode.
* cfgcleanup.c (cleanup_cfg): Do not call delete_dead_jumptables
when in cfglayout mode, because there are no dead jumptables
visible.
* cfgrtl.c (commit_one_edge_insertion): Don't set bb->aux when
in cfglayout mode.
(commit_edge_insertions): Do not allow insertion of instructions
with control flow insns when in cfglayout mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119191
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sat, 25 Nov 2006 10:35:52 +0000 (10:35 +0000)]
2006-11-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::destroy_node): Uglify.
(_M_erase, erase(iterator), erase(const_iterator)): Adjust
2006-11-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::_M_lower_bound(_Const_Link_type,
_Const_Link_type, const _Key&), _M_upper_bound(_Const_Link_type,
_Const_Link_type, const _Key&)): Add.
(lower_bound(const key_type&), upper_bound(const key_type&),
find(const key_type&)): Call the latter.
2006-11-25 Gawain Bolton <gp.bolton@computer.org>
PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree_rotate_left,
_Rb_tree_rotate_right): Do not declare.
(_Rb_tree<>::_M_insert(_Base_ptr, _Base_ptr, const value_type&),
_M_insert(_Const_Base_ptr, _Const_Base_ptr, const value_type&),
_M_insert_unique(iterator, const value_type&),
_M_insert_unique(const_iterator, const value_type&),
_M_insert_equal(iterator, const value_type&),
_M_insert_equal(const_iterator, const value_type&)):
Remove.
(_Rb_tree<>::_M_insert_(_Const_Base_ptr, _Const_Base_ptr,
const value_type&), _M_insert_unique_(const_iterator,
const value_type&), _M_insert_equal_(const_iterator,
const value_type&)): Add, adjust all callers.
* include/bits/stl_map.h (map<>::insert(iterator, const value_type&)):
Adjust.
* include/bits/stl_set.h (set<>::insert(iterator, const value_type&)):
Likewise.
* include/bits/stl_multimap.h (multimap<>::insert(iterator,
const value_type&)): Likewise.
* include/bits/stl_multiset.h (multiset<>::insert(iterator,
const value_type&)): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119190
138bc75d-0d04-0410-961f-
82ee72b054a4
rakdver [Sat, 25 Nov 2006 10:34:13 +0000 (10:34 +0000)]
* tree-vrp.c (execute_vrp): Do not pass loops structure through
arguments.
* loop-unswitch.c (unswitch_loops, unswitch_single_loop,
unswitch_loop): Ditto.
* tree-loop-linear.c (linear_transform_loops): Ditto.
* tree-ssa-loop-im.c (determine_lsm, tree_ssa_lim_initialize,
tree_ssa_lim): Ditto.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations,
free_numbers_of_iterations_estimates): Ditto.
* tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops,
tree_unswitch_single_loop, tree_unswitch_loop): Ditto.
* cfgloopmanip.c (fix_bb_placement, fix_bb_placements,
remove_path, add_loop, loopify, unloop, fix_loop_placements,
place_new_loop, duplicate_loop, duplicate_subloops,
update_single_exit_for_duplicated_loops, copy_loops_to,
duplicate_loop_to_header_edge, create_preheaders,
force_single_succ_latches, loop_version, fix_loop_structure):
Ditto.
* tree-ssa-loop-manip.c (tree_duplicate_loop_to_header_edge,
tree_unroll_loop): Ditto.
* tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
* tree-scalar-evolution.c (select_loops_exit_conditions,
scev_initialize, scev_analysis): Ditto.
* tree-scalar-evolution.h (scev_initialize): Ditto.
* cfghooks.c (cfg_hook_duplicate_loop_to_header_edge): Ditto.
* cfgloopanal.c (mark_irreducible_loops, mark_loop_exit_edges): Ditto.
* tree-ssa-loop-ivopts.c (tree_ssa_iv_optimize): Ditto.
* modulo-sched.c (sms_schedule): Ditto.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Ditto.
* loop-init.c (loop_optimizer_init, rtl_move_loop_invariants,
rtl_unswitch, rtl_unroll_and_peel_loops, rtl_doloop): Ditto.
* ifcvt.c (if_convert): Ditto.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely,
canonicalize_loop_induction_variables,
canonicalize_induction_variables,
tree_unroll_loops_completely, remove_empty_loops): Ditto.
* tree-ssa-loop.c (tree_ssa_loop_init, tree_ssa_loop_im,
tree_ssa_loop_unswitch, tree_vectorize, tree_linear_transform,
tree_ssa_loop_ivcanon, tree_ssa_empty_loop, tree_ssa_loop_bounds,
tree_complete_unroll, tree_ssa_loop_prefetch, tree_ssa_loop_ivopts,
tree_ssa_loop_done): Ditto.
* predict.c (predict_loops, tree_estimate_probability, estimate_loops,
estimate_bb_frequencies): Ditto.
* tree-vectorizer.c (slpeel_tree_duplicate_loop_to_edge_cfg,
slpeel_tree_peel_loop_to_edge, vectorize_loops): Ditto.
* loop-unroll.c (unroll_and_peel_loops, peel_loops_completely,
decide_unrolling_and_peeling, peel_loop_completely,
unroll_loop_constant_iterations, unroll_loop_runtime_iterations,
peel_loop_simple, unroll_loop_stupid): Ditto.
* loop-doloop.c (doloop_optimize_loops): Ditto.
* tree-cfgcleanup.c (cleanup_tree_cfg_loop): Ditto.
* loop-invariant.c (move_loop_invariants): Ditto.
* tree-ssa-dce.c (tree_ssa_dce_loop): Ditto.
* tree-ssa-loop-prefetch.c (loop_prefetch_arrays,
tree_ssa_prefetch_arrays): Ditto.
* lambda-code.c (gcc_loopnest_to_lambda_loopnest, perfect_nestify):
Ditto.
* tree-vect-transform.c (vect_do_peeling_for_loop_bound,
vect_do_peeling_for_alignment, vect_transform_loop): Ditto.
* cfgloop.c (flow_loops_cfg_dump, flow_loops_dump,
mark_single_exit_loops, cancel_loop, cancel_loop_tree,
verify_loop_structure): Ditto.
* tree-flow.h (vectorize_loops, tree_ssa_lim, tree_ssa_unswitch_loops,
canonicalize_induction_variables, tree_unroll_loops_completely,
tree_ssa_prefetch_arrays, remove_empty_loops, tree_ssa_iv_optimize,
estimate_numbers_of_iterations, free_numbers_of_iterations_estimates,
tree_duplicate_loop_to_header_edge, tree_ssa_loop_version,
tree_unroll_loop, linear_transform_loops): Declaration changed.
* basic-block.h: Remove declaration of struct loops.
* cfghooks.h (struct cfg_hooks): Change type of
cfg_hook_duplicate_loop_to_header_edge.
(cfg_hook_duplicate_loop_to_header_edge): Declaration changed.
* tree-vectorizer.h (slpeel_tree_peel_loop_to_edge,
vect_transform_loop): Declaration changed.
* lambda.h (gcc_loopnest_to_lambda_loopnest): Declaration changed.
* cfgloop.h (flow_loops_dump, fix_loop_structure,
mark_irreducible_loops, mark_single_exit_loops, mark_loop_exit_edges,
cancel_loop_tree, create_preheaders, force_single_succ_latches,
verify_loop_structure, duplicate_loop, duplicate_loop_to_header_edge,
loopify, loop_version, remove_path, unswitch_loops,
unroll_and_peel_loops, doloop_optimize_loops, move_loop_invariants):
Declaration changed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119189
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sat, 25 Nov 2006 09:17:57 +0000 (09:17 +0000)]
config/i386/i386.md (UNSPEC_TRUNC_NOOP): New unspec definition.
(X87MODEF): New mode macro.
(ssemodefsuffix): New mode attribute.
(truncxf<mode>2_i387_noop_unspec): New insn pattern.
(sqrt_extend<mode>xf2_i387): New insn pattern.
(sqrt<mode>2): For non-SSE sqrt, emit sqrt_extend<mode>xf2_i387
insn and truncate result back to original mode using
UNSPEC_TRUNC_NOOP truncation.
(*sqrt<mode>2_sse): Implement using SSEMODEF mode macro and
ssemodefsuffix mode attribute.
(*sqrtsf2_mixed, *sqrtsf2_i387, *sqrtdf2_mixed, *sqrtdf2_i387)
(*sqrtextendsfdf2_i387, *sqrtextendsfxf2_i387)
(*sqrtextenddfxf2_i387): Remove insn patterns.
(fmodsf3, fmoddf3, remaindersf3, remainderdf3): Use noop
truncation patterns.
reg-stack.c (get_true_reg): Handle UNSPEC_TRUNC_NOOP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119188
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sat, 25 Nov 2006 06:56:51 +0000 (06:56 +0000)]
2006-11-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29936
* gfortran.dg/write_check3.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119183
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 25 Nov 2006 00:17:47 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119181
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Fri, 24 Nov 2006 23:08:08 +0000 (23:08 +0000)]
2006-11-24 Andrew Pinski <andrew_pinski@playstation.sony.com
* gcc.dg/
20061124-1.c: Add "exit(0);" to the end of main.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119176
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Fri, 24 Nov 2006 22:22:40 +0000 (22:22 +0000)]
2006-11-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20880
* parse.c (parse_interface): Error if procedure name is that of
encompassing scope.
* resolve.c (resolve_fl_procedure): Error if procedure is
ambiguous.
PR fortran/29387
* interface.c (compare_actual_formal): Add missing condition
that 'where' be present for error that asserts that actual
arguments be definable.
2006-11-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/20880
* gfortran.dg/interface_3.f90: New test.
PR fortran/29387
* gfortran.dg/generic_8.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119173
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 24 Nov 2006 21:45:36 +0000 (21:45 +0000)]
* resolve.c (resolve_actual_arglist): Remove the special case for
CHAR.
* intrinsic.c (add_functions): Remove the special case for CHAR.
* gfortran.dg/specifics_1.f90: Remove check for CHAR.
* gfortran.dg/specifics_2.f90: Remove check for CHAR.
* gfortran.dg/specifics_3.f90: Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119170
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 24 Nov 2006 21:28:38 +0000 (21:28 +0000)]
PR c/29955
* c-tree.h (c_maybe_initialize_eh): New prototype.
* c-decl.c (finish_decl): Move EH initialization...
(c_maybe_initialize_eh): ... here. New function.
* c-parser.c (c_parser_omp_construct): Call c_maybe_initialize_eh
if not #pragma omp atomic.
* gcc.dg/gomp/pr29955.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119168
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 24 Nov 2006 21:23:23 +0000 (21:23 +0000)]
PR c/29736
* c-common.c (handle_vector_size_attribute): Disallow VECTOR_TYPE
or UNION_TYPE inner types.
* gcc.dg/pr29736.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119165
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Fri, 24 Nov 2006 18:32:14 +0000 (18:32 +0000)]
2006-11-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/29964
* ipa-pure-const.c (check_tree): If the original tree
is volatile return early and say the function is not pure
nor const. Remove the volatile check for writes.
(analyze_function): Print out the result of the local
analysis pass.
2006-11-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/29964
* gcc.dg/pure-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119162
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 24 Nov 2006 16:25:25 +0000 (16:25 +0000)]
* config/rs6000/eabispe.h (TARGET_DEFAULT): Include
MASK_STRICT_ALIGN.
* config/rs6000/linuxspe.h (TARGET_DEFAULT): Likewise.
* config/rs6000/rs6000.c (rs6000_override_options): Use
MASK_STRICT_ALIGN for 8540 and 8548. Add MASK_STRICT_ALIGN to
POWERPC_MASKS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119156
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Fri, 24 Nov 2006 14:06:26 +0000 (14:06 +0000)]
* g++.dg/eh/simd-2.C: Use -O -w in general for PowerPC.
* gcc.dg/debug/dwarf2/const-2.c: Use powerpc_altivec_ok.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119152
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 24 Nov 2006 13:30:59 +0000 (13:30 +0000)]
2006-11-24 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390.c (s390_emit_compare_and_swap): New function.
(s390_expand_cs_hqi, s390_expand_atomic): Call
s390_emit_compare_and_swap.
2006-11-24 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/
20061124-1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119151
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Fri, 24 Nov 2006 04:30:57 +0000 (04:30 +0000)]
* pa.c (return_addr_rtx): Change 0xe0400002 to -
532676606.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119145
138bc75d-0d04-0410-961f-
82ee72b054a4
echristo [Fri, 24 Nov 2006 02:46:33 +0000 (02:46 +0000)]
2006-11-23 Eric Christopher <echristo@apple.com>
* gcc.dg/inline-16.c: Use __SIZE_TYPE__.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119144
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Fri, 24 Nov 2006 01:50:33 +0000 (01:50 +0000)]
2006-11-24 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c/2707
PR c++/26167
* c-common.c (conversion_warning): New.
(convert_and_check): Call conversion_warning unless there is an
overflow warning.
* doc/invoke.texi (-Wconversion): Update description.
testsuite/
* gcc.dg/Wconversion-integer.c: New. Supersedes
Wconversion-negative-constants.c
* gcc.dg/Wconversion-real.c: New.
* gcc.dg/Wconversion-real-integer.c: New.
* gcc.dg/Wconversion-negative-constants.c: Deleted.
* g++.dg/warn/Wconversion1.C: Modified.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119143
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Fri, 24 Nov 2006 01:26:26 +0000 (01:26 +0000)]
2006-11-23 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-alias.c (tree_pointer_compare): New function.
(compact_name_tags): New function.
(group_aliases): Call compact_name_tags.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119142
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 24 Nov 2006 00:17:28 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119140
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Thu, 23 Nov 2006 23:35:59 +0000 (23:35 +0000)]
* gfortran.dg/overload_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119135
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 23 Nov 2006 21:10:20 +0000 (21:10 +0000)]
Add PR marker for libstdc++/29920
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119133
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Thu, 23 Nov 2006 18:49:22 +0000 (18:49 +0000)]
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* real.h (real_isinteger): Declare.
* real.c (real_isinteger): Define.
* builtins.c (integer_valued_real_p): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119130
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Thu, 23 Nov 2006 18:39:32 +0000 (18:39 +0000)]
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c/9072
* c.opt (Wtraditional-conversion): New.
(Wconversion): Update description.
* c-typeck.c (convert_arguments): Warnings for prototypes causing
type conversions different from what would happen in the absence
of prototype are now handled by Wtraditional-conversion.
* doc/invoke.texi (Wtraditional-conversion): New.
(Wconversion): Update description.
* doc/trouble.texi (Wconversion): Replace Wconversion by
Wtraditional-conversion.
testsuite/
PR c/9072
* gcc.dg/builtin-protos-1.c: Replace Wconversion by
Wtraditional-conversion.
* gcc.dg/overflow-warn-2.c: Likewise.
* gcc.dg/Wconversion.c: Likewise. Renamed as
Wtraditional-conversion.c .
* gcc.dg/Wconversion-2.c: Likewise. Renamed as
Wtraditional-conversion-2.c .
* gcc.dg/dfp/Wconversion-2.c: Likewise. Renamed as
Wtraditional-conversion-2.c
* gcc.dg/Wconversion-negative-constants.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119129
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Thu, 23 Nov 2006 17:59:53 +0000 (17:59 +0000)]
2006-11-23 Andrew Pinski <pinskia@gmail.com>
* predict.c (tree_estimate_probability): Check to make
sure current_loops is non null before calling flow_loops_dump.
2006-11-23 Andrew Pinski <pinskia@gmail.com>
* gcc.dg/tree-ssa/dump-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119128
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Thu, 23 Nov 2006 17:50:52 +0000 (17:50 +0000)]
* var-tracking.c (emit_note_insn_var_location): Revert previous patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119127
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Thu, 23 Nov 2006 17:34:34 +0000 (17:34 +0000)]
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119126
138bc75d-0d04-0410-961f-
82ee72b054a4
davidu [Thu, 23 Nov 2006 16:13:46 +0000 (16:13 +0000)]
gcc:
* config/mips/mips.h (ISA_HAS_FP4): Add MIPS32R2 + 64bit fpu
combination.
(ISA_HAS_MXHC1): True if ISA supports mfhc1 and mthc1 opcodes.
(ASM_SPEC): Pass along -mfp32 and -mfp64.
* config/mips/mips.c (mips_split_64bit_move): Use gen_mthc1 to set
high part of FP register when in 64-bit FP register mode. Similarly
use gen_mfhc1 to load high part of FP register.
(override_options): Allow -mgp32 and -mfp64 combination if
ISA_HAS_MXHC1 (currently for O32 only).
(mips_cannot_change_mode_class): If floating-point registers are
bigger than word size. disallow conversion of float register from a
large integer mode to a float mode smaller than the float register
size.
(mips_class_max_nregs): Handle float registers case seperately.
* config/mips/mips.md (define_constants): Add UNSPEC_MFHC1,
UNSPEC_MTHC1.
(movdi_32bit): Use !TARGET_FLOAT64 in condition pattern.
(movdf_hardfloat_32bit): Similarly.
(movdi_gp32_fp64): New DImode pattern for MIPS32R2 which optionally
support a full 64-bit fpu.
(mthc1): New pattern to generate MTHC1 instruction.
(mfhc1): New pattern to generate MFHC1 instruction.
* doc/invoke.texi (MIPS Options): Document the -mgp32 -mfp64
option for the MIPS32R2 and mention its use under O32 ABI.
gcc/testsuite:
* gcc.target/mips/mips.exp (dg-mips-options): Handle parsing of
-mfp64, allowable when ISA >= 33 and float is enabled.
* gcc.target/mips/mips32r2-mxhc1.c: New test for checking the use
of mthc1 and mfhc1 patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119124
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Thu, 23 Nov 2006 12:53:15 +0000 (12:53 +0000)]
* var-tracking.c (emit_note_insn_var_location): Take care not to
cause verify_flow_info failures.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119116
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Thu, 23 Nov 2006 03:37:56 +0000 (03:37 +0000)]
2006-11-22 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-structalias.c: Remove edge weights in favor of just
processing them as complex constraints.
(struct constraint_graph): Remove weighted succs and preds. Rename
nonweighted succs and preds.
(constraint_edge): Removed.
(constraint_edge_t): Ditto.
(constraint_edge_pool): Ditto.
(new_constraint_edge): Ditto.
(constraint_edge_equal): Ditto.
(constraint_edge_less): Ditto.
(constraint_edge_vec_find): Ditto.
(erase_self_graph_edge): Ditto.
(add_graph_edge): Removed.
(get_graph_weights): Ditto.
(allocate_graph_weights): Ditto. (
(valid_weighted_graph_edge): Ditto
(bitmap_other_than_zero_bit_set): Ditto.
(int_add_graph_edge): Renamed to add_graph_edge.
(clear_edges_for_node): Remove support for weighted edges.
(merge_graph_nodes): Ditto.
(valid_graph_edge): Ditto.
(build_constraint_graph): Ditto.
(scc_visit): Ditto.
(collapse_nodes): Ditto.
(process_unification_queue): Ditto.
(topo_visit): Ditto.
(do_ds_constraint): Ditto.
(perform_var_subsitution): Ditto.
(solve_graph): Ditto.
(init_alias_vars): Ditto.
(delete_points_to_sets): Ditto.
(do_complex_constraint): Support offsetted copies here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119114
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Thu, 23 Nov 2006 02:19:39 +0000 (02:19 +0000)]
Revert accidental commit (patch coming for this :P)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119113
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Thu, 23 Nov 2006 02:07:03 +0000 (02:07 +0000)]
Remove weighted edges from the graph
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119112
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Thu, 23 Nov 2006 01:58:15 +0000 (01:58 +0000)]
* config/spu/spu_intrinsics.h (SPU_RdEventStatMask): Rename to
SPU_RdEventMask.
* config/spu/spu_mfcio.h (spu_read_event_mask): Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119111
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Thu, 23 Nov 2006 01:23:42 +0000 (01:23 +0000)]
* config/spu/spu_mfcio.h (struct mfc_list_element): Change width
of size bitfield.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119110
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 23 Nov 2006 00:17:30 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119108
138bc75d-0d04-0410-961f-
82ee72b054a4
bje [Wed, 22 Nov 2006 23:46:27 +0000 (23:46 +0000)]
* config/spu/spu-elf.h (LIB_SPEC): Do not link with -lc_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119103
138bc75d-0d04-0410-961f-
82ee72b054a4
rakdver [Wed, 22 Nov 2006 23:11:15 +0000 (23:11 +0000)]
PR tree-optimization/29921
* fold-const.c (operand_equal_p): Without HONOR_SIGNED_ZEROS, consider
signed and unsigned zero equal.
* gcc.dg/pr29921.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119102
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Wed, 22 Nov 2006 22:09:14 +0000 (22:09 +0000)]
fortran/
PR fortran/29441
* intrinsic.c (gfc_intrinsic_func_interface): Always check if
intrinsic is allowed in initialization expression.
testsuite/
PR fortran/29441
* gfortran.dg/initialization_4.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119101
138bc75d-0d04-0410-961f-
82ee72b054a4
bergner [Wed, 22 Nov 2006 19:06:41 +0000 (19:06 +0000)]
* config/rs6000/rs6000.c (get_store_dest): New.
(adjacent_mem_locations): Use get_store_dest() to get
the rtl of the store destination.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119099
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Wed, 22 Nov 2006 16:41:29 +0000 (16:41 +0000)]
* config/rs6000/spe.md (SPE64): New mode macro.
(mov_sidf_e500_subreg0): Change to mov_si<mode>_e500_subreg0. Add
memory load.
(mov_si<mode>_e500_subreg0_2): New.
(mov_sidf_e500_subreg4): Change to mov_si<mode>_e500_subreg4. Add
memory load.
(mov_si<mode>_e500_subreg4_2): New.
* config/rs6000/predicates.md (input_operand): Do not allow
invalid E500 subregs.
(rs6000_nonimmediate_operand): Check for invalid E500 subregs also
if TARGET_SPE.
* config/rs6000/rs6000.c (invalid_e500_subreg): Check for subregs
involving DFmode if TARGET_E500_DOUBLE. Check for subregs
involving vector modes if TARGET_SPE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119094
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Wed, 22 Nov 2006 15:29:02 +0000 (15:29 +0000)]
Revert
2006-11-12 Kaz Kojima <kkojima@gcc.gnu.org>
* reorg.c (emit_delay_sequence): Copy the delay slot insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119093
138bc75d-0d04-0410-961f-
82ee72b054a4
pthomas [Wed, 22 Nov 2006 15:21:16 +0000 (15:21 +0000)]
Update e-mail address in MAINTAINERS
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119092
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Wed, 22 Nov 2006 14:42:32 +0000 (14:42 +0000)]
2006-11-22 Antony King <anthony.king@st.com>
J"orn Rennecke <joern.rennecke@st.com>
* include/Makefile.am (stamp-host): Remove CCODECVT_H line.
* include/Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119091
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Wed, 22 Nov 2006 14:12:46 +0000 (14:12 +0000)]
* config/bfin/predicates.md (d_register_operand, mem_p_address_operand,
mem_i_address_operand): New predicates.
* config/bfin/bfin.c (bfin_issue_rate): New function.
(TARGET_SCHED_ISSUE_RATE): New macro.
* config/bfin/bfin.md (addrtype): New attribute.
(slot0, slot1, slot2, store, pregs): New cpu_units.
(core): Now a define_reservation.
(alu): Remove some insn types from this reservation.
(dsp32, load32, loadp, loadi, store32, storep, storei, multi): New
insn reservations.
(dummy reservation): Don't trigger for mcld insns.
(absence_sets): Two new absence sets to enforce slot ordering.
(popsi_insn): Set addrtype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119090
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Wed, 22 Nov 2006 08:46:03 +0000 (08:46 +0000)]
* doc/c-tree.texi: Document new tree codes.
* doc/md.texi: Document new optabs.
* tree-pretty-print.c (dump_generic_node): Handle print of new tree
codes.
* optabs.c (optab_for_tree_code, init_optabs): Handle new optabs.
* optabs.h (optab_index): Add new.
(vec_extract_even_optab, vec_extract_odd_optab,
vec_interleave_high_optab, vec_interleave_low_optab): New optabs.
* genopinit.c (vec_extract_even_optab, vec_extract_odd_optab,
vec_interleave_high_optab, vec_interleave_low_optab): Initialize
new optabs.
* expr.c (expand_expr_real_1): Add implementation for new tree codes.
* tree-vectorizer.c (new_stmt_vec_info): Initialize new fields.
* tree-vectorizer.h (stmt_vec_info): Add new fields for interleaving
along with macros for their access.
* tree-data-ref.h (first_location_in_loop, data_reference): Update
comment.
* tree-vect-analyze.c (toplev.h): Include.
(vect_determine_vectorization_factor): Fix indentation.
(vect_insert_into_interleaving_chain,
vect_update_interleaving_chain, vect_equal_offsets): New functions.
(vect_analyze_data_ref_dependence): Add argument for interleaving
check. Check for interleaving if it's true.
(vect_check_dependences): New function.
(vect_analyze_data_ref_dependences): Call vect_check_dependences for
every ddr. Call vect_analyze_data_ref_dependence with new argument.
(vect_update_misalignment_for_peel): Update for interleaving.
(vect_verify_datarefs_alignment): Check only first data-ref for
interleaving.
(vect_enhance_data_refs_alignment): Update for interleaving. Check
only first data-ref for interleaving.
(vect_analyze_data_ref_access): Check interleaving, update
interleaving data.
(vect_analyze_data_refs): Call compute_data_dependences_for_loop
with different parameters.
* tree.def (VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR,
VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): New tree codes.
* tree-inline.c (estimate_num_insns_1): Add cases for new codes.
* tree-vect-transform.c (vect_create_addr_base_for_vector_ref):
Update step in case of interleaving.
(vect_strided_store_supported, vect_permute_store_chain): New
functions.
(vectorizable_store): Handle strided stores.
(vect_strided_load_supported, vect_permute_load_chain,
vect_transform_strided_load): New functions.
(vectorizable_load): Handle strided loads.
(vect_transform_stmt): Add argument. Handle strided stores. Check
that vectorized stmt exists for patterns.
(vect_gen_niters_for_prolog_loop): Update calculation for
interleaving.
(vect_transform_loop): Remove stmt_vec_info for strided stores after
whole chain vectorization.
* config/rs6000/altivec.md (UNSPEC_EXTEVEN, UNSPEC_EXTODD,
UNSPEC_INTERHI, UNSPEC_INTERLO): New constants.
(vpkuhum_nomode, vpkuwum_nomode, vec_extract_even<mode>,
vec_extract_odd<mode>, altivec_vmrghsf, altivec_vmrglsf,
vec_interleave_high<mode>, vec_interleave_low<mode>): Implement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119088
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 22 Nov 2006 07:32:09 +0000 (07:32 +0000)]
2006-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* io/io.h (unit_flags): Add new flag has_recl.
* io.open.c (new_unit): Set flag if RECL= was specified.
* io/transfer.c (us_write): If flag set, leave recl as initialized by
new_unit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119087
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 22 Nov 2006 00:17:59 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119084
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Wed, 22 Nov 2006 00:13:42 +0000 (00:13 +0000)]
* cse.c (enum taken): Remove PATH_AROUND.
(addr_affects_sp_p, invalidate_skipped_set,
invalidate_skipped_block): Remove.
(cse_end_of_basic_block): Remove skip_blocks and related code.
(cse_main): Don't test for flag_cse_skip_blocks.
Update cse_end_of_basic_block call.
(cse_basic_block): Likewise. Remove PATH_AROUND case. Remove
code to lengthen the path if a jump was simplified.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119079
138bc75d-0d04-0410-961f-
82ee72b054a4