Jan Hubicka [Fri, 10 Nov 2006 09:30:33 +0000 (10:30 +0100)]
final.c (final): Walk from first instruction.
* final.c (final): Walk from first instruction.
* cfglayout.c (insn_locators_initialize): Remove line number notes.
From-SVN: r118650
Uros Bizjak [Fri, 10 Nov 2006 08:45:47 +0000 (09:45 +0100)]
re PR tree-optimization/29777 (missed optimization: model missing widen_mult* idioms for SSE)
PR target/29777
* config/i386/sse.md (smulv8hi3_highpart): Change from define_insn
to define_expand.
(umulv8hi3_highpart): Ditto.
(vec_widen_smult_hi_v8hi): New expander.
(vec_widen_smult_lo_v8hi): Ditto.
testsuite/ChangeLog:
PR target/29777
* lib/target-supports.exp (vect_widen_mult_hi_to_si): Add i?86-*-*
and x86_64-*-* targets.
From-SVN: r118649
Kaveh R. Ghazi [Fri, 10 Nov 2006 04:26:31 +0000 (04:26 +0000)]
builtins.c (do_mpfr_arg3): New.
* builtins.c (do_mpfr_arg3): New.
(fold_builtin_1): Handle builtins fma, fmin and fmax.
testsuite:
* gcc.dg/torture/builtin-math-2.c: Test builtin fma.
* gcc.dg/torture/builtin-math-3.c (CKSGN_F, CKSGN, CKSGN_L):
New macros. Use them in exact tests.
(TESTIT3): New macro.
Add tests for fmin, fmax and fma.
From-SVN: r118648
Brooks Moses [Fri, 10 Nov 2006 03:38:43 +0000 (03:38 +0000)]
* check.c (same_type_check): Typo fix in comment.
From-SVN: r118647
GCC Administrator [Fri, 10 Nov 2006 00:17:39 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118639
Eric Christopher [Thu, 9 Nov 2006 23:56:57 +0000 (23:56 +0000)]
re PR bootstrap/26892 (Can't compile a 64-bit gcc)
2006-11-09 Eric Christopher <echristo@apple.com>
PR bootstrap/26892
PR bootstrap/27814
PR other/28994
* configure.ac: Match powerpc*-*-darwin* for powerpc darwin checks.
* config.gcc (powerpc64-*-darwin*): New target.
* config.host: Ditto.
* config/rs6000/darwin64.h: New file.
* config/rs6000/x-darwin64: Ditto.
* config/rs6000/host-ppc64-darwin.c: Ditto.
From-SVN: r118633
Steve Ellcey [Thu, 9 Nov 2006 23:48:55 +0000 (23:48 +0000)]
ia64.c (ia64_hpux_init_libfuncs): Use HP-UX millicode routines for integer division.
* config/ia64/ia64.c (ia64_hpux_init_libfuncs): Use HP-UX millicode
routines for integer division.
From-SVN: r118632
Paul Thomas [Thu, 9 Nov 2006 22:49:12 +0000 (22:49 +0000)]
re PR fortran/29431 (Not Implemented: complex character array constructors)
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29431
* trans-array.c (get_array_ctor_strlen): If we fall through to
default, use a constant character length if it is available.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29431
* gfortran.dg/array_constructor_13.f90: New test.
From-SVN: r118631
Daniel Jacobowitz [Thu, 9 Nov 2006 22:14:27 +0000 (22:14 +0000)]
* config/arm/t-linux (LIBGCC2_DEBUG_CFLAGS): Delete.
From-SVN: r118630
Paul Thomas [Thu, 9 Nov 2006 20:22:19 +0000 (20:22 +0000)]
re PR fortran/29744 (Type renaming crashes gfortran with excessive memory usage)
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29744
* trans-types.c (gfc_get_derived_type): Ensure that the
proc_name namespace is not the same as the owner namespace and
that identical derived types in the same namespace share the
same backend_decl.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29744
* gfortran.dg/used_types_12.f90: New test.
From-SVN: r118627
Uros Bizjak [Thu, 9 Nov 2006 19:41:36 +0000 (20:41 +0100)]
env.c (parse_schedule): Reject out of range values.
* env.c (parse_schedule): Reject out of range values.
(parse_unsigned_long): Reject out of range, negative or zero values.
From-SVN: r118626
Serge Belyshev [Thu, 9 Nov 2006 19:24:32 +0000 (19:24 +0000)]
re PR middle-end/29726 (invalid folding of ((X >> C1) & C2) != 0 or "M-x is undefined" in emacs)
2006-11-09 Serge Belyshev <belyshev@depni.sinp.msu.ru>
PR middle-end/29726
* fold-const.c (fold_binary) <EQ_EXPR>: Fix typo in variable name.
* gcc.dg/fold-eqandshift-1.c (test5): Uncomment function.
(test6): Ditto.
(dg-final): Add scan-tree-dump-times patterns for test5 and test6.
* gcc.dg/fold-eqandshift-3.c: New test case.
From-SVN: r118625
Paul Thomas [Thu, 9 Nov 2006 18:42:28 +0000 (18:42 +0000)]
re PR fortran/29699 (ICE in trans-decl.c)
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29699
* trans-array.c (structure_alloc_comps): Detect pointers to
arrays and use indirect reference to declaration.
* resolve.c (resolve_fl_variable): Tidy up condition.
(resolve_symbol): The same and only add initialization code if
the symbol is referenced.
* trans-decl.c (gfc_trans_deferred_vars): Call gfc_trans_
deferred_array before gfc_trans_auto_array_allocation.
PR fortran/21730
* symbol.c (check_done): Remove.
(gfc_add_attribute): Remove reference to check_done and remove
the argument attr_intent.
(gfc_add_allocatable, gfc_add_dimension, gfc_add_external,
gfc_add_intrinsic, gfc_add_optional, gfc_add_pointer,
gfc_add_cray_pointer, gfc_add_cray_pointee, gfc_add_result,
gfc_add_target, gfc_add_in_common, gfc_add_elemental,
gfc_add_pure, gfc_add_recursive, gfc_add_procedure,
gfc_add_type): Remove references to check_done.
* decl.c (attr_decl1): Eliminate third argument in call to
gfc_add_attribute.
* gfortran.h : Change prototype for gfc_add_attribute.
2006-11-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29699
* gfortran.dg/alloc_comp_auto_array_1.f90: New test.
PR fortran/21730
* gfortran.dg/change_symbol_attributes_1.f90: New test.
From-SVN: r118624
Andreas Krebbel [Thu, 9 Nov 2006 17:56:04 +0000 (17:56 +0000)]
simplify-rtx.c (avoid_constant_pool_reference): Avoid calling simplify_subreg with BLKmode outer mode.
2006-11-09 Andreas Krebbel <krebbel1@de.ibm.com>
* simplify-rtx.c (avoid_constant_pool_reference): Avoid calling
simplify_subreg with BLKmode outer mode.
2006-11-09 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/
20061109-1.c: New testcase.
From-SVN: r118622
Kaveh R. Ghazi [Thu, 9 Nov 2006 14:42:19 +0000 (14:42 +0000)]
builtins-20.c: Use fabs, not __builtin_fabs.
* gcc.dg/builtins-20.c: Use fabs, not __builtin_fabs.
From-SVN: r118621
Tobias Burnus [Thu, 9 Nov 2006 10:26:10 +0000 (11:26 +0100)]
io_constraints_3.f90: Fixed by using -fmax-errors.
2006-11-09 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/io_constraints_3.f90: Fixed by using -fmax-errors.
* gfortran.dg/gomp/reduction1.f90: Fixed by using -fmax-errors.
From-SVN: r118619
Brooks Moses [Thu, 9 Nov 2006 08:25:12 +0000 (08:25 +0000)]
invoke.texi: Minor formatting fixes in option lists.
* doc/invoke.texi: Minor formatting fixes in option lists.
From-SVN: r118617
Brooks Moses [Thu, 9 Nov 2006 08:23:21 +0000 (08:23 +0000)]
invoke.texi: Added documentation for -fmax-errors option.
* invoke.texi: Added documentation for -fmax-errors option.
From-SVN: r118616
Brooks Moses [Thu, 9 Nov 2006 06:53:05 +0000 (06:53 +0000)]
lang.opt: Add -fmax-errors= option.
* lang.opt: Add -fmax-errors= option.
* gfortran.h (gfc_option_t): Add max_errors element.
* options.c (gfc_init_options): Set max_errors default value
to 25.
(gfc_handle_options): Assign -fmax_errors value to
gfc_option.max_errors.
* error.c (gfc_increment_error_count): New function, which
also checks whether the error count exceeds max_errors.
(gfc_warning): Use it.
(gfc_warning_now): Use it.
(gfc_notify_std): Use it.
(gfc_error): Use it.
(gfc_error_now): Use it.
(gfc_error_check): Use it.
From-SVN: r118615
Brooks Moses [Thu, 9 Nov 2006 06:41:55 +0000 (06:41 +0000)]
lang.opt: Remove non-working -qkind= option.
* lang.opt: Remove non-working -qkind= option.
* gfortran.h (gfc_option_t): Remove q_kind member.
* options.c (gfc_init_options): Remove q_kind initialization.
(gfc_handle_option): Remove -qkind= option handling.
* primary.c: (match_real_constant): Remove 'Q' exponent.
From-SVN: r118614
Steven G. Kargl [Thu, 9 Nov 2006 03:57:44 +0000 (03:57 +0000)]
2006-11-08 Steven G. Kargl <kargl@gcc.gnu.org>
* io/read. (max_value): Hide "int n" in an #ifdef.
From-SVN: r118613
Jerry DeLisle [Thu, 9 Nov 2006 03:03:40 +0000 (03:03 +0000)]
re PR fortran/29752 (write(*,*,advance='NO'), READ(): Data not flushed)
2006-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29752
* io/transfer.c (finalize_transfer): Flush on ADVANCE_NO.
From-SVN: r118611
GCC Administrator [Thu, 9 Nov 2006 00:17:40 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118607
Zdenek Dvorak [Thu, 9 Nov 2006 00:09:43 +0000 (01:09 +0100)]
re PR tree-optimization/29738 (Missed constant propagation into loops)
PR tree-optimization/29738
* tree-ssa-ccp.c: Remove UNKNOWN_VAL from comments.
(ccp_lattice_t): Remove UNKNOWN_VAL.
(dump_lattice_value, ccp_lattice_meet, ccp_visit_phi_node):
Do not handle UNKNOWN_VAL.
(get_default_value): Set initial value of virtual operands to
VARYING.
(get_value): Always use get_default_value on uninitialized
operands.
(set_value_varying, surely_varying_stmt_p): New functions.
(set_lattice_value): Do not pass argument to get_value.
Do not handle UNKNOWN_VAL.
(likely_value): Follow the semantics described in the comment.
(ccp_initialize): Use surely_varying_stmt_p. Do not mark
phi nodes DONT_SIMULATE_AGAIN.
(ccp_fold): Do not pass argument to get_value.
(fold_const_aggregate_ref, visit_assignment): Ditto. Do not
handle UNKNOWN_VAL.
* gcc.dg/tree-ssa/ssa-ccp-14.c: New test.
* gcc.dg/tree-ssa/ssa-ccp-15.c: New test.
From-SVN: r118602
Kaveh R. Ghazi [Wed, 8 Nov 2006 21:53:02 +0000 (21:53 +0000)]
builtin-math-3.c: Add more sincos tests.
* gcc.dg/torture/builtin-math-3.c: Add more sincos tests.
From-SVN: r118600
Andrew Pinski [Wed, 8 Nov 2006 19:50:49 +0000 (11:50 -0800)]
tree-pretty-print.c (dump_generic_node): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX instead of format buffer.
2006-11-08 Andrew Pinski <Andrew_Pinski@playstation.sony.com>
* tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
HOST_WIDE_INT_PRINT_DOUBLE_HEX instead of format buffer.
From-SVN: r118597
Vladimir Prus [Wed, 8 Nov 2006 18:16:27 +0000 (18:16 +0000)]
pex-win32.c (no_suffixes): Remove.
2006-11-08 Vladimir Prus <vladimir@codesourcery.com>
* pex-win32.c (no_suffixes): Remove.
(std_suffixes): Add "" as first element.
(find_executable): Remove detection of already-present
extension. Try all suffixes in std_suffixes.
From-SVN: r118595
Roger Sayle [Wed, 8 Nov 2006 17:39:35 +0000 (17:39 +0000)]
tree-ssa-propagate.c (set_rhs): Restructure validity tests as a test for inclusion rather than as a test for...
* tree-ssa-propagate.c (set_rhs): Restructure validity tests as a
test for inclusion rather than as a test for exclusion.
* tree-ssa-ccp.c (fold_stmt_r) <COND_EXPR>: Use set_rhs to modify
the condition after calling fold_binary.
* fold-const.c (fold_inf_compare): Remove in_gimple_form check.
(fold_binary) <LT_EXPR, GT_EXPR, LE_EXPR, GE_EXPR>: Likewise.
* builtins.c (fold_builtin_isascii): Likewise.
(fold_builtin_isdigit): Likewise.
From-SVN: r118593
Carlos O'Donell [Wed, 8 Nov 2006 16:52:05 +0000 (16:52 +0000)]
configure.ac: Do not set PREFIX_INCLUDE_DIR if $prefix is NONE.
gcc/
2006-11-08 Carlos O'Donell <carlos@codesourcery.com>
* configure.ac: Do not set PREFIX_INCLUDE_DIR if $prefix is NONE.
* configure: Regenerate.
From-SVN: r118588
Tobias Burnus [Wed, 8 Nov 2006 09:23:53 +0000 (10:23 +0100)]
gfortran.texi: Add volatile and internal-file namelist to Fortran 2003 status.
2006-11-08 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Add volatile and internal-file
namelist to Fortran 2003 status.
* intrinsic.texi: Correct CHMOD entry.
From-SVN: r118578
Dorit Nuzman [Wed, 8 Nov 2006 07:32:44 +0000 (07:32 +0000)]
[multiple changes]
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p): Take
enum argument instead of bool.
(vect_analyze_operations): Call vectorizable_type_promotion.
* tree-vectorizer.h (type_promotion_vec_info_type): New enum
stmt_vec_info_type value.
(supportable_widening_operation, vectorizable_type_promotion): New
function declarations.
* tree-vect-transform.c (vect_gen_widened_results_half): New function.
(vectorizable_type_promotion): New function.
(vect_transform_stmt): Call vectorizable_type_promotion.
* tree-vect-analyze.c (supportable_widening_operation): New function.
* tree-vect-patterns.c (vect_recog_dot_prod_pattern):
Add implementation.
* tree-vect-generic.c (expand_vector_operations_1): Consider correct
mode.
* tree.def (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR):
(VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR): New tree-codes.
* tree-inline.c (estimate_num_insns_1): Add cases for above new
tree-codes.
* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
* expr.c (expand_expr_real_1): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
(init_optabs): Initialize new optabs.
* genopinit.c (vec_widen_umult_hi_optab, vec_widen_smult_hi_optab,
vec_widen_smult_hi_optab, vec_widen_smult_lo_optab,
vec_unpacks_hi_optab, vec_unpacks_lo_optab, vec_unpacku_hi_optab,
vec_unpacku_lo_optab): Initialize new optabs.
* optabs.h (OTI_vec_widen_umult_hi, OTI_vec_widen_umult_lo):
(OTI_vec_widen_smult_h, OTI_vec_widen_smult_lo, OTI_vec_unpacks_hi,
OTI_vec_unpacks_lo, OTI_vec_unpacku_hi, OTI_vec_unpacku_lo): New
optab indices.
(vec_widen_umult_hi_optab, vec_widen_umult_lo_optab):
(vec_widen_smult_hi_optab, vec_widen_smult_lo_optab):
(vec_unpacks_hi_optab, vec_unpacku_hi_optab, vec_unpacks_lo_optab):
(vec_unpacku_lo_optab): New optabs.
* doc/md.texi (vec_unpacks_hi, vec_unpacks_lo, vec_unpacku_hi):
(vec_unpacku_lo, vec_widen_umult_hi, vec_widen_umult_lo):
(vec_widen_smult_hi, vec_widen_smult_lo): New.
* doc/c-tree.texi (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR):
(VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR, VEC_UNPACK_HI_EXPR):
(VEC_UNPACK_LO_EXPR, VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New.
* config/rs6000/altivec.md (UNSPEC_VMULWHUB, UNSPEC_VMULWLUB):
(UNSPEC_VMULWHSB, UNSPEC_VMULWLSB, UNSPEC_VMULWHUH, UNSPEC_VMULWLUH):
(UNSPEC_VMULWHSH, UNSPEC_VMULWLSH): New.
(UNSPEC_VPERMSI, UNSPEC_VPERMHI): New.
(vec_vperm_v8hiv4si, vec_vperm_v16qiv8hi): New patterns used to
implement the unsigned unpacking patterns.
(vec_unpacks_hi_v16qi, vec_unpacks_hi_v8hi, vec_unpacks_lo_v16qi):
(vec_unpacks_lo_v8hi): New signed unpacking patterns.
(vec_unpacku_hi_v16qi, vec_unpacku_hi_v8hi, vec_unpacku_lo_v16qi):
(vec_unpacku_lo_v8hi): New unsigned unpacking patterns.
(vec_widen_umult_hi_v16qi, vec_widen_umult_lo_v16qi):
(vec_widen_smult_hi_v16qi, vec_widen_smult_lo_v16qi):
(vec_widen_umult_hi_v8hi, vec_widen_umult_lo_v8hi):
(vec_widen_smult_hi_v8hi, vec_widen_smult_lo_v8hi): New widening
multiplication patterns.
* target.h (builtin_mul_widen_even, builtin_mul_widen_odd): New.
* target-def.h (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN):
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.
* config/rs6000/rs6000.c (rs6000_builtin_mul_widen_even): New.
(rs6000_builtin_mul_widen_odd): New.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Defined.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Defined.
* tree-vectorizer.h (enum vect_relevant): New enum type.
(_stmt_vec_info): Field relevant chaned from bool to enum
vect_relevant.
(STMT_VINFO_RELEVANT_P): Updated.
(STMT_VINFO_RELEVANT): New.
* tree-vectorizer.c (new_stmt_vec_info): Use STMT_VINFO_RELEVANT
instead of STMT_VINFO_RELEVANT_P.
* tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p):
Replace calls to STMT_VINFO_RELEVANT_P with STMT_VINFO_RELEVANT,
and boolean variable with enum vect_relevant.
(vect_mark_stmts_to_be_vectorized): Likewise + update documentation.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): New.
(TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.
2006-11-08 Richard Henderson <rth@redhat.com>
* config/i386/sse.md (vec_widen_umult_hi_v8hi,
vec_widen_umult_lo_v8hi): New.
(vec_widen_smult_hi_v4si, vec_widen_smult_lo_v4si,
vec_widen_umult_hi_v4si, vec_widen_umult_lo_v4si): New.
* config/i386/i386.c (ix86_expand_sse_unpack): New.
* config/i386/i386-protos.h (ix86_expand_sse_unpack): New.
* config/i386/sse.md (vec_unpacku_hi_v16qi, vec_unpacks_hi_v16qi,
vec_unpacku_lo_v16qi, vec_unpacks_lo_v16qi, vec_unpacku_hi_v8hi,
vec_unpacks_hi_v8hi, vec_unpacku_lo_v8hi, vec_unpacks_lo_v8hi,
vec_unpacku_hi_v4si, vec_unpacks_hi_v4si, vec_unpacku_lo_v4si,
vec_unpacks_lo_v4si): New.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_type_demotion): New function.
(vect_transform_stmt): Add case for type_demotion_vec_info_type.
(vect_analyze_operations): Call vectorizable_type_demotion.
* tree-vectorizer.h (type_demotion_vec_info_type): New enum
stmt_vec_info_type value.
(vectorizable_type_demotion): New function declaration.
* tree-vect-generic.c (expand_vector_operations_1): Consider correct
mode.
* tree.def (VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New tree-codes.
* expr.c (expand_expr_real_1): Add case for VEC_PACK_MOD_EXPR and
VEC_PACK_SAT_EXPR.
* tree-iniline.c (estimate_num_insns_1): Likewise.
* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
* optabs.c (expand_binop): In case of vec_pack_*_optabs the mode
compared against the predicate of the result is not 'mode' (the input
to the function) but a mode with half the size of 'mode'.
(init_optab): Initialize new optabs.
* optabs.h (OTI_vec_pack_mod, OTI_vec_pack_ssat, OTI_vec_pack_usat):
New optab indices.
(vec_pack_mod_optab, vec_pack_ssat_optab, vec_pack_usat_optab): New
optabs.
* genopinit.c (vec_pack_mod_optab, vec_pack_ssat_optab):
(vec_pack_usat_optab): Initialize new optabs.
* doc/md.texi (vec_pack_mod, vec_pack_ssat, vec_pack_usat): New.
* config/rs6000/altivec.md (vec_pack_mod_v8hi, vec_pack_mod_v4si): New.
2006-11-08 Richard Henderson <rth@redehat.com>
* config/i386/sse.md (vec_pack_mod_v8hi, vec_pack_mod_v4si):
(vec_pack_mod_v2di, vec_interleave_highv16qi, vec_interleave_lowv16qi):
(vec_interleave_highv8hi, vec_interleave_lowv8hi):
(vec_interleave_highv4si, vec_interleave_lowv4si):
(vec_interleave_highv2di, vec_interleave_lowv2di): New.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_reduction): Support multiple
datatypes.
(vect_transform_stmt): Removed redundant code.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vectorizable_operation): Support multiple
datatypes.
2006-11-08 Dorit Nuzman <dorit@il.ibm.com>
* tree-vect-transform.c (vect_align_data_ref): Removed.
(vect_create_data_ref_ptr): Added additional argument - ptr_incr.
Updated function documentation. Return the increment stmt in ptr_incr.
(bump_vector_ptr): New function.
(vect_get_vec_def_for_stmt_copy): New function.
(vect_finish_stmt_generation): Create a stmt_info to newly created
vector stmts.
(vect_setup_realignment): Call vect_create_data_ref_ptr with additional
argument.
(vectorizable_reduction, vectorizable_assignment): Not supported yet if
VF is greater than the number of elements that can fit in one vector
word.
(vectorizable_operation, vectorizable_condition): Likewise.
(vectorizable_store, vectorizable_load): Support the case that the VF
is greater than the number of elements that can fit in one vector word.
(vect_transform_loop): Don't fail in case of multiple data-types.
* tree-vect-analyze.c (vect_determine_vectorization_factor): Don't fail
in case of multiple data-types; the smallest type determines the VF.
(vect_analyze_data_ref_dependence): Don't record datarefs as same_align
if they are of different sizes.
(vect_update_misalignment_for_peel): Compare misalignments in terms of
number of elements rather than number of bytes.
(vect_enhance_data_refs_alignment): Fix/Add dump printouts.
(vect_can_advance_ivs_p): Fix a dump printout
From-SVN: r118577
Eric Christopher [Wed, 8 Nov 2006 02:24:26 +0000 (02:24 +0000)]
libgcc2.c (__bswapdi2): Rename from bswapDI2.
2006-11-07 Eric Christopher <echristo@apple.com>
* libgcc2.c (__bswapdi2): Rename from bswapDI2.
(__bswapsi2): Ditto.
* libgcc2.h: Remove transformation of bswap routines.
* config/i386/i386.md (bswapsi2): New.
(bswapdi2): Ditto.
2006-11-07 Eric Christopher <echristo@apple.com>
* gcc.target/i386/builtin-bswap-1.c: Rewrite for 64-bit.
Test using scan-assembler-not.
From-SVN: r118576
GCC Administrator [Wed, 8 Nov 2006 00:17:57 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118573
Kaveh R. Ghazi [Tue, 7 Nov 2006 23:40:54 +0000 (23:40 +0000)]
configure.in: Robustify error message for missing GMP/MPFR.
* configure.in: Robustify error message for missing GMP/MPFR.
* configure: Regenerate.
From-SVN: r118568
Jakub Jelinek [Tue, 7 Nov 2006 23:01:23 +0000 (00:01 +0100)]
c-common.c (c_common_attributes): Add gnu_inline attribyte.
* c-common.c (c_common_attributes): Add gnu_inline attribyte.
(handle_gnu_inline_attribute): New function.
* c-decl.c (diagnose_mismatched_decls): Handle gnu_inline attribute.
(merge_decls, start_decl, start_function): Likewise.
* doc/extend.texi: Document gnu_inline attribute.
* gcc.dg/inline-17.c: New test.
From-SVN: r118567
Steve Ellcey [Tue, 7 Nov 2006 19:14:27 +0000 (19:14 +0000)]
re PR other/25028 (TImode-to-floating conversions broken)
PR other/25028
* config/ia64/t-hpux (LIB1ASMFUNCS): Filter out _fixtfdi,
_fixunstfdi, and _floatditf
* gcc.dg/torture/fp-int-convert-float128-timode.c: Do not XFAIL
on HP-UX.
From-SVN: r118565
Benjamin Kosnik [Tue, 7 Nov 2006 18:36:32 +0000 (18:36 +0000)]
re PR libstdc++/29722 (Linking with libsupc++.a creates link time undefined references)
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29722
* include/ext/concurrence.h (concurrence_lock_error): New.
(concurrence_unlock_error): New.
(__throw_concurrence_lock_error): New.
(__throw_concurrence_unlock_error): New.
(__mutex): Use functions.
(__recursive_mutex): Same.
* testsuite/abi/cxx_runtime_only_linkage.cc: New.
* include/ext/pb_ds/exception.hpp: Keep exception classes defined
even when -fno-exceptions is passed, consistent with other usage.
From-SVN: r118564
Anatoly Sokolov [Tue, 7 Nov 2006 18:33:57 +0000 (21:33 +0300)]
avr-protos.h (mask_one_bit_p, [...]): Remove prototype.
* config/avr/avr-protos.h (mask_one_bit_p, const_int_pow2_p): Remove
prototype.
* config/avr/avr.c (mask_one_bit_p, const_int_pow2_p): Remove.
(output_movhi, ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out,
lshrhi3_out, lshrsi3_out): Remove unnecessary code for handling value
which start in an odd register.
From-SVN: r118563
Richard Sandiford [Tue, 7 Nov 2006 18:05:52 +0000 (18:05 +0000)]
mips.h (ISA_HAS_PREFETCHX): Fix typo.
gcc/
* config/mips/mips.h (ISA_HAS_PREFETCHX): Fix typo.
From-SVN: r118562
Josh Conner [Tue, 7 Nov 2006 17:40:13 +0000 (17:40 +0000)]
invoke.texi (fstrict-aliasing): Move implementation details...
2006-11-07 Josh Conner <jconner@apple.com>
* doc/invoke.texi (fstrict-aliasing): Move implementation
details...
* doc/tree-ssa.texi (Alias analysis): ...here.
From-SVN: r118559
Richard Guenther [Tue, 7 Nov 2006 17:34:40 +0000 (17:34 +0000)]
inclhack.def (glibc_c99_inline_2): Adjust for glibc 2.3 systems.
2006-11-07 Richard Guenther <rguenther@suse.de>
* inclhack.def (glibc_c99_inline_2): Adjust for glibc 2.3
systems.
* fixincl.x: Regenerate.
From-SVN: r118558
Richard Guenther [Tue, 7 Nov 2006 17:29:34 +0000 (17:29 +0000)]
re PR middle-end/29610 (ICE when compiling c++ code with -O2 -funswitch-loops)
2006-11-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/29610
* tree-cfgcleanup.c (cleanup_control_flow): Honor return value
of tree_purge_dead_eh_edges as it may free dominators.
* g++.dg/other/pr29610.C: New testcase.
From-SVN: r118555
Benjamin Kosnik [Tue, 7 Nov 2006 16:55:49 +0000 (16:55 +0000)]
exception.hpp (pb_ds): Modify for -fno-exceptions.
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp (pb_ds): Modify for -fno-exceptions.
(__throw_container_error): New. Conditionalize based on __EXCEPTIONS.
(__throw_insert_error): New.
(__throw_join_error): New.
(__throw_resize_error): New.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Use them.
* include/ext/pb_ds/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/exception.hpp: Same.
* src/functexcept.cc: Qualify abort with std.
From-SVN: r118554
Paul Thomas [Tue, 7 Nov 2006 15:17:17 +0000 (15:17 +0000)]
re PR fortran/29539 (ICE in variable_decl)
2006-11-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29539
PR fortran/29634
* decl.c (variable_decl): Add test for presence of proc_name.
* error.c (gfc_error_flag_test): New function.
* gfortran.h : Prototype for gfc_error_flag_test.
2006-11-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29539
* gfortran.dg/gfortran.dg/blockdata_3.f90: New test.
PR fortran/29634
* gfortran.dg/gfortran.dg/derived_function_interface_1.f90: New
test.
From-SVN: r118553
Julian Brown [Tue, 7 Nov 2006 15:16:07 +0000 (15:16 +0000)]
floatformat.c (get_field): Fix segfault with little-endian word order on 64-bit hosts.
* floatformat.c (get_field): Fix segfault with little-endian word
order on 64-bit hosts.
(put_field): Likewise.
(min): Move definition.
From-SVN: r118552
David Ung [Tue, 7 Nov 2006 14:28:08 +0000 (14:28 +0000)]
mips.c (mips_rtx_cost_optimize_size): New table of costs when optimizing for size.
* config/mips/mips.c (mips_rtx_cost_optimize_size): New table of
costs when optimizing for size.
(override_options): Use mips_rtx_cost_optimize_size table for cost
calculations.
From-SVN: r118550
Jie Zhang [Tue, 7 Nov 2006 14:24:58 +0000 (14:24 +0000)]
gcc.c (process_command): Treat -b as normal switch if its argument has no dash.
* gcc.c (process_command): Treat -b as normal switch if its argument
has no dash.
From-SVN: r118547
David Ung [Tue, 7 Nov 2006 14:08:55 +0000 (14:08 +0000)]
mips.h (ISA_HAS_PREFETCHX): Add ISA_MIPS32R2 to the list.
* config/mips/mips.h (ISA_HAS_PREFETCHX): Add ISA_MIPS32R2 to the
list.
From-SVN: r118546
Tobias Burnus [Tue, 7 Nov 2006 13:27:53 +0000 (14:27 +0100)]
re PR fortran/29601 (VOLATILE attribute and statement)
fortran/
2006-11-06 Tobias Burnus <burnus@net-b.de>
PR fortran/29601
* symbol.c (check_conflict, gfc_add_volatile): Add volatile support.
* decl.c (match_attr_spec, gfc_match_volatile): Add volatile support.
* gfortran.h (symbol_attribute): Add volatile_ to struct.
* resolve.c (was_declared): Add volatile support.
* trans-decl.c (gfc_finish_var_decl): Add volatile support.
* match.h: Declare gfc_match_volatile.
* parse.c (decode_statement): Recognize volatile.
* modules.c (ab_attribute, attr_bits, mio_symbol_attribute):
Add volatile support.
* dump-parse-tree.c (gfc_show_attr): Add volatile support.
testsuite/
2006-11-06 Tobias Burnus <burnus@net-b.de>
PR fortran/29601
* gfortran.dg/volatile.f90: Add.
* gfortran.dg/volatile2.f90: Add.
* gfortran.dg/volatile3.f90: Add.
* gfortran.dg/volatile4.f90: Add.
* gfortran.dg/volatile5.f90: Add.
* gfortran.dg/volatile6.f90: Add.
* gfortran.dg/volatile7.f90: Add.
From-SVN: r118545
Benjamin Kosnik [Tue, 7 Nov 2006 12:33:20 +0000 (12:33 +0000)]
exception.hpp: Add translation support to exception strings.
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp: Add translation support to
exception strings.
* include/ext/concurrence.h: Same.
* include/tr1/array: Same.
From-SVN: r118543
Tobias Burnus [Tue, 7 Nov 2006 09:11:08 +0000 (10:11 +0100)]
decl.c (match_attr_spec, [...]): Unify gfc_notify_std message for GFC_STD_F2003.
fortran/
2006-11-06 Tobias Burnus <burnus@net-b.de>
* decl.c (match_attr_spec, gfc_match_enum): Unify gfc_notify_std
message for GFC_STD_F2003.
* array.c (gfc_match_array_constructor): Unify gfc_notify_std
message for GFC_STD_F2003.
* io.c (check_io_constraints): Unify gfc_notify_std message for
GFC_STD_F2003.
* resolve.c (resolve_actual_arglist): Unify gfc_notify_std message
for GFC_STD_F2003.
testsuite/
2006-11-06 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/io_constraints_2.f90: Adjust pattern
for matching error messages.
* gfortran.dg/specifics_3.f90: Adjust pattern
for matching error messages.
From-SVN: r118542
Eric Christopher [Tue, 7 Nov 2006 05:40:34 +0000 (05:40 +0000)]
config.gcc: Add x86_64-darwin host support.
2006-11-06 Eric Christopher <echristo@apple.com>
* config.gcc: Add x86_64-darwin host support.
* config.host: Ditto.
* config/i386/darwin64.h: New file.
* config/i386/t-darwin64: Ditto.
From-SVN: r118541
Brooks Moses [Tue, 7 Nov 2006 01:52:49 +0000 (17:52 -0800)]
Fixed incorrect date in changelog entry.
From-SVN: r118540
Brooks Moses [Tue, 7 Nov 2006 01:49:55 +0000 (01:49 +0000)]
intrinsic.texi: Added documentation for FTELL, GETLOG, and HOSTNM intrinsics.
* intrinsic.texi: Added documentation for FTELL, GETLOG, and HOSTNM intrinsics.
From-SVN: r118538
GCC Administrator [Tue, 7 Nov 2006 00:17:48 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118536
Janis Johnson [Tue, 7 Nov 2006 00:08:32 +0000 (00:08 +0000)]
sourcebuild.texi (Test Directives): Add output-exists and output-exists-not.
gcc/
2006-11-06 Janis Johnson <janis187@us.ibm.com>
* gcc/doc/sourcebuild.texi (Test Directives): Add output-exists
and output-exists-not.
gcc/testsuite/
2006-11-06 Janis Johnson <janis187@us.ibm.com
Bernhard Fischer <aldot@gcc.gnu.org>
* lib/gcc-dg.exp (output-exists): New proc.
(output-exists-not): New proc.
* gcc.test-framework/test-framework.awk: Support new directives.
* gcc.test-framework/dg-outexistsnot-exp-F.c: New test.
* gcc.test-framework/dg-outexistsnot-exp-P.c: New test.
* gcc.test-framework/dg-outexists-exp-F.c: New test.
* gcc.test-framework/dg-outexists-exp-XP.c: New test.
* gcc.test-framework/dg-outexistsnot-exp-XF.c: New test.
* gcc.test-framework/dg-outexists-exp-P.c: New test.
From-SVN: r118531
Andrew Pinski [Mon, 6 Nov 2006 23:25:19 +0000 (23:25 +0000)]
re PR tree-optimization/29439 (ICE in fold-const.c:1385 with -O1 -fwrapv -ftree-vrp)
2006-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/29439
* tree-vrp.c (vrp_int_const_binop): Use the correct tree when
checking for overflow.
From-SVN: r118530
Erik Edelmann [Mon, 6 Nov 2006 22:18:54 +0000 (22:18 +0000)]
re PR fortran/29630 ("Unclassifiable statement" with vector subscripts in initialization)
fortran/
2006-11-06 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/29630
PR fortran/29679
* expr.c (find_array_section): Support vector subscripts. Don't
add sizes for dimen_type == DIMEN_ELEMENT to the shape array.
testsuite/
2006-11-06 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/29630
PR fortran/29679
* gfortran.dg/initialization_2.f90: Test PRs 29630 and 29679 too.
* gfortran.dg/initialization_3.f90: New.
From-SVN: r118528
Frank Ch. Eigler [Mon, 6 Nov 2006 20:04:14 +0000 (20:04 +0000)]
2006-11-06 Frank Ch. Eigler <fche@redhat.com>
From Herman ten Brugge <hermantenbrugge@home.nl>:
* mf-runtime.c (__mf_uncache_object): Optimize the code so that
small and large objects are handled a lot faster.
From-SVN: r118526
Jan van Dijk [Mon, 6 Nov 2006 19:49:31 +0000 (20:49 +0100)]
configure.ac: Fix typo in case statement: :: changed to ;;
2006-11-06 Jan van Dijk <jan@etpmod.phys.tue.nl>
* configure.ac: Fix typo in case statement: :: changed to ;;
* configure: Regenerate.
From-SVN: r118525
Bob Wilson [Mon, 6 Nov 2006 18:50:37 +0000 (18:50 +0000)]
longlong.h (__xtensa__): Add definitions for umul_ppmm...
* longlong.h (__xtensa__): Add definitions for umul_ppmm, __umulsidi3,
count_leading_zeros, and count_trailing_zeros.
* config/xtensa/xtensa.c (TARGET_INIT_BUILTINS): Define.
(TARGET_FOLD_BUILTIN): Define.
(TARGET_EXPAND_BUILTIN): Define.
(xtensa_init_builtins): New.
(xtensa_fold_builtin): New.
(xtensa_expand_builtin): New.
(xtensa_rtx_costs): Add CTZ and CLZ. Adjust costs for MULT.
* config/xtensa/xtensa.h (TARGET_MUL32_HIGH): Define.
(CLZ_DEFINED_VALUE_AT_ZERO): Define.
(CTZ_DEFINED_VALUE_AT_ZERO): Define.
* config/xtensa/xtensa.md (UNSPEC_NSAU): Remove.
(any_extend): New code macro.
(u, su): New code attributes.
(<u>mulsidi3, <u>mulsi3_highpart, clzsi2, ctzsi2): New.
(nsau): Remove; replaced by clzsi2.
(ffssi2): Use clzsi2.
* config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _umulsidi3,
_clzsi2, _ctzsi2, and _ffssi2. Rename _nsau to _clz.
* config/xtensa/lib1funcs.asm (__mulsi3): Support Mul32 option.
(__umulsidi3, __clzsi2, __ctzsi2, __ffssi2): New.
(__nsau_data): Guard with ifdef L_clz instead of L_nsau.
From-SVN: r118524
Frank Ch. Eigler [Mon, 6 Nov 2006 18:02:13 +0000 (18:02 +0000)]
configure.ac (__libc_freeres): Look for it.
2006-11-06 Frank Ch. Eigler <fche@redhat.com>
* configure.ac (__libc_freeres): Look for it.
* mf-impl.h (call_libc_freeres): New configuration flag.
* mf-runtime.c (__mf_set_default_options): Set it by default.
(__mfu_report): Call it if needed.
(__mfu_unregister): Remove "unaccessed registered object" warning.
* configure, config.h.in: Regenerated.
From-SVN: r118523
Vladimir Prus [Mon, 6 Nov 2006 09:49:07 +0000 (09:49 +0000)]
t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no set inhibit_libc.
* config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no
set inhibit_libc.
* config/arm/t-strongarm-elf: Likewise.
* config/arm/t-pe: Likewise.
* config/arm/t-arm-elf: Likewise.
* config/arm/t-xscale-elf: Likewise.
* config/arm/t-arm-coff: Likewise.
* config/arm/t-xscale-coff: Likewise.
* config/arm/t-wince-pe: Likewise.
From-SVN: r118518
GCC Administrator [Mon, 6 Nov 2006 00:17:47 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118515
Jerry DeLisle [Sun, 5 Nov 2006 17:54:17 +0000 (17:54 +0000)]
transfer.c (next_record_w): Fix indentation.
2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* io/transfer.c (next_record_w): Fix indentation.
From-SVN: r118508
Jerry DeLisle [Sun, 5 Nov 2006 17:40:42 +0000 (17:40 +0000)]
re PR libfortran/25545 (internal file and dollar edit descriptor)
2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25545
* gfortran.dg/dollar_edit_descriptor-2.f: New test.
From-SVN: r118507
Jerry DeLisle [Sun, 5 Nov 2006 17:35:30 +0000 (17:35 +0000)]
re PR libfortran/25545 (internal file and dollar edit descriptor)
2006-11-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25545
* io/transfer.c (write_block): Cleanup code paths between
stream and non-stream I/O.
(write_buf): Cleanup.
(read_block): Cleanup.
(finalize_transfer): Call next_record for '$' edit descriptor handling
of internal unit. Cleanup code for readability.
From-SVN: r118506
Paolo Carlini [Sun, 5 Nov 2006 16:17:03 +0000 (16:17 +0000)]
lwg-active.html, [...]: Import Revision 45.
2006-11-05 Paolo Carlini <pcarlini@suse.de>
* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 45.
* docs/html/ext/lwg-closed.html: Add.
* docs/html/ext/howto.html: Adjust.
From-SVN: r118502
Bernhard Fischer [Sun, 5 Nov 2006 14:57:24 +0000 (15:57 +0100)]
re PR fortran/21061 (gfortran ignores -Werror)
2006-11-05 Bernhard Fischer <aldot@gcc.gnu.org>
PR fortran/21061
* error.c (gfc_warning): If warnings_are_errors then treat
warnings as errors with respect to the exit code.
(gfc_notify_std): Ditto.
(gfc_warning_now): Ditto.
From-SVN: r118501
Kaz Kojima [Sun, 5 Nov 2006 12:58:28 +0000 (12:58 +0000)]
lib1funcs-4-300.asm: Guard entire file with #if !__SHMEDIA__ .
* config/sh/lib1funcs-4-300.asm: Guard entire file with
#if !__SHMEDIA__ .
From-SVN: r118500
Jakub Jelinek [Sun, 5 Nov 2006 12:13:46 +0000 (13:13 +0100)]
re PR middle-end/29695 (Folding breaks (a & 0x80) ? 0x80 : 0 for unsigned char or unsigned short a)
PR middle-end/29695
* fold-const.c (fold_ternary): Fix A < 0 ? <sign bit of A> : 0
simplification.
* gcc.c-torture/execute/pr29695-1.c: New test.
* gcc.c-torture/execute/pr29695-2.c: New test.
From-SVN: r118497
Arnaud Charlet [Sun, 5 Nov 2006 10:58:41 +0000 (10:58 +0000)]
re PR ada/29707 (s-osinte.adb:86:13: warning: function "To_Target_Priority" is not referenced)
* s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads
(To_Target_Priority): New function.
Fix PR ada/29707
From-SVN: r118496
Eric Botcazou [Sun, 5 Nov 2006 10:19:18 +0000 (10:19 +0000)]
Fix typos.
From-SVN: r118494
Paul Thomas [Sun, 5 Nov 2006 06:27:48 +0000 (06:27 +0000)]
2006-11-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu,org>
Paul Thomas <pault@gcc.gnu.org>
PR fortran/24518
* trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod
for both MOD and MODULO, if it is available.
PR fortran/29565
* trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save
the declarations from the unused loops by merging the block
scope for each; this ensures that the temporary is declared.
2006-11-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29565
* gfortran.dg/gfortran.dg/aliasing_dummy_3.f90: New test.
From-SVN: r118492
Brooks Moses [Sun, 5 Nov 2006 00:28:08 +0000 (00:28 +0000)]
error.c (show_locus): Add trailing colon in error messages.
* fortran/error.c (show_locus): Add trailing colon in error messages.
(error_print): Avoid leading space in error lines.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Adjust pattern
for matching error messages.
From-SVN: r118491
GCC Administrator [Sun, 5 Nov 2006 00:17:22 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118489
Uros Bizjak [Sat, 4 Nov 2006 23:12:16 +0000 (00:12 +0100)]
re PR target/26915 (missed sized opt returning -1.0)
PR target/26915
* config/i386/i386.c (standard_80387_constant_p): Treat -0.0 and -1.0
as a valid 80387 constant.
(standard_80387_constant_opcode): Return "#" for -0.0 and -1.0.
* config/i386/i386.md (unnamed splitter): Split the load of
constant -0.0 or -1.0 into the load of 0.0 or 1.0, followed
by negation.
testsuite/ChangeLog:
PR target/26915
* gcc.target/i386/387-12.c: New test.
~
From-SVN: r118484
Francois-Xavier Coudert [Sat, 4 Nov 2006 20:58:26 +0000 (21:58 +0100)]
re PR fortran/29713 (ICE in gfc_set_constant_character_len decl.c:762)
PR fortran/29713
* expr.c (gfc_simplify_expr): Correct memory allocation.
* gfortran.dg/pr29713.f90: New test.
From-SVN: r118483
Richard Earnshaw [Sat, 4 Nov 2006 14:26:34 +0000 (14:26 +0000)]
arm.c (thumb_legitimate_addres_p): Allow any constant offset from the soft-frame, argument and virtual registers.
* arm.c (thumb_legitimate_addres_p): Allow any constant offset
from the soft-frame, argument and virtual registers.
From-SVN: r118481
Uros Bizjak [Sat, 4 Nov 2006 12:07:29 +0000 (13:07 +0100)]
i386.md (*movxf_nointeger, [...]): Enable patterns for standard 80387 constants.
* config/i386/i386.md (*movxf_nointeger, *movxf_integer): Enable
patterns for standard 80387 constants.
From-SVN: r118479
Steven Bosscher [Sat, 4 Nov 2006 11:13:57 +0000 (11:13 +0000)]
ChangeLog fix
From-SVN: r118478
Paolo Bonzini [Sat, 4 Nov 2006 08:36:45 +0000 (08:36 +0000)]
fwprop.c: New file.
2006-11-03 Paolo Bonzini <bonzini@gnu.org>
Steven Bosscher <stevenb.gcc@gmail.com>
* fwprop.c: New file.
* Makefile.in: Add fwprop.o.
* tree-pass.h (pass_rtl_fwprop, pass_rtl_fwprop_with_addr): New.
* passes.c (init_optimization_passes): Schedule forward propagation.
* rtlanal.c (loc_mentioned_in_p): Support NULL value of the second
parameter.
* timevar.def (TV_FWPROP): New.
* common.opt (-fforward-propagate): New.
* opts.c (decode_options): Enable forward propagation at -O2.
* gcse.c (one_cprop_pass): Do not run local cprop unless touching jumps.
* cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1, find_best_addr,
canon_for_address, table_size): Remove.
(new_basic_block, insert, remove_from_table): Remove references to
table_size.
(fold_rtx): Process SUBREGs and MEMs with equiv_constant, make
simplification loop more straightforward by not calling fold_rtx
recursively.
(equiv_constant): Move here a small part of fold_rtx_subreg,
do not call fold_rtx. Call avoid_constant_pool_reference
to process MEMs.
* recog.c (canonicalize_change_group): New.
* recog.h (canonicalize_change_group): New.
* doc/invoke.texi (Optimization Options): Document fwprop.
* doc/passes.texi (RTL passes): Document fwprop.
Co-Authored-By: Steven Bosscher <stevenb.gcc@gmail.com>
From-SVN: r118475
Geoffrey Keating [Sat, 4 Nov 2006 02:59:52 +0000 (02:59 +0000)]
c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1.
* c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1.
(merge_decls): Implement WANT_C99_INLINE_SEMANTICS.
(grokdeclarator): Likewise.
From-SVN: r118474
Roger Sayle [Sat, 4 Nov 2006 00:51:51 +0000 (00:51 +0000)]
call.c (build_op_delete_call): Test user-visible type against size_type_node...
* call.c (build_op_delete_call): Test user-visible type against
size_type_node, instead of against the internal type, sizetype.
* class.c (type_requires_array_cookie): Likewise.
* mangle.c (write_builtin_type) <INTEGER_TYPE>: Remove special
handling of TYPE_IS_SIZETYPE.
* typeck.c (type_after_usual_arithmetic_conversions): Remove
special case handling of TYPE_IS_SIZETYPE.
(comptypes): Likewise.
From-SVN: r118472
GCC Administrator [Sat, 4 Nov 2006 00:17:39 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118470
Steven Bosscher [Fri, 3 Nov 2006 22:12:37 +0000 (22:12 +0000)]
tree-dump.c (dump_enable_all): Rename local variable ir_type to avoid name conflicts.
* tree-dump.c (dump_enable_all): Rename local variable
ir_type to avoid name conflicts.
* cfgloopmanip.c (lv_adjust_loop_entry_edge): Check for IR_GIMPLE
instead of using ir_type().
* profile.c (tree_register_profile_hooks): Likewise.
* value-prof.c (tree_register_value_prof_hooks): Likewise.
* basic-block.h (struct edge_def): Likewise.
* config/arm/arm.c (legitimize_pic_address): Likewise.
* coretypes.h (ir_type): New enum of all intermediate languages
used in GCC.
* cfghooks.c (ir_type): Rename to...
(current_ir_type): ...this. Distinguish between cfgrtl and
cfglayout mode when the current IR is RTL. Return enum ir_type.
* cfghooks.h (ir_type): Replace with current_ir_type prototype.
From-SVN: r118465
Paul Brook [Fri, 3 Nov 2006 17:49:43 +0000 (17:49 +0000)]
arm.c (arm_file_start): New function.
2006-11-03 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (arm_file_start): New function.
(TARGET_ASM_FILE_START): Define.
(arm_default_cpu): New variable.
(arm_override_options): Set arm_default_cpu.
From-SVN: r118461
David Ung [Fri, 3 Nov 2006 17:39:44 +0000 (17:39 +0000)]
typo
From-SVN: r118460
David Ung [Fri, 3 Nov 2006 17:32:39 +0000 (17:32 +0000)]
mips.h (processor_type): Removed PROCESSOR_24K, add PROCESSOR_24KC and PROCESSOR_24KF.
* config/mips/mips.h (processor_type): Removed PROCESSOR_24K, add
PROCESSOR_24KC and PROCESSOR_24KF.
* config/mips/mips.c (mips_cpu_info_table): Add processor names
and aliases for 4kec/4kem/4kep/24kec/24kef/24kex/34kc/34kf/34kx.
(mips_rtx_cost_data): Add costs for the 24kc.
* config/mips/mips.md ("cpu"): Remove 24k, add 24kc and 24kf.
* config/mips/24k.md: Remove references to 24k and replace with
uses of 24kc/24kf in the appropriate reservations.
* doc/invoke.texi (MIPS Options): Updated.
From-SVN: r118459
J"orn Rennecke [Fri, 3 Nov 2006 14:52:19 +0000 (14:52 +0000)]
crt1.asm: Fix #ifdef indent.
gcc:
2006-11-03 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/crt1.asm: Fix #ifdef indent.
2006-11-03 J"orn Rennecke <joern.rennecke@st.com>
Merged from STMicroelectronics sources:
2006-10-06 Andrew Stubbs <andrew.stubbs@st.com>
* config/sh/crt1.asm (vbr_600): Add missing #if.
2006-08-03 J"orn Rennecke <joern.rennecke@st.com>
* sh.opt (mfused-madd): New option.
* sh.md (mac_media, macsf3): Make conditional on TARGET_FMAC.
2006-07-04 Andrew Stubbs <andrew.stubbs@st.com>
* config/sh/crt1.asm (vbr_start): Move to new section .test.vbr.
Remove pointless handler at VBR+0.
(vbr_200, vbr_300, vbr_500): Remove pointless handler.
(vbr_600): Save and restore mach and macl, fpul and fpscr and fr0 to
fr7. Make sure the timer handler is called with the correct FPU
precision setting, according to the ABI.
2006-06-14 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/sh.opt (m2a-single, m2a-single-only): Fix Condition.
* config/sh/sh.h (SUPPORT_SH2A_NOFPU): Fix condition.
(SUPPORT_SH2A_SINGLE_ONLY, SUPPORT_SH2A_SINGLE_ONLY): Likewise.
2006-06-09 J"orn Rennecke <joern.rennecke@st.com>
* sh.md (cmpgeusi_t): Change into define_insn_and_split. Accept
zero as second operand.
2006-04-28 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm:
Fixed some bugs related to negative values, in particular -0
and overflow at -0x80000000.
* config/sh/divcost-analysis: Added sh4-300 figures.
2006-04-27 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/t-sh (MULTILIB_MATCHES): Add -m4-300* / -m4-340 options.
2006-04-26 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/t-sh (OPT_EXTRA_PARTS): Add libgcc-4-300.a.
($(T)div_table-4-300.o, $(T)libgcc-4-300.a): New rules.
* config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm:
New files.
* config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-4-300 for -m4-300* /
-m4-340.
2006-04-24 J"orn Rennecke <joern.rennecke@st.com>
SH4-300 scheduling description & fixes to SH4-[12]00 description:
* sh.md: New instruction types: fstore, movi8, fpscr_toggle, gp_mac,
mac_mem, mem_mac, dfp_mul, fp_cmp.
(insn_class, dfp_comp, any_fp_comp): Update.
(push_fpul, movsf_ie, fpu_switch, toggle_sz, toggle_pr): Update type.
(cmpgtsf_t, "cmpeqsf_t, cmpgtsf_t_i4, cmpeqsf_t_i4): Likewise.
(muldf3_i): Likewise.
(movsi_i): Split rI08 alternative into two separate alternatives.
Update type.
(movsi_ie, movsi_i_lowpart): Likewise.
(movqi_i): Split ri alternative into two separate alternatives.
Update type.
* sh1.md (sh1_load_store, sh1_fp): Update.
* sh4.md (sh4_store, sh4_mac_gp, fp_arith, fp_double_arith): Update.
(mac_mem, sh4_fpscr_toggle): New insn_reservations.
* sh4a.md (sh4a_mov, sh4a_load, sh4a_store, sh4a_fp_arith): Update.
(sh4a_fp_double_arith): Likewise.
* sh4-300.md: New file.
* sh.c (sh_handle_option): Handle m4-300* options.
(sh_adjust_cost): Fix latency of auto-increments.
Handle SH4-300 differently than other SH4s. Check for new insn types.
* sh.h (OVERRIDE_OPTIONS): Initilize sh_branch_cost if it has not
been set by an option.
* sh.opt (m4-300, m4-100-nofpu, m4-200-nofpu): New options.
(m4-300-nofpu, -m4-340, m4-300-single, m4-300-single-only): Likewise.
(mbranch-cost=): Likewise.
* superh.h (STARTFILE_SPEC): Take -m4-340 into account.
* sh.md (mulsf3): Remove special expansion code.
(mulsf3_ie): Now a define_insn_and_split.
(macsf3): Allow for TARGET_SH4.
* sh.md (cbranchsi4, cbranchdi4, cbranchdi4_i): New patterns.
* sh.c (prepare_cbranch_operands, expand_cbranchsi4): New functions.
(expand_cbranchdi4): Likewise.
(sh_rtx_costs): Give lower cost for certain CONST_INT values and for
CONST_DOUBLE if the outer code is COMPARE.
* sh.h (OPTIMIZATION_OPTIONS): If not optimizing for size, set
TARGET_CBRANCHDI4 and TARGET_EXPAND_CBRANCHDI4.
(OVERRIDE_OPTIONS): For TARGET_SHMEDIA, clear TARGET_CBRANCHDI4.
(LEGITIMATE_CONSTANT_P): Also allow DImode and VOIDmode CONST_DOUBLEs.
Remove redundant fp_{zero,one}_operand checks.
* sh.opt (mcbranchdi, mexpand-cbranchdi, mcmpeqdi): New options.
* sh-protos.h (prepare_cbranch_operands, expand_cbranchsi4): Declare.
(expand_cbranchdi4): Likewise.
2006-04-20 J"orn Rennecke <joern.rennecke@st.com>
* sh.h (LOCAL_ALIGNMENT): Use DATA_ALIGNMENT.
gcc/testsuite:
2006-11-03 J"orn Rennecke <joern.rennecke@st.com>
* testsuite/gcc.c-torture/execute/arith-rand-ll.c:
Also test for bogus rest sign.
From-SVN: r118458
Francois-Xavier Coudert [Fri, 3 Nov 2006 11:51:09 +0000 (12:51 +0100)]
re PR libfortran/27895 (problem with RESHAPE and zero-sized arrays)
PR libfortran/27895
* intrinsics/reshape_generic.c (reshape_internal): Fix so that it
works correctly for zero-sized arrays.
* m4/reshape.m4: Likewise.
* generated/reshape_r16.c: Regenerate.
* generated/reshape_c4.c: Regenerate.
* generated/reshape_i4.c: Regenerate.
* generated/reshape_c16.c: Regenerate.
* generated/reshape_r10.c: Regenerate.
* generated/reshape_r8.c: Regenerate.
* generated/reshape_c10.c: Regenerate.
* generated/reshape_c8.c: Regenerate.
* generated/reshape_i8.c: Regenerate.
* generated/reshape_i16.c: Regenerate.
* generated/reshape_r4.c: Regenerate.
* gcc/testsuite/gfortran.dg/zero_sized_1.f90: Uncomment checks
for RESHAPE.
From-SVN: r118455
Gary Benson [Fri, 3 Nov 2006 10:16:30 +0000 (10:16 +0000)]
2006-11-03 Gary Benson <gbenson@redhat.com>
* java/net/Inet4Address.java
(FAMILY): Renamed to AF_INET.
(<init>, writeReplace): Reflect the above.
* java/net/Inet6Address.java
(FAMILY): Renamed to AF_INET6.
(<init>): Reflect the above.
From-SVN: r118452
Gary Benson [Fri, 3 Nov 2006 10:16:04 +0000 (10:16 +0000)]
InetAddress.java: Removed.
2006-11-03 Gary Benson <gbenson@redhat.com>
* java/net/InetAddress.java: Removed.
* java/net/natInetAddressNoNet.cc: Likewise.
* java/net/natInetAddressPosix.cc: Likewise.
* java/net/natInetAddressWin32.cc: Likewise.
* java/net/VMInetAddress.java (getLocalHostname,
lookupInaddrAny, getHostByAddr, getHostByName,
aton): Replace glue methods with native ones.
* java/net/natVMInetAddressNoNet.cc: New file.
* java/net/natVMInetAddressPosix.cc: Likewise.
* java/net/natVMInetAddressWin32.cc: Likewise.
* Makefile.am, configure.ac: Reflect the above.
* sources.am, Makefile.in, configure: Rebuilt.
* java/net/natVMNetworkInterfaceWin32.cc
(winsock2GetRealNetworkInterfaces): Create InetAddress
objects using InetAddress.getByAddress.
* gnu/java/net/natPlainSocketImplWin32.cc
(accept, getOption): Likewise.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc
(peekData, receive, getOption): Likewise.
From-SVN: r118451
Brooks Moses [Fri, 3 Nov 2006 05:07:59 +0000 (05:07 +0000)]
error.c (show_locus): Remove "In file" from error messages.
* fortran/error.c (show_locus): Remove "In file" from error messages.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Remove expected "In file" from error
messages.
From-SVN: r118450
Geoffrey Keating [Fri, 3 Nov 2006 03:11:50 +0000 (03:11 +0000)]
inclhack.def (glibc_c99_inline_1): New.
* inclhack.def (glibc_c99_inline_1): New.
* inclhack.def (glibc_c99_inline_2): New.
* inclhack.def (glibc_c99_inline_3): New.
* inclhack.def (glibc_c99_inline_4): New.
* fixincl.x: Regenerate.
* tests/base/bits/string2.h: New.
* tests/base/sys/sysmacros.h: New.
* tests/base/sys/stat.h: Update.
From-SVN: r118449
Andrew Pinski [Fri, 3 Nov 2006 01:27:39 +0000 (01:27 +0000)]
md.texi (RS6000 constraints): Document H, Z, a, t, and W constraints.
2006-11-02 Andrew Pinski <andrew_pinski@playstation.sony.com>
* doc/md.texi (RS6000 constraints): Document H, Z, a, t, and W
constraints.
From-SVN: r118448
Brooks Moses [Fri, 3 Nov 2006 01:06:26 +0000 (01:06 +0000)]
invoke.texi: Fix mfp-trap-mode typo.
* doc/invoke.texi: Fix mfp-trap-mode typo.
From-SVN: r118447
Carlos O'Donell [Fri, 3 Nov 2006 00:59:32 +0000 (00:59 +0000)]
linux-elf.h (NEED_INDICATE_EXEC_STACK): Define as 1.
2006-11-02 Carlos O'Donell <carlos@codesourcery.com>
gcc/
* config/arm/linux-elf.h (NEED_INDICATE_EXEC_STACK): Define as 1.
* arm.c (arm_file_end): If NEED_INDICATE_EXEC_STACK call
file_end_indicate_exec_stack.
* arm.h [!NEED_INDICATE_EXEC_STACK] (NEED_INIDCATE_EXEC_STACK):
Define as 0.
* lib1funcs.asm [__ELF__ && __linux__]: Emit .note.GNU-stack section
for a non-executable stack.
* crti.asm: Likewise.
* crtn.asm: Likewise.
* libunwind.S: Likewise.
From-SVN: r118445
Ben Elliston [Fri, 3 Nov 2006 00:56:35 +0000 (00:56 +0000)]
tree-ssa.c (warn_uninit): Use expand_location variables for locus and declaration locus.
* tree-ssa.c (warn_uninit): Use expand_location variables for
locus and declaration locus.
From-SVN: r118444
GCC Administrator [Fri, 3 Nov 2006 00:17:46 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118442