gcc.git
16 years agore PR objc/29197 (ICE after error with array type with undefined variable)
Andrew Pinski [Wed, 26 Mar 2008 03:19:58 +0000 (20:19 -0700)]
re PR objc/29197 (ICE after error with array type with undefined variable)

2008-03-25  Andrew Pinski  <pinskia@gmail.com>

        PR objc/29197
        * objc-act.c (encode_type): Handle when type is error_mark_node.
        (objc_push_parm): Handle when the type of parm is error_mark_node.

2008-03-25  Andrew Pinski  <pinskia@gmail.com>

        PR objc/29197
        * objc.dg/method-20.m: New testcase.

From-SVN: r133540

16 years agoDaily bump.
GCC Administrator [Wed, 26 Mar 2008 00:17:35 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133538

16 years agoMake-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.
Tom Tromey [Tue, 25 Mar 2008 20:52:41 +0000 (20:52 +0000)]
Make-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.

* Make-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.
(objcp/objcp-act.o): Restore target.

From-SVN: r133532

16 years agore PR rtl-optimization/35232 (ICE in fp-int-convert-double.c at -O2)
Richard Sandiford [Tue, 25 Mar 2008 20:43:06 +0000 (20:43 +0000)]
re PR rtl-optimization/35232 (ICE in fp-int-convert-double.c at -O2)

gcc/
PR rtl-optimization/35232
* reload1.c (reg_reloaded_call_part_clobbered): Clarify comment.
(forget_old_reloads_1, forget_marked_reloads): Don't clear
reg_reloaded_call_part_clobbered here.
(reload_regs_reach_end_p): New function.
(reload_reg_rtx_for_input): New variable.
(reload_reg_rtx_for_output): Likewise.
(emit_input_reload_insns): Use reloadreg rather than rl->reg_rtx
when reassigning a pseudo register.  Load reloadreg from
reload_reg_rtx_for_input, moving the mode and register
calculation to...
(do_input_reload): ...here.  Use the mode-adjusted reg_rtx
instead of the original when deciding whether an input reload
would be a no-op or whether an output reload can be deleted.
(emit_output_reload_insns): Use the mode-adjusted reg_rtx
when setting up new_spill_reg_store.  Load it from
reload_reg_rtx_for_output, moving the mode and register
calculation to...
(do_output_reload): ...here.  Use the mode-adjusted reg_rtx
instead of the original when deciding whether an output reload
would be a no-op.  Do the same when modifying insn notes.
Use rtx_equal_p instead of == to compare the registers.
(inherit_piecemeal_p): Take a mode and two register numbers
as argument.
(emit_reload_insns): Clear new_spill_reg_store for every hard
register in the reload register.  Remove spill registers
from reg_reloaded_valid before considering whether to record
inheritance information for them.  Use reload_reg_rtx_for_output
instead of reg_rtx when recording output reloads.  Use
reload_reg_rtx_for_input instead of reg_rtx when recording
input reloads.  Set or clear reg_reloaded_call_part_clobbered
at the same time as setting reg_reloaded_valid.
(delete_output_reload): Add a new_reload_reg parameter and use it
instead of rld[j].reg_rtx.
(emit_input_reload_insns, do_input_reload, do_output_reload): Adjust
calls accordingly.

gcc/testsuite/
PR rtl-optimization/35232
* gcc.target/mips/pr35232.c: New test.

From-SVN: r133531

16 years agoMakefile.in (build/gensupport.o): Depend on insn-modes.h.
Tom Tromey [Tue, 25 Mar 2008 18:53:41 +0000 (18:53 +0000)]
Makefile.in (build/gensupport.o): Depend on insn-modes.h.

* Makefile.in (build/gensupport.o): Depend on insn-modes.h.
(build/genattr.o): Likewise.
(build/genattrtab.o): Likewise.
(build/gencodes.o): Likewise.
(build/genconfig.o): Likewise.
(build/genconstants.o): Likewise.
(build/genemit.o): Likewise.
(build/genextract.o): Likewise.
(build/genflags.o): Likewise.

From-SVN: r133527

16 years agorevert: re PR ada/35186 (implicit assumption about alignment of DImode)
Eric Botcazou [Tue, 25 Mar 2008 17:58:54 +0000 (17:58 +0000)]
revert: re PR ada/35186 (implicit assumption about alignment of DImode)

        Revert
        2008-03-05  Eric Botcazou  <ebotcazou@adacore.com>
        PR ada/35186
        * decl.c (maybe_pad_type): Avoid padding an integral type when
        bumping its alignment is sufficient.

From-SVN: r133526

16 years agoxtensa.c (xtensa_va_start): Use build_int_cst instead of size_int for integer types.
Bob Wilson [Tue, 25 Mar 2008 17:56:31 +0000 (17:56 +0000)]
xtensa.c (xtensa_va_start): Use build_int_cst instead of size_int for integer types.

* config/xtensa/xtensa.c (xtensa_va_start): Use build_int_cst
instead of size_int for integer types.
(xtensa_gimplify_va_arg_expr): Likewise.  Convert index to sizetype
to match type of MINUS_EXPR.

From-SVN: r133525

16 years agoconfigure: Rebuilt.
Tom Tromey [Tue, 25 Mar 2008 17:29:02 +0000 (17:29 +0000)]
configure: Rebuilt.

* configure: Rebuilt.
* configure.ac (BUILD_DEPMODE): Extract CCDEPMODE from temporary
Makefile.

From-SVN: r133524

16 years agox-solaris (host-solaris.o): Update.
Tom Tromey [Tue, 25 Mar 2008 16:56:50 +0000 (16:56 +0000)]
x-solaris (host-solaris.o): Update.

gcc
* config/x-solaris (host-solaris.o): Update.
* config/x-linux (host-linux.o): Update.
* config/x-hpux (host-hpux.o): Update.
* config/x-darwin (host-darwin.o): Update.
* config/v850/t-v850e (v850-c.o): Update.
* config/v850/t-v850 (v850-c.o): Update.
* config/t-vxworks (vxworks.o): Update.
* config/t-sol2 (sol2-c.o, sol2.o): Update.
* config/t-darwin (darwin.o, darwin-c.o, darwin-driver.o):
Update.
* config/spu/t-spu-elf (spu-c.o): Update.
(spu.o): Remove.
* config/sh/t-symbian (sh-c.o): Update.
(symbian.o): Update.
* config/sh/t-sh (sh-c.o): Update.
* config/score/t-score-elf (score7.o, score3.o): Update.
* config/rs6000/x-rs6000 (driver-rs6000.o): Update.
* config/rs6000/x-darwin64 (host-ppc64-darwin.o): Update.
* config/rs6000/x-darwin (host-ppc-darwin.o): Update.
* config/rs6000/t-rs6000 (rs6000-c.o): Update.
(rs6000.o): Remove.
* config/m68k/t-uclinux (generated_files): Add sysroot-suffix.h.
* config/m32c/t-m32c (m32c-pragma.o): Update.
* config/ia64/t-ia64 (ia64-c.o): Update.
* config/i386/x-mingw32 (host-mingw32.o): Update.
* config/i386/x-i386 (driver-i386.o): Update.
* config/i386/x-darwin (host-i386-darwin.o): Update.
* config/i386/x-cygwin (host-cygwin.o): Update.
* config/i386/t-nwld (nwld.o): Update.
* config/i386/t-netware (netware.o): Update.
* config/i386/t-interix (winnt.o): Update.
* config/i386/t-cygwin (cygwin1.o, cygwin2.o): Update.
* config/i386/t-cygming (winnt.o, winnt-cxx.o, winnt-stubs.o,
msformat-c.o): Update.
* config/bfin/t-bfin-linux (generated_files): Add
linux-sysroot-suffix.h.
* config/arm/t-wince-pe (pe.o): Update.
* config/arm/t-strongarm-pe (pe.o): Update.
* config/arm/t-pe (pe.o): Update.
* config/arm/t-arm (arm-c.o): Update.
* doc/install.texi (Prerequisites): Require make 3.80.
* Makefile.in: Remove .o targets.
(CCDEPMODE, DEPDIR, depcomp, BUILD_DEPMODE): New variables.
(OBSTACK_H, FIBHEAP_H, PARTITION_H, MD5_H, BCONFIG_H): Remove.
(simple_generated_h, simple_generated_c): Move earlier.
(generated_files): New variable.
(TARGET_H, MACHMODE_H, HOOKS_H, HOSTHOOKS_DEF_H, LANGHOOKS_DEF_H,
TARGET_DEF_H, RTL_BASE_H, RTL_H, PARAMS_H, BUILTINS_DEF, TREE_H,
BASIC_BLOCK_H, GCOV_IO_H, COVERAGE_H, DEMANGLE_H, RECOG_H,
ALIAS_H, EMIT_RTL_H, FLAGS_H, FUNCTION_H, EXPR_H, OPTABS_H,
REGS_H, RA_H, RESOURCE_H, SCHED_INT_H, INTEGRATE_H, CFGLAYOUT_H,
CFGLOOP_H, IPA_UTILS_H, IPA_REFERENCE_H, IPA_TYPE_ESCAPE_H,
CGRAPH_H, DF_H, RESOURCE_H, DDG_H, GCC_H, GGC_H, TIMEVAR_H,
INSN_ATTR_H, C_COMMON_H, C_PRAGMA_H, C_TREE_H, SYSTEM_H,
PREDICT_H, DECNUM_H, MKDEPS_H, SYMTAB_H, TREE_DUMP_H,
TREE_GIMPLE_H, TREE_FLOW_H, TREE_SSA_LIVE_H, PRETTY_PRINT_H,
DIAGNOSTIC_H, C_PRETTY_PRINT_H, SCEV_H, LAMBDA_H, TREE_DATA_REF_H,
VARRAY_H, TREE_INLINE_H, REAL_H, DBGCNT_H, EBIMAP_H): Remove.
(.c.o): Remove.
(COMPILE.base, COMPILE): New variables.
(%.o): New pattern rule.
(ALL_HOST_OBJS): New variable.
(xgcc$(exeext), cpp$(exeext)): Remove extra version.o.
(dummy-checksum.o, cc1-checksum.o): Remove.
(DRIVER_SHLIB): New variable.
(DRIVER_DEFINES): Use it.
(gencondmd.c): Move out of build/.
(s-conditions): Update.
(BUILDCOMPILE.base, BUILDCOMPILE): New variables.
(ALL_BUILD_OBJS): Likewise.
(build/%.o): Use BUILDCOMPILE.
(build/ggc-none.o, build/ggc-none.o, build/min-insn-modes.o,
build/print-rtl.o, build/read-rtl.o, build/rtl.o, build/vec.o,
build/gencondmd.o, build/genattrtab.o, build/genautomata.o,
build/gencheck.o, build/gencodes.o, build/genconditions.o,
build/genconfig.o, build/genconstants.o, build/genemit.o,
build/genextract.o, build/genflags.o, build/genmddeps.o,
build/genopinit.o, build/genoutput.o, build/genpeep.o,
build/genpreds.o, build/genrecog.o, build/gcov-iov.o,
build/gen-protos.o, build/scan.o, build/fix-header.o,
build/scan-decls.o): Simplify.
(collect2.o, c-opts.o, gcc.o, gccspec.o, gcc-options.o,
cppdefault.o, protoize.o, unprotoize.o, intl.o, version.o,
prefix.o, toplev.o): Reduce to variable setting.
(libbackend.o): Use COMPILE.  Remove most dependencies.  Move
later.
($(out_object_file), gcc-options.o): New targets.
($(ALL_HOST_OBJS)): New target.
Include dependency files.
* configure: Rebuilt.
* configure.ac: Call ZW_CREATE_DEPDIR,
ZW_PROG_COMPILER_DEPENDENCIES.
* doc/sourcebuild.texi (Front End Directory): Document new
variable.
gcc/java
* Make-lang.in: Removed most explicit .o targets.
(java/jvspec.o): Reduce to variable setting.  Moved to java/.
($(GCJ)$(exeext)): Update.
(JAVA_OBJS): New variable.
(JCFDUMP_OBJS): Reformat.
(java_OBJS): New variable.
(java/jvspec.o-warn): Update.
(java/parse.o-warn): Remove.
(JAVA_TREE_H): Remove.
(java/jcf-io.o): Reduce to variable setting.
(ALL_CPPFLAGS): Likewise.
gcc/objc
* Make-lang.in (objc_OBJS): New variable.
(cc1obj-checksum.o, objc/objc-lang.o, objc/objc-act.o): Remove.
gcc/objcp
* Make-lang.in (objcp_OBJS): New variable.
(cc1objplus-checksum.o, objcp/objcp-lang.o, objcp/objcp-decl.o,
objcp/objcp-act.o): Remove.
gcc/cp
* Make-lang.in: Remove .o targets.
(cp/g++spec.o): Moved to cp/.  Reduce to variable setting.
(GXX_OBJS): Update.
(c++_OBJS): New variable.
(CXX_TREE_H, CXX_PRETTY_PRINT_H): Remove.
gcc/fortran
* Make-lang.in: Remove .o targets.
(fortran_OBJS): New variable.
(fortran/gfortranspec.o): Move to fortran/.  Reduce to variable
setting.
(GFORTRAN_D_OBJS): Update.
(GFORTRAN_TRANS_DEPS): Remove.

From-SVN: r133523

16 years agotypeck.c (composite_pointer_type_r): Add SFINAE support.
Douglas Gregor [Tue, 25 Mar 2008 13:53:58 +0000 (13:53 +0000)]
typeck.c (composite_pointer_type_r): Add SFINAE support.

2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * typeck.c (composite_pointer_type_r): Add SFINAE support.
       (composite_pointer_type): Ditto.
       (common_type): Fix call to composite_pointer_type.
       (cxx_sizeof_nowarn): New; used to be a macro.
       (cxx_sizeof_expr): Add SFINAE support.
       (cxx_alignof_expr): Ditto.
       (decay_conversion): Fix calls for SFINAE support.
       (rationalize_conditional_expr): Add SFINAE support.
       (build_class_member_access_expr): Ditto.
       (finish_class_member_access_expr): Ditto.
       (build_x_indirect_ref): Ditto.
       (build_indirect_ref): Original version renamed to
       cp_build_indirect_ref; new version provides a bridge from
       c-common.
       (cp_build_indirect_ref): Was build_indirect_ref; added SFINAE
       support.
       (get_member_function_from_ptrfunc): Fix calls for SFINAE support.
       (build_function_call): Original version renamed to
       cp_build_function_call; new version provides a bridge from
       c-common.
       (cp_build_function_call): Was build_function_call; added SFINAE
       support.
       (convert_arguments): Add SFINAE support.
       (build_x_binary_op): Ditto.
       (build_binary_op): Original version renamed to cp_build_binary_op;
       new version provides a bridge from c-common.
       (cp_build_binary_op): Was build_binary_op; added SFINAE support.
       (pointer_diff): Fix calls for SFINAE.
       (build_x_unary_op): Add SFINAE support.
       (condition_conversion): Fix calls for SFINAE.
       (build_unary_op): Original version renamed to cp_build_unary_op;
       new version provides a bridge from c-common.
       (cp_build_unary_op): Was build_unary_op; added SFINAE support.
       (unary_complex_lvalue): Fix calls for SFINAE.
       (build_x_conditional_expr): Add SFINAE support.
       (build_x_compound_expr_from_list): Fix calls for SFINAE.
       (build_x_compound_expr): Add SFINAE support.
       (convert_ptrmem): Fix calls for SFINAE.
       (build_static_cast_1): Add SFINAE support.
       (build_static_cast): Ditto.
       (build_reinterpret_cast_1): Ditto.
       (build_reinterpret_cast): Ditto.
       (build_const_cast_1): Ditto.
       (build_const_cast): Ditto.
       (build_c_cast): Ditto.
       (build_modify_expr): Original version renamed to
       cp_build_modify_expr; new version provides a bridge from c-common.
       (cp_build_modify_expr): Was build_modify_expr; added SFINAE
       support.
       (build_x_modify_expr): Add SFINAE support.
       (build_ptrmemfunc): Fix calls for SFINAE.
       (convert_for_assignment): Add SFINAE support.
       (convert_for_initialization): Ditto.
       (check_return_expr): Fix calls for SFINAE.
       (lvalue_or_else): Add SFINAE support.
       * init.c (perform_member_init): Fix calls for SFINAE.
       (emit_mem_initializers): Ditto.
       (expand_virtual_init): Ditto.
       (expand_cleanup_for_base): Ditto.
       (build_aggr_init): Add SFINAE support.
       (expand_default_init): Ditto.
       (expand_aggr_init_1): Fix calls for SFINAE.
       (build_offset_ref): Ditto.
       (build_new_1): Add SFINAE support.
       (build_new): Ditto.
       (build_vec_delete_1): Fix calls for SFINAE.
       (get_temp_regvar): Ditto.
       (build_vec_init): Add SFINAE support.
       (build_dtor_call): Fix calls for SFINAE.
       (build_delete): Ditto.
       (push_base_cleanups): Ditto.
       (build_vec_delete_1): Ditto.
       * class.c (build_base_path): Fix calls for SFINAE.
       (build_simple_base_path): Ditto.
       (convert_to_base_statically): Ditto.
       (build_vfn_ref): Ditto.
       (resolve_address_of_overloaded_function): Ditto.
       * decl.c (check_initializer): Fix calls for SFINAE.
       (register_dtor_fn): Ditto.
       (compute_array_index_type): Ditto.
       (finish_enum): Ditto.
       (start_preparsed_function): Ditto.
       (cxx_maybe_build_cleanup): Ditto.
       * call.c (convert_like): Add COMPLAIN argument.
       (convert_like_with_context): Ditto.
       (build_this): Fix calls for SFINAE.
       (build_user_type_conversion): Ditto.
       (resolve_args): Ditto.
       (build_new_function_call): Add SFINAE support.
       (build_operator_new_call): Fix calls for SFINAE.
       (build_object_call): Add SFINAE support.
       (build_conditional_expr): Ditto.
       (build_new_op): Ditto.
       (build_op_delete_call): Fix calls for SFINAE.
       (build_temp): Ditto.
       (convert_like_real): Add SFINAE support.
       (build_x_va_arg): Fix calls for SFINAE.
       (convert_default_arg): Ditto.
       (build_over_call): Add SFINAE support.
       (build_java_interface_fn_ref): Fix calls for SFINAE.
       (build_special_member_call): Add SFINAE support.
       (build_new_method_call): Ditto.
       (perform_implicit_conversion): Ditto.
       (perform_direct_initialization_if_possible): Ditto.
       (initialize_reference): Fix calls for SFINAE.
       * method.c (do_build_assign_ref): Fix calls for SFINAE.
       * rtti.c (build_headof): Fix calls for SFINAE.
       (get_tinfo_decl_dynamic): Ditto.
       (get_typeid): Ditto.
       (build_dynamic_cast_1): Add SFINAE support.
       (build_dynamic_cast): Ditto.
       (tinfo_base_init): Fix calls for SFINAE.
       * except.c (do_get_exception_ptr): Fix calls for SFINAE.
       (do_end_catch): Ditto.
       (initialize_handler_parm): Ditto.
       (expand_start_catch_block): Ditto.
       (do_allocate_exception): Ditto.
       (do_free_exception): Ditto.
       (build_throw): Ditto.
       * cvt.c (build_up_reference): Fix calls for SFINAE.
       (convert_to_reference): Ditto.
       (ocp_convert): Ditto.
       (convert_to_void): Add SFINAE support.
       * tree.c (build_dummy_object): Fix calls for SFINAE.
       (stabilize_expr): Ditto.
       * cp-tree.h (build_conditional_expr): Add tsubst_flags_t
       parameter.
       (build_new_method_call): Ditto.
       (build_special_member_call): Ditto.
       (build_new_op): Ditto.
       (perform_implicit_conversion): Ditto.
       (perform_direct_initialization_if_possible): Ditto.
       (convert_to_void): Ditto.
       (build_aggr_init): Ditto.
       (build_new): Ditto.
       (build_vec_init): Ditto.
       (build_dynamic_cast): Ditto.
       (finish_call_expr): Ditto
       (cxx_sizeof_or_alignof_expr): Add COMPLAIN parameter.
       (cxx_sizeof_nowarn): Remove macro; add function declaration.
       (build_class_member_access_expr): Add tsubst_flags_t parameter.
       (finish_class_member_access_expr): Ditto.
       (build_x_indirect_ref): Ditto.
       (cp_build_indirect_ref): New.
       (cp_build_function_call): Add tsubst_flags_t parameter.
       (build_x_unary_op): Ditto.
       (cp_build_unary_op): New.
       (build_x_conditional_expr): Add tsubst_flags_t parameter.
       (build_x_compound_expr): Ditto.
       (build_compound_expr): Ditto.
       (build_static_cast): Ditto.
       (build_reinterpret_cast): Ditto.
       (build_const_cast): Ditto.
       (build_c_cast): Ditto.
       (build_x_modify_expr): Ditto.
       (cp_build_modify_expr): New.
       (convert_for_initialization): Add tsubst_flags_t parameter.
       (cp_build_binary_op): Remove macro; add function declaration.
       (invalid_nonstatic_memfn_p): Add tsubst_flags_t parameter.
       (lvalue_or_else): Ditto.
       (build_functional_cast): Ditto.
       * typeck2.c (digest_init): Fix calls for SFINAE.
       (process_init_constructor_array): Ditto.
       (process_init_constructor_record): Ditto.
       (build_x_arrow): Ditto.
       (build_m_component_ref): Ditto.
       (build_functional_cast): Add SFINAE support.
       * pt.c (tsubst_copy_and_build): Add (more) SFINAE support.
       * semantics.c (simplify_loop_decl_cond): Fix calls for SFINAE.
       (finish_expr_stmt): Ditto.
       (finish_for_expr): Ditto.
       (finish_asm_stmt): Ditto.
       (finish_non_static_data_member): Ditto.
       (finish_qualified_id_expr): Ditto.
       (finish_call_expr): Add SFINAE support.
       (finish_increment_expr): Fix calls for SFINAE.
       (finish_unary_op_expr): Ditto.
       (simplify_aggr_init_expr): Ditto.
       (finish_omp_clauses): Ditto.
       (finish_omp_for): Ditto.
       (finish_omp_barrier): Ditto.
       (finish_omo_flush): Ditto.
       * decl2.c (grok_array_decl): Fix calls or SFINAE.
       (build_anon_union_vars): Ditto.
       (get_guard_cond): Ditto.
       (set_guard): Ditto.
       (one_static_initialization_or_destruction): Ditto.
       (do_static_initialization_or_destruction): Ditto.
       (generate_ctor_or_dtor_function): Ditto.
       (build_offset_ref_call_from_tree): Ditto.
       * parser.c (cp_parser_postfix_expression): Fix calls for SFINAE.
       (cp_parser_postfix_dot_deref_expression): Ditto.
       (cp_parser_unary_expression): Ditto.
       (cp_parser_new_expression): Ditto.
       (cp_parser_cast_expression): Ditto.
       (cp_parser_binary_expression): Ditto.
       (cp_parser_question_colon_clause): Ditto.
       (cp_parser_assignment_expression): Ditto.
       (cp_parser_expression): Ditto.
       (cp_parser_builtin_offsetof): Ditto.
       (cp_parser_template_argument): Ditto.
       (cp_parser_functional_cast): Ditto.

2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * c-common.c (c_sizeof_or_alignof_type): If we're not allowed to
       complain when we hit an error, return ERROR_MARK_NODE.

2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * g++.dg/template/sfinae4.C: New.
       * g++.dg/template/sfinae5.C: New.
       * g++.dg/template/sfinae6.C: New.
       * g++.dg/template/sfinae6_neg.C: New.
       * g++.dg/template/sfinae7.C: New.
       * g++.dg/template/sfinae8.C: New.
       * g++.dg/template/sfinae9.C: New.
       * g++.dg/template/sfinae10.C: New.
       * g++.dg/template/sfinae11.C: New.
       * g++.dg/template/sfinae12.C: New.
       * g++.dg/template/sfinae13.C: New.
       * g++.dg/template/sfinae14C: New.

From-SVN: r133519

16 years agoconstraints.md (Pso, Psz): New constraints.
Naveen.H.S [Tue, 25 Mar 2008 13:44:00 +0000 (13:44 +0000)]
constraints.md (Pso, Psz): New constraints.

* config/sh/constraints.md (Pso, Psz): New constraints.
* config/sh/sh.c (print_operand): Add %V and %W operand codes.
* config/sh/sh.md (*andsi3_bclr, *iorsi3_bset): New insns.

* gcc.target/sh/sh2a-bclr.c: New test.
* gcc.target/sh/sh2a-bset.c: New test.

From-SVN: r133518

16 years agosh.c (sh_expand_t_scc): Emit movrt for SH2A if possible.
Naveen.H.S [Tue, 25 Mar 2008 13:41:23 +0000 (13:41 +0000)]
sh.c (sh_expand_t_scc): Emit movrt for SH2A if possible.

* config/sh/sh.c (sh_expand_t_scc): Emit movrt for SH2A if
possible.
* config/sh/sh.md (xorsi3_movrt, movrt): New insns.

* gcc.target/sh/sh2a-movrt.c: New test.

From-SVN: r133517

16 years agosh.md (prefetch): Add condition for SH2A target.
Naveen.H.S [Tue, 25 Mar 2008 13:38:45 +0000 (13:38 +0000)]
sh.md (prefetch): Add condition for SH2A target.

* config/sh/sh.md (prefetch): Add condition for SH2A target.
(prefetch_sh2a): New.

* gcc.target/sh/sh2a-prefetch.c: New test.

From-SVN: r133516

16 years agoconstraints.md (I28): New constraint.
Jayant R Sonar [Tue, 25 Mar 2008 13:36:11 +0000 (13:36 +0000)]
constraints.md (I28): New constraint.

* config/sh/constraints.md (I28): New constraint.
* config/sh/sh.c (broken_move): Add support for movi20s.
* config/sh/sh.md (movsi_ie): Add the alternative for
movi20s.

* gcc.target/sh/sh2a-movi20s.c: New test.

Co-Authored-By: Naveen.H.S <naveen.hs@kpitcummins.com>
From-SVN: r133514

16 years agosh.c (SH_ATTRIBUTES): Define.
Anil Paranjape [Tue, 25 Mar 2008 13:32:13 +0000 (13:32 +0000)]
sh.c (SH_ATTRIBUTES): Define.

* config/sh/sh.c (SH_ATTRIBUTES): Define.
(SYMBOL_FLAG_FUNCVEC_FUNCTION): Define.
(print_operand): Handle resbank in %@ operand code.
(sh_encode_section_info): New.
(push_regs): Add conditions for resbank.
(sh_expand_epilogue): Likewise.
(sh_insert_attributes): Likewise.
(sh_attribute_table): Likewise.
(sh_handle_resbank_handler_attribute): New.
(sh2a_handle_function_vector_handler_attribute): New.
(sh2a_is_function_vector_call): New.
(sh2a_get_function_vector_number): New.
(sh2a_function_vector_p): New.
(sh_cfun_resbank_handler_p): New.
* config/sh/sh.md (calli): Emit jsr/n if possible.
(calli_tbr_rel): New.
(calli_pcrel): Emit jsr/n if possible.
(return_i): Emit rts/n if possible.
(call_valuei_tbr_rel): New.
(call_valuei_pcrel): Add condition for SH2A target.
(call_value): Likewise.
* config/sh/sh-protos.h (sh_cfun_resbank_handler_p): Declare.
(sh2a_get_function_vector_number): Likewise.
(sh2a_is_function_vector_call): Likewise.
* doc/extend.texi: Document TBR relative addressing of SH2A.
(resbank): Add description for SH2A.

* gcc.target/sh/sh2a-resbank.c: New test.
* gcc.target/sh/sh2a-tbr-jump.c: New test.
* gcc.target/sh/sh2a-jsrn.c: New test.
* gcc.target/sh/sh2a-rtsn.c: New test.

Co-Authored-By: Jayant R Sonar <jayant.sonar@kpitcummins.com>
Co-Authored-By: Naveen.H.S <naveen.hs@kpitcummins.com>
From-SVN: r133513

16 years agoexp_ch6.adb, [...]: Update copyright notice.
Arnaud Charlet [Tue, 25 Mar 2008 09:34:30 +0000 (09:34 +0000)]
exp_ch6.adb, [...]: Update copyright notice.

* exp_ch6.adb, exp_disp.adb: Update copyright notice.
Fix wrong formatting (lines too long)

From-SVN: r133505

16 years agosse-17.c: Include sse2-check.h.
Uros Bizjak [Tue, 25 Mar 2008 08:02:14 +0000 (09:02 +0100)]
sse-17.c: Include sse2-check.h.

* gcc.target/i386/sse-17.c: Include sse2-check.h.
(main): Change to void and rename to sse2_test.
* gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp: Set
dg-do-what-default to "compile" if SSE2 hardware is not available.
* gcc.dg/vect/costmodel/i386/x86_64-costmodel-vect.exp: Ditto.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: Remove
xfail vect_no_int_max from "vectorization not profitable" check.

From-SVN: r133504

16 years agosha1.h: New file, from gnulib.
Ian Lance Taylor [Tue, 25 Mar 2008 00:54:53 +0000 (00:54 +0000)]
sha1.h: New file, from gnulib.

include/:
* sha1.h: New file, from gnulib.
libiberty/:
* sha1.c: New file, from gnulib.
* Makefile.in: Rebuild dependencies.
(CFILES): Add sha1.c.
(REQUIRED_OFILES): Add sha1.o.

From-SVN: r133503

16 years agoFix this patch:
Ian Lance Taylor [Tue, 25 Mar 2008 00:19:55 +0000 (00:19 +0000)]
Fix this patch:

* md5.h: Add extern "C" when compiled with C++.

From-SVN: r133502

16 years agoDaily bump.
GCC Administrator [Tue, 25 Mar 2008 00:18:16 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r133500

16 years ago* md5.h: Add extern "C" when compiled with C++.
Ian Lance Taylor [Mon, 24 Mar 2008 23:41:20 +0000 (23:41 +0000)]
* md5.h: Add extern "C" when compiled with C++.

From-SVN: r133495

16 years agore PR rtl-optimization/26222 (build failuring in libjava)
Andrew Pinski [Mon, 24 Mar 2008 23:05:31 +0000 (23:05 +0000)]
re PR rtl-optimization/26222 (build failuring in libjava)

2008-03-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/26222
        * gcc.dg/torture/pr26222.c: New testcase.

From-SVN: r133493

16 years agore PR fortran/34813 (ICE on incorrect nested type constructor (fold-const.c (fold_con...
Paul Thomas [Mon, 24 Mar 2008 19:11:24 +0000 (19:11 +0000)]
re PR fortran/34813 (ICE on incorrect nested type constructor (fold-const.c (fold_convert):2629))

2008-03-24  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/34813
* resolve.c (resolve_structure_cons): It is an error to assign
NULL to anything other than a pointer or allocatable component.

PR fortran/33295
* resolve.c (resolve_symbol): If the symbol is a derived type,
resolve the derived type.  If the symbol is a derived type
function, ensure that the derived type is visible in the same
namespace as the function.

2008-03-24  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/34813
* gfortran.dg/null_3.f90 : New test

PR fortran/33295
* gfortran.dg/module_function_type_1.f90 : New test

From-SVN: r133488

16 years agolex.c (handle_pragma_interface): Don't copy the filename.
Tom Tromey [Mon, 24 Mar 2008 18:53:34 +0000 (18:53 +0000)]
lex.c (handle_pragma_interface): Don't copy the filename.

* lex.c (handle_pragma_interface): Don't copy the filename.
(handle_pragma_implementation): Copy filename using xstrdup.

From-SVN: r133487

16 years ago9drpc.adb, [...]: Fix comment typos.
Ralf Wildenhues [Mon, 24 Mar 2008 17:48:07 +0000 (17:48 +0000)]
9drpc.adb, [...]: Fix comment typos.

2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

* 9drpc.adb, a-caldel-vms.adb, a-caldel.adb,
a-calend-vms.adb, a-calend.adb, a-calend.ads,
a-calfor.adb, a-chahan.ads, a-chtgke.adb,
a-cihama.ads, a-ciorse.adb, a-clrefi.ads,
a-cohama.ads, a-comlin.ads, a-coorse.adb,
a-crbtgk.adb, a-direct.adb, a-except-2005.adb,
a-except-2005.ads, a-except.adb, a-except.ads,
a-exexda.adb, a-exexpr-gcc.adb, a-exexpr.adb,
a-exextr.adb, a-filico.ads, a-finali.ads,
a-intnam-aix.ads, a-intnam-solaris.ads, a-ngcefu.adb,
a-ngelfu.adb, a-numaux-darwin.adb, a-numeri.ads,
a-sequio.ads, a-strbou.ads, a-strfix.adb,
checks.adb, exp_ch3.adb, exp_ch4.adb,
exp_ch4.ads, exp_ch5.adb, exp_ch6.adb,
exp_ch6.ads, exp_ch7.adb, exp_ch7.ads,
exp_ch9.adb, exp_ch9.ads, exp_dbug.adb,
exp_dbug.ads, exp_disp.adb, exp_dist.adb,
exp_dist.ads, exp_fixd.adb, exp_fixd.ads: Fix comment typos.

From-SVN: r133483

16 years agomake-relative-prefix.c (make_relative_prefix_1): Handle NULL return from strdup.
Doug Evans [Mon, 24 Mar 2008 17:11:21 +0000 (17:11 +0000)]
make-relative-prefix.c (make_relative_prefix_1): Handle NULL return from strdup.

* make-relative-prefix.c (make_relative_prefix_1): Handle NULL
return from strdup.

From-SVN: r133482

16 years agore PR c/22371 (C front-end produces mis-match types in MODIFY_EXPR)
Richard Guenther [Mon, 24 Mar 2008 15:08:52 +0000 (15:08 +0000)]
re PR c/22371 (C front-end produces mis-match types in MODIFY_EXPR)

2008-03-24  Richard Guenther  <rguenther@suse.de>

PR c/22371
* gimplify.c (gimplify_modify_expr): For frontend type-correct
pointer assignments change conversions according to middle-end rules.
(gimplify_modify_expr_rhs): Deal with NULL TARGET_EXPR_INITIAL.
* configure.ac: Include type checking in yes.
* configure: Regenerate.

From-SVN: r133479

16 years agodiagnostic.c (diagnostic_count_diagnostic): Delete.
Manuel López-Ibáñez [Mon, 24 Mar 2008 14:19:55 +0000 (14:19 +0000)]
diagnostic.c (diagnostic_count_diagnostic): Delete.

2008-03-24  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

* diagnostic.c (diagnostic_count_diagnostic): Delete.
(diagnostic_report_diagnostic): Update. Handle ICEs here.

From-SVN: r133478

16 years ago* gthr-vxworks.h (UNUSED): Define.
Nathan Sidwell [Mon, 24 Mar 2008 11:18:22 +0000 (11:18 +0000)]
* gthr-vxworks.h (UNUSED): Define.

From-SVN: r133477

16 years ago2008-03-24 Robert Dewar <dewar@adacore.com>
Robert Dewar [Mon, 24 Mar 2008 10:57:32 +0000 (10:57 +0000)]
2008-03-24  Robert Dewar  <dewar@adacore.com>

* s-tpopsp-posix.adb, s-tpopsp-solaris.adb, s-tpopsp-posix-foreign.adb,
s-tpopsp-lynxos.adb, s-tpopde-vms.ads, s-tpopde-vms.adb,
s-tpopsp-vxworks.adb, s-casi16.adb, s-caun16.adb, s-inmaop.ads,
s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-tpinop.adb,
s-tpinop.ads, s-tporft.adb, a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb,
a-crbtgk.ads, a-crbtgk.adb, a-ciorse.adb, a-cihama.ads, a-cihama.adb,
a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cgcaso.ads,
a-cgcaso.adb, a-cgaaso.adb, a-ciormu.adb, a-cihase.adb, a-swuwha.ads,
a-rbtgso.ads, a-cgaaso.ads, a-cgaaso.ads, a-ciorma.adb, a-chtgke.ads,
a-chtgke.adb, a-llfzti.ads, a-ztenau.adb, a-ztenau.ads, a-stzhas.ads,
a-szbzha.ads, a-szbzha.adb, a-crdlli.ads, a-crdlli.ads, a-crdlli.adb,
i-forbla-darwin.adb, i-forbla.ads, s-regexp.adb, a-nllrar.ads,
a-nlrear.ads, a-nucoar.ads, a-nurear.ads, i-forlap.ads, s-gearop.adb,
s-gearop.ads, s-gecobl.adb, s-gecobl.ads, s-gecola.adb, s-gecola.ads,
s-gerebl.adb, s-gerela.ads, a-swuwha.adb, i-forbla-unimplemented.ads,
double spaced if it fits on one line and otherwise single spaced.

From-SVN: r133476

16 years agoDaily bump.
GCC Administrator [Mon, 24 Mar 2008 00:17:32 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133474

16 years agore PR ada/15479 (Ada manual problems)
Ralf Wildenhues [Sun, 23 Mar 2008 23:19:25 +0000 (23:19 +0000)]
re PR ada/15479 (Ada manual problems)

gcc/ada/
2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

PR documentation/15479
* Make-lang.in (doc/gnat_ugn.texi) Renamed from ...
(doc/gnat_ugn_unw.texi): ... this, and adjusted.
(doc/gnat_ugn.info): Renamed from ...
(doc/gnat_ugn_unw.info): ... this.
(doc/gnat_ugn.dvi): Renamed from ...
(doc/gnat_ugn_unw.dvi): ... this.
(doc/gnat_ugn.pdf): Renamed from ...
(doc/gnat_ugn_unw.pdf): ... this.
(ADA_INFOFILES, ADA_PDFFILES, ada.install-info, ada.dvi):
Adjusted.
* gnat_ugn.texi (FILE): Hard-code gnat_ugn; set filename
unconditionally to gnat_ugn.info.  Fix cross references to the
GNAT Reference Manual.  Convert links to the GCC, GDB, Emacs,
and GNU make manuals to be proper texinfo links.
* gnat_rm.texi: Fix cross references to the GNAT User's Guide.

From-SVN: r133470

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Sun, 23 Mar 2008 22:19:19 +0000 (22:19 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2007-03-23  Thomas Koenig  <tkoenig@gcc.gnu.org

PR libfortran/32972
* Makefile.am:  Add new variable, i_unpack_c, containing
unpack_i1.c, unpack_i2.c, unpack_i4.c, unpack_i8.c,
unpack_i16.c, unpack_r4.c, unpack_r8.c, unpack_r10.c,
unpack_r16.c, unpack_c4.c, unpack_c8.c, unpack_c10.c
and unpack_c16.c
Add i_unpack_c to gfor_built_src.
Add rule to generate i_unpack_c from m4/unpack.m4.
* Makefile.in:  Regenerated.
* libgfortran.h: Add prototypes for unpack0_i1, unpack0_i2,
unpack0_i4, unpack0_i8, unpack0_i16, unpack0_r4, unpack0_r8,
unpack0_r10, unpack0_r16, unpack0_c4, unpack0_c8, unpack0_c10,
unpack0_c16, unpack1_i1, unpack1_i2, unpack1_i4, unpack1_i8,
unpack1_i16, unpack1_r4, unpack1_r8, unpack1_r10, unpack1_r16,
unpack1_c4, unpack1_c8, unpack1_c10 and unpack1_c16.
* intrinsics/pack_generic.c (unpack1):  Add calls to specific
unpack1 functions.
(unpack0):  Add calls to specific unpack0 functions.
* m4/unpack.m4:  New file.
* generated/unpack_i1.c:  New file.
* generated/unpack_i2.c:  New file.
* generated/unpack_i4.c:  New file.
* generated/unpack_i8.c:  New file.
* generated/unpack_i16.c:  New file.
* generated/unpack_r4.c:  New file.
* generated/unpack_r8.c:  New file.
* generated/unpack_r10.c:  New file.
* generated/unpack_r16.c:  New file.
* generated/unpack_c4.c:  New file.
* generated/unpack_c8.c:  New file.
* generated/unpack_c10.c:  New file.
* generated/unpack_c16.c:  New file.

2007-03-23  Thomas Koenig  <tkoenig@gcc.gnu.org

PR libfortran/32972
* gfortran.dg/intrinsic_unpack_1.f90:  New test case.
* gfortran.dg/intrinsic_unpack_2.f90:  New test case.
* gfortran.dg/intrinsic_unpack_3.f90:  New test case.

From-SVN: r133469

16 years agoi386.h (STATIC_CHAIN_REGNUM): Use R10_REG and CX_REG.
H.J. Lu [Sun, 23 Mar 2008 21:49:41 +0000 (21:49 +0000)]
i386.h (STATIC_CHAIN_REGNUM): Use R10_REG and CX_REG.

2008-03-23  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.h (STATIC_CHAIN_REGNUM): Use R10_REG and
CX_REG.

From-SVN: r133468

16 years agoMAINTAINERS: Update e-mail address.
Thomas Koenig [Sun, 23 Mar 2008 21:22:35 +0000 (21:22 +0000)]
MAINTAINERS: Update e-mail address.

2008-03-23  Thomas Koenig  <tkoenig@gcc.gnu.org>

* MAINTAINERS:  Update e-mail address.

From-SVN: r133467

16 years agofaq.xml: Fix various links.
Paolo Carlini [Sun, 23 Mar 2008 19:19:05 +0000 (19:19 +0000)]
faq.xml: Fix various links.

2008-03-23  Paolo Carlini  <pcarlini@suse.de>

* doc/xml/faq.xml: Fix various links.
* doc/xml/api.xml: Likewise.
* doc/xml/manual/parallel_mode.xml: Likewise.
* doc/html/faq.html: Regenerate.
* doc/html/api.html: Likewise.
* doc/html/manual/bk01pt12ch31s03.html: Likewise.

From-SVN: r133463

16 years agoextend.texi (Function Attributes): Add missing comma in the example of the "alloc_siz...
Zuxy Meng [Sun, 23 Mar 2008 16:38:05 +0000 (16:38 +0000)]
extend.texi (Function Attributes): Add missing comma in the example of the "alloc_size" attribute.

* doc/extend.texi (Function Attributes): Add missing comma in the
example of the "alloc_size" attribute.

From-SVN: r133462

16 years agoRevert:
Uros Bizjak [Sun, 23 Mar 2008 12:07:34 +0000 (13:07 +0100)]
Revert:

        2008-03-05  H.J. Lu  <hongjiu.lu@intel.com>

        * config/i386/i386-modes.def: Use 4 byte alignment on DI for
        32bit host.

        2008-03-19  Uros Bizjak  <ubizjak@gmail.com>

        PR target/35496
        * stor-layout.c (update_alignment_for_field): Set minimum alignment
        of the underlying type of a MS bitfield layout to the natural
        alignment of the type.

        2008-03-22  Uros Bizjak  <ubizjak@gmail.com>

        * config/i386/i386.c (assign_386_stack_local): Align DImode slots
        to their natural alignment to avoid store forwarding stalls.

From-SVN: r133461

16 years agotrans.h: Use fold_build in build1_v, build2_v and build3_v macros.
Tobias Schlüter [Sun, 23 Mar 2008 09:28:03 +0000 (10:28 +0100)]
trans.h: Use fold_build in build1_v, build2_v and build3_v macros.

2008-03-23  Tobias Schlueter  <tobi@gcc.gnu.org>

* trans.h: Use fold_build in build1_v, build2_v and build3_v
macros.
* trans-openmp.c (gfc_trans_omp_critical, gfc_trans_omp_single):
Don't use build2_v macro.

From-SVN: r133460

16 years agoDaily bump.
GCC Administrator [Sun, 23 Mar 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133458

16 years agore PR fortran/35632 (stream io broken on FreeBSD due to ftruncate changes.)
Jerry DeLisle [Sat, 22 Mar 2008 22:03:13 +0000 (22:03 +0000)]
re PR fortran/35632 (stream io broken on FreeBSD due to ftruncate changes.)

2008-03-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/35632
* io/transfer.c (data_transfer_init):  Fix whitespace.
(next_record_w): Truncate the file only if the stream
position is short of the file end.

From-SVN: r133454

16 years agotree-cfg.c (verify_expr): Recurse again for invariant addresses.
Richard Guenther [Sat, 22 Mar 2008 19:50:48 +0000 (19:50 +0000)]
tree-cfg.c (verify_expr): Recurse again for invariant addresses.

2008-03-22  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_expr): Recurse again for invariant addresses.
For PHI nodes verify the address is invariant.
* tree-ssa-ccp.c (ccp_decl_initial_min_invariant): Remove.
(get_symbol_constant_value): Use is_gimple_min_invariant.
(maybe_fold_stmt_indirect): Likewise.

From-SVN: r133453

16 years agore PR rtl-optimization/33927 (replace_read in dse.c could handle cases where GET_MODE...
Richard Sandiford [Sat, 22 Mar 2008 19:37:53 +0000 (19:37 +0000)]
re PR rtl-optimization/33927 (replace_read in dse.c could handle cases where GET_MODE_CLASS (read_mode) != GET_MODE_CLASS (store_mode) (and the size is the same))

gcc/
PR rtl-optimization/33927
* Makefile.in (dse.o): Depend on $(TM_P_H).
* expr.h (extract_low_bits): Declare.
* expmed.c (extract_low_bits): New function.
* rtlhooks.c (gen_lowpart_general): Generalize SUBREG handling.
* dse.c: Include tm_p.h.
(find_shift_sequence): Remove the read_reg argument and return the
read value.  Emit the instructions instead of returning them.
Iterate on new_mode rather than calculating it each time.
Check MODES_TIEABLE_P.  Use simplify_gen_subreg to convert the
source to NEW_MODE and extract_low_bits to convert the shifted
value to READ_MODE.
(replace_read): Allow the load and store to have different mode
classes.  Use extract_low_bits when SHIFT == 0.  Create the shift
or extraction instructions before trying the replacement.  Update
dump-file code accordingly, avoiding use of REGNO (store_info->rhs).

gcc/testsuite/
* gcc.target/mips/dse-1.c: Add checks for zeros.

From-SVN: r133452

16 years agoi386.c (assign_386_stack_local): Align DImode slots to their natural alignment to...
Uros Bizjak [Sat, 22 Mar 2008 19:34:09 +0000 (20:34 +0100)]
i386.c (assign_386_stack_local): Align DImode slots to their natural alignment to avoid store forwarding stalls.

        * config/i386/i386.c (assign_386_stack_local): Align DImode slots
        to their natural alignment to avoid store forwarding stalls.

From-SVN: r133451

16 years agoDaily bump.
GCC Administrator [Sat, 22 Mar 2008 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133444

16 years ago* filenames.h: Add extern "C" when compiled with C++.
Ian Lance Taylor [Fri, 21 Mar 2008 23:35:07 +0000 (23:35 +0000)]
* filenames.h: Add extern "C" when compiled with C++.

From-SVN: r133440

16 years agore PR target/27946 (double to long long and back to double stores to the stack)
Andrew Pinski [Fri, 21 Mar 2008 22:18:23 +0000 (15:18 -0700)]
re PR target/27946 (double to long long and back to double stores to the stack)

2008-03-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/27946
        * config/rs6000/rs6000.md (floatdidf2): Discouraging fprs and
        encouraging but not allowing gprs for input;
        change the input constraint to !f#r.
        (fix_truncdfdi2): Discouraging fprs and encouraging but not allowing
        gprs for output;
        change the output constraint to !f#r.

2008-03-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/27946
        * gcc.target/powerpc/ppc64-double-1.c: New testcase.

From-SVN: r133439

16 years agore PR target/27946 (double to long long and back to double stores to the stack)
Andrew Pinski [Fri, 21 Mar 2008 22:16:49 +0000 (22:16 +0000)]
re PR target/27946 (double to long long and back to double stores to the stack)

2008-03-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/27947
        * config/rs6000/rs6000.md (floatdidf2): Discouraging fprs and
        encouraging but not allowing gprs for input;
        change the input constraint to !f#r.
        (fix_truncdfdi2): Discouraging fprs and encouraging but not allowing
        gprs for output;
        change the output constraint to !f#r.

2008-03-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/27947
        * gcc.target/powerpc/ppc64-double-1.c: New testcase.

From-SVN: r133438

16 years agopack_generic.c: Fix typo.
Jerry DeLisle [Fri, 21 Mar 2008 21:00:17 +0000 (21:00 +0000)]
pack_generic.c: Fix typo.

2008-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* intrinsics/pack_generic.c:  Fix typo.

From-SVN: r133437

16 years agore PR bootstrap/35660 (Bootstrap failure on i686-apple-darwin9 at revision 133434.)
Andreas Tobler [Fri, 21 Mar 2008 20:49:25 +0000 (20:49 +0000)]
re PR bootstrap/35660 (Bootstrap failure on i686-apple-darwin9 at revision 133434.)

2008-03-21  Andreas Tobler  <a.tobler@schweiz.org>

PR bootstrap/35660
* objc-act.c (objc_generate_cxx_ctor_or_dtor): Rename IS_AGGR_TYPE to
MAYBE_CLASS_TYPE_P.
(objc_generate_cxx_cdtors): Likewise.
(add_instance_variable): Likewise.

From-SVN: r133436

16 years agore PR target/13958 (Conversion from unsigned to double is painfully slow on P4)
Uros Bizjak [Fri, 21 Mar 2008 20:43:12 +0000 (21:43 +0100)]
re PR target/13958 (Conversion from unsigned to double is painfully slow on P4)

        PR target/13958
        * config/i386/i386.md ("*floatunssi<mode2>_1"): New pattern with
        corresponding post-reload splitters.
        ("floatunssi<mode>2"): Expand to unsigned_float x87 insn pattern
        when x87 FP math is selected.
        * config/i386/i386-protos.h (ix86_expand_convert_uns_sixf_sse):
        New function prototype.
        * config/i386/i386.c (ix86_expand_convert_uns_sixf_sse): New
        unreachable function to ease macroization of insn patterns.

From-SVN: r133435

16 years agocp-tree.h (IS_AGGR_TYPE): Rename to MAYBE_CLASS_TYPE_P.
Paolo Carlini [Fri, 21 Mar 2008 18:56:51 +0000 (18:56 +0000)]
cp-tree.h (IS_AGGR_TYPE): Rename to MAYBE_CLASS_TYPE_P.

2008-03-21  Paolo Carlini  <pcarlini@suse.de>

* cp-tree.h (IS_AGGR_TYPE): Rename to MAYBE_CLASS_TYPE_P.
(SET_IS_AGGR_TYPE): Rename to SET_CLASS_TYPE_P.
(IS_AGGR_TYPE_CODE): Rename to RECORD_OR_UNION_CODE_P.
(PROMOTES_TO_AGGR_TYPE): Remove.
(CLASS_TYPE_P, TYPE_NON_AGGREGATE_CLASS): Adjust.
* typeck.c (unary_complex_lvalue, build_modify_expr,
convert_for_initialization): Adjust.
* init.c (is_aggr_type): Remove.
(is_class_type): Add.
(build_offset_ref, build_new_1, build_vec_delete_1, build_vec_init,
build_delete): Adjust.
* lex.c (make_aggr_type): Remove.
(make_class_type): Add.
(cxx_make_type): Adjust.
* class.c (finish_struct_1, fixed_type_or_null, is_empty_class):
Adjust.
* decl.c (build_typename_type, make_typename_type,
make_unbound_class_template, cxx_init_decl_processing,
check_tag_decl, groktypename, start_decl_1, layout_var_decl,
check_initializer, cp_finish_decl, build_ptrmemfunc_type, grokparms,
grok_op_properties, xref_tag, check_function_type): Adjust.
* call.c (check_dtor_name, standard_conversion, implicit_conversion,
add_builtin_candidate, add_builtin_candidates,
build_user_type_conversion_1, convert_like_real, build_cxx_call,
is_subseq, compare_ics): Adjust.
* method.c (use_thunk): Adjust.
* rtti.c (build_dynamic_cast_1, create_pseudo_type_info,
create_tinfo_types): Adjust.
* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
build_up_reference, convert_to_reference, convert_from_reference,
ocp_convert, build_expr_type_conversion): Adjust.
* tree.c (bind_template_template_parm, error_type): Adjust.
* dump.c (cp_dump_tree): Adjust.
* search.c (lookup_member): Adjust.
* friend.c (make_friend_class, do_friend): Adjust.
* typeck2.c (store_init_value, process_init_constructor_array,
process_init_constructor_record, build_x_arrow, build_m_component_ref,
build_functional_cast): Adjust.
* pt.c (finish_member_template_decl, process_template_parm,
lookup_template_class, tsubst_function_type, tsubst,
tsubst_copy_and_build, get_template_base, bt_instantiate_type_proc):
Adjust.
* semantics.c (begin_class_definition, finish_base_specifier,
finish_typeof, cxx_omp_predetermined_sharing, finish_decltype_type):
Adjust.
* name-lookup.c (constructor_name_p, push_overloaded_decl,
do_class_using_decl, lookup_qualified_name,
maybe_process_template_type_declaration): Adjust.
* decl2.c (grok_array_decl, check_member_template,
constrain_class_visibility): Adjust.
* parser.c (cp_parser_class_name): Adjust.

From-SVN: r133434

16 years agogfortran.map: Move erfc_scaled symbols to new symbol node GFORTRAN_1.1...
Janne Blomqvist [Fri, 21 Mar 2008 17:36:00 +0000 (19:36 +0200)]
gfortran.map: Move erfc_scaled symbols to new symbol node GFORTRAN_1.1...

2008-03-21  Janne Blomqvist  <jb@gcc.gnu.org>

        * gfortran.map: Move erfc_scaled symbols to new symbol node
        GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.

From-SVN: r133432

16 years agoconfigure.ac: Add support for --enable-gold.
Ian Lance Taylor [Fri, 21 Mar 2008 15:40:16 +0000 (15:40 +0000)]
configure.ac: Add support for --enable-gold.

* configure.ac: Add support for --enable-gold.
* Makefile.def: Add gold as a directory like ld.
* configure, Makefile.in: Regenerate.

From-SVN: r133429

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Fri, 21 Mar 2008 15:33:13 +0000 (15:33 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* runtime/in_pack_generic.c (internal_pack):  Call correct
function, pack_i16, for GFC_INTEGER_16.

From-SVN: r133428

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Fri, 21 Mar 2008 14:37:03 +0000 (14:37 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* Makefile.am:  Add new variable, i_pack_c, containing
pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
pack_c8.c, pack_c10.c, pack_c16.c.
Add m4/pack.m4 to m4_files.
Add i_pack_c to gfor_built_src.
Add rule to generate i_pack_c from m4/pack.m4.
* Makefile.in:  Regenerated.
* libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
pack_c10, pack_c16.
* intrinsics/pack_generic.c:  Add calls to specific
pack functions.
* m4/pack.m4:  New file.
* generated/pack_i1.c:  New file.
* generated/pack_i2.c:  New file.
* generated/pack_i4.c:  New file.
* generated/pack_i8.c:  New file.
* generated/pack_i16.c:  New file.
* generated/pack_r4.c:  New file.
* generated/pack_r8.c:  New file.
* generated/pack_r10.c:  New file.
* generated/pack_r16.c:  New file.
* generated/pack_c4.c:  New file.
* generated/pack_c8.c:  New file.
* generated/pack_c10.c:  New file.
* generated/pack_c16.c:  New file.

2008-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* internal_pack_1.f90:  New test case.
* internal_pack_2.f90:  New test case.
* internal_pack_3.f90:  New test case.

From-SVN: r133427

16 years agotrans.c (Attribute_to_gnu): Compute as (hb < lb) ? 0 : hb - lb + 1 instead of max...
Olivier Hainque [Fri, 21 Mar 2008 13:18:35 +0000 (13:18 +0000)]
trans.c (Attribute_to_gnu): Compute as (hb < lb) ? 0 : hb - lb + 1 instead of max (hb - lb + 1, 0).

2008-03-21  Olivier Hainque  <hainque@adacore.com>

ada/
* trans.c (Attribute_to_gnu) <'length>: Compute as (hb < lb)
? 0 : hb - lb + 1 instead of max (hb - lb + 1, 0).

testsuite/
* gnat.dg/empty_vector_length.adb: New testcase.

From-SVN: r133423

16 years agotrans.c (addressable_p): Add notes on addressability issues.
Eric Botcazou [Fri, 21 Mar 2008 13:05:14 +0000 (13:05 +0000)]
trans.c (addressable_p): Add notes on addressability issues.

* trans.c (addressable_p): Add notes on addressability issues.

From-SVN: r133421

16 years agoAdd forgotten entry for r133418.
Olivier Hainque [Fri, 21 Mar 2008 12:56:55 +0000 (12:56 +0000)]
Add forgotten entry for r133418.

From-SVN: r133420

16 years agotree-data-ref.c (dump_data_dependence_relation): Avoid data reference dumps if ddr...
Martin Jambor [Fri, 21 Mar 2008 12:42:56 +0000 (13:42 +0100)]
tree-data-ref.c (dump_data_dependence_relation): Avoid data reference dumps if ddr is NULL or dependence is unknown.

2008-03-21  Martin Jambor  <mjambor@suse.cz>

* tree-data-ref.c (dump_data_dependence_relation): Avoid data
reference dumps if ddr is NULL or dependence is unknown.

From-SVN: r133419

16 years agotrans.c (addressable_p): Accept COND_EXPR when both arms are addressable.
Olivier Hainque [Fri, 21 Mar 2008 11:43:54 +0000 (11:43 +0000)]
trans.c (addressable_p): Accept COND_EXPR when both arms are addressable.

2008-03-21  Olivier Hainque  <hainque@adacore.com>
            Ed Schonberg  <schonberg@adacore.com>

* trans.c (addressable_p): Accept COND_EXPR when both arms
are addressable.
(gnat_gimplify_expr): Let the gimplifier handle &COND_EXPR.
(call_to_gnu): Do not use name reference in the error message
for a misaligned by_reference_parameter. The actual may be a
general expression.

From-SVN: r133418

16 years agotestsuite_abi.cc: Add support for not counting GLIBCXX_LDBL_* compat symbols missing...
Benjamin Kosnik [Fri, 21 Mar 2008 11:31:11 +0000 (11:31 +0000)]
testsuite_abi.cc: Add support for not counting GLIBCXX_LDBL_* compat symbols missing if...

2008-03-20  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_abi.cc: Add support for not counting
GLIBCXX_LDBL_* compat symbols missing if no long double compat
symbols under test.

From-SVN: r133417

16 years agoDaily bump.
GCC Administrator [Fri, 21 Mar 2008 00:17:20 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133409

16 years agolinux-atomic.asm (ATOMIC_TEST_AND_SET): Take unsigned extension into account.
Kaz Kojima [Thu, 20 Mar 2008 23:25:41 +0000 (23:25 +0000)]
linux-atomic.asm (ATOMIC_TEST_AND_SET): Take unsigned extension into account.

* config/sh/linux-atomic.asm (ATOMIC_TEST_AND_SET): Take
unsigned extension into account.
(ATOMIC_COMPARE_AND_SWAP): Likewise.
(ATOMIC_FETCH_AND_OP, ATOMIC_FETCH_AND_COMBOP): Likewise.
Do computations on a scratch register.

From-SVN: r133405

16 years agotree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop): Use is_gimple_min_i...
Richard Guenther [Thu, 20 Mar 2008 23:14:35 +0000 (23:14 +0000)]
tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop): Use is_gimple_min_invariant instead of TREE_INVARIANT.

2008-03-21  Richard Guenther  <rguenther@suse.de>

* tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop):
Use is_gimple_min_invariant instead of TREE_INVARIANT.
* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Likewise.
* tree-ssa-dom.c (record_equality): Likewise.
* tree-inline.c (copy_body_r): Likewise.
* tree-ssa-pre.c (make_values_for_stmt): Remove test for
TREE_INVARIANT.

From-SVN: r133403

16 years agosh.c (split_branches): Pass zero to redirect_jump as 'delete_unused' argument.
Kaz Kojima [Thu, 20 Mar 2008 22:56:39 +0000 (22:56 +0000)]
sh.c (split_branches): Pass zero to redirect_jump as 'delete_unused' argument.

* config/sh/sh.c (split_branches): Pass zero to redirect_jump
as 'delete_unused' argument.

From-SVN: r133402

16 years agotree-ssa-forwprop.c (forward_propagate_addr_expr_1): Remove special casing of constan...
Richard Guenther [Thu, 20 Mar 2008 22:06:40 +0000 (22:06 +0000)]
tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Remove special casing of constant qualifiers.

2008-03-20  Richard Guenther  <rguenther@suse.de>

* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Remove
special casing of constant qualifiers.
* tree-ssa.c (useless_type_conversion_p_1): Instead do not
care about them in general.
* tree-ssa-ccp.c (ccp_fold): Addresses are constant or not
regardless of their type.
(fold_stmt_r): Forcefully fold *& if we end up with that.

* gcc.dg/tree-ssa/ssa-ccp-17.c: New testcase.

From-SVN: r133400

16 years ago* es.po: Update.
Joseph Myers [Thu, 20 Mar 2008 21:14:23 +0000 (21:14 +0000)]
* es.po: Update.

From-SVN: r133398

16 years agore PR libstdc++/35637 (tr1::function fails with const member function pointer)
Paolo Carlini [Thu, 20 Mar 2008 20:28:54 +0000 (20:28 +0000)]
re PR libstdc++/35637 (tr1::function fails with const member function pointer)

2008-03-20  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/35637
* include/tr1_impl/type_traits (struct __in_array): Add back.
(is_function): Use it.
* testsuite/tr1/4_metaprogramming/is_function/35637.cc: New.

From-SVN: r133395

16 years agoconfig.gcc (arm*-*-uclinux*): Remove duplicate arm/uclinux-elf.h.
Paul Brook [Thu, 20 Mar 2008 20:00:47 +0000 (20:00 +0000)]
config.gcc (arm*-*-uclinux*): Remove duplicate arm/uclinux-elf.h.

2008-03-20  Paul Brook  <paul@codesourcery.com>

gcc/
* config.gcc (arm*-*-uclinux*): Remove duplicate arm/uclinux-elf.h.
* config/arm/uclinux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Add extra
linker flags.
* config/arm/bpabi.h (SUBTARGET_EXTRA_LINK_SPEC): Provide default
definition.
(LINK_SPEC): Use SUBTARGET_EXTRA_LINK_SPEC.
* config/arm/unwind-arm.h (_Unwind_decode_target2): Add uClinux.

From-SVN: r133394

16 years agore PR testsuite/34168 (runtime tests in gfortran.dg/vect fail for unsupported [non...
Victor Kaplansky [Thu, 20 Mar 2008 19:43:56 +0000 (19:43 +0000)]
re PR testsuite/34168 (runtime tests in gfortran.dg/vect fail for unsupported [non-SSE2] targets)

        PR testsuite/34168
        * lib/target-supports.exp (check_sse2_hw_available): New procedure.
        * gcc.dg/vect/vect.exp: Set dg-do-what-default to "compile"
        if SSE2 hardware is not available.
        * g++.dg/vect/vect.exp: Update target-dependent overrides to match
        gcc.dg/vect/vect.exp.
        * gfortran.dg/vect/vect.exp: Ditto.
        (check_effective_target_lp64_or_vect_no_align): Remove procedure.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r133393

16 years agoset_operations.h: Removed superfluous set_intersection.
Johannes Singler [Thu, 20 Mar 2008 17:14:05 +0000 (17:14 +0000)]
set_operations.h: Removed superfluous set_intersection.

2008-03-20  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/set_operations.h: Removed superfluous
        set_intersection.

From-SVN: r133391

16 years agoAdd Pablo Oliveira to the list of authors for 3 patches.
Arnaud Charlet [Thu, 20 Mar 2008 17:06:47 +0000 (18:06 +0100)]
Add Pablo Oliveira to the list of authors for 3 patches.

From-SVN: r133390

16 years agocommon.opt (Wmudflap): New option.
Volker Reichelt [Thu, 20 Mar 2008 16:37:47 +0000 (16:37 +0000)]
common.opt (Wmudflap): New option.

* common.opt (Wmudflap): New option.
* tree-mudflap.c (mf_xform_derefs_1): Guard warning by OPT_Wmudflap.
(mx_register_decls): Likewise.
(mudflap_finish_file): Likewise.
* doc/invoke.texi: Document -Wno-mudflap.

* testsuite/libmudflap.c/pass63-frag.c: New test.

From-SVN: r133385

16 years agocmdlne-dD-M.c: Fix test for makefile rule and remove xfail.
Andreas Schwab [Thu, 20 Mar 2008 16:37:04 +0000 (16:37 +0000)]
cmdlne-dD-M.c: Fix test for makefile rule and remove xfail.

* gcc.dg/cpp/cmdlne-dD-M.c: Fix test for makefile rule and remove
xfail.

From-SVN: r133384

16 years agopr34692.c: Cleanup gimple dump file.
Uros Bizjak [Thu, 20 Mar 2008 15:30:58 +0000 (16:30 +0100)]
pr34692.c: Cleanup gimple dump file.

* gcc.dg/gomp/pr34692.c: Cleanup gimple dump file.
* gcc.dg/tree-ssa/ssa-lim-3.c: Remove -fdump-tree-optimized
from dg-options.

From-SVN: r133383

16 years agore PR testsuite/35621 (gcc.target/i386/ssse3-*.c violates C/C++ aliasing rules)
H.J. Lu [Thu, 20 Mar 2008 14:40:10 +0000 (14:40 +0000)]
re PR testsuite/35621 (gcc.target/i386/ssse3-*.c violates C/C++ aliasing rules)

2008-03-20  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/35621
* gcc.target/i386/ssse3-pabsb.c: Add -fno-strict-aliasing.
* gcc.target/i386/ssse3-pabsd.c: Likewise.
* gcc.target/i386/ssse3-pabsw.c: Likewise.
* gcc.target/i386/ssse3-palignr.c: Likewise.
* gcc.target/i386/ssse3-phaddd.c: Likewise.
* gcc.target/i386/ssse3-phaddsw.c: Likewise.
* gcc.target/i386/ssse3-phaddw.c: Likewise.
* gcc.target/i386/ssse3-phsubd.c: Likewise.
* gcc.target/i386/ssse3-phsubsw.c: Likewise.
* gcc.target/i386/ssse3-phsubw.c: Likewise.
* gcc.target/i386/ssse3-pmaddubsw.c: Likewise.
* gcc.target/i386/ssse3-pmulhrsw.c: Likewise.
* gcc.target/i386/ssse3-pshufb.c: Likewise.
* gcc.target/i386/ssse3-psignb.c: Likewise.
* gcc.target/i386/ssse3-psignd.c: Likewise.
* gcc.target/i386/ssse3-psignw.c: Likewise.

From-SVN: r133380

16 years agore PR libstdc++/35256 (Bad link on http://gcc.gnu.org/onlinedocs/libstdc++/parallel_m...
Benjamin Kosnik [Thu, 20 Mar 2008 14:20:49 +0000 (14:20 +0000)]
re PR libstdc++/35256 (Bad link on gcc.gnu.org/onlinedocs/libstdc++/parallel_mode.html)

2008-03-19  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/35256
* doc/xml/manual/parallel_mode.xml: Correct configuration documentation.
* doc/html/manual/bk01pt12ch31s04.html: Regenerate.

From-SVN: r133378

16 years ago* vi.po: Update.
Joseph Myers [Thu, 20 Mar 2008 13:55:23 +0000 (13:55 +0000)]
* vi.po: Update.

From-SVN: r133376

16 years ago* sv.po: Update.
Joseph Myers [Thu, 20 Mar 2008 13:53:41 +0000 (13:53 +0000)]
* sv.po: Update.

From-SVN: r133374

16 years agore PR testsuite/35647 (FAIL: gcc.dg/cpp/cmdlne-d(I|M)-M.c scan-file (^|\\n)cmdlne...
Andreas Schwab [Thu, 20 Mar 2008 13:31:25 +0000 (13:31 +0000)]
re PR testsuite/35647 (FAIL: gcc.dg/cpp/cmdlne-d(I|M)-M.c scan-file (^|\\n)cmdlne-d(I|M)-M[^\\n]*:[^\\n]*cmdlne-d(I|M)-M.c)

PR testsuite/35647
* gcc.dg/cpp/cmdlne-dI-M.c: Match optional continuation.
* gcc.dg/cpp/cmdlne-dM-M.c: Likewise.
* gcc.dg/cpp/cmdlne-dN-M.c: Match correct file name and optional
continuation and remove xfail.

From-SVN: r133373

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Thu, 20 Mar 2008 10:54:04 +0000 (10:54 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-20  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* gfortran.dg/internal_pack_3.f90:  Add missing parameter
in subroutine.

From-SVN: r133368

16 years agoms format support for mingw.
Kai Tietz [Thu, 20 Mar 2008 08:24:42 +0000 (08:24 +0000)]
ms format support for mingw.

for gcc:
* c-format.c (replace_format_name_to_system_name): New.
(cmp_attribs): New.
(convert_format_name_to_system_name): New.
(decode_format_attr): Add use of convert_format_name_to_system_name.
(format_types_orig): Add gnu_ prefix to names.
(check_format_info_main): Special treating of \0 escaped names for
supporting multi-character format specifiers as I32, I64.
(TARGET_OVERRIDES_FORMAT_ATTRIBUTES): Use of user defined attributes.
(gnu_target_overrides_format_attributes): New.
* c-format.h: Add structure target_ovr_attr to hold
system specific formatter names.
* config.gcc: Add for x86&x86_64 cygwin and mingw32 targets the
msformat-c.o file to c_target_objs and cxx_target_objs.
* config/i386/mingw32.h (TARGET_OVERRIDES_FORMAT_ATTRIBUTES): New.
(TARGET_OVERRIDES_FORMAT_ATTRIBUTES_COUNT): New.
(TARGET_N_FORMAT_TYPES): New.
* config/i386/msformat-c.c: New.
* config/i386/t-cygming: Add build rule for msformat-c.o.
* doc/extend.texi: Add new format names gnu_* and ms_* and
further details.
* doc/tm.texi: (TARGET_OVERRIDES_FORMAT_ATTRIBUTES): New.

for gcc/testsuite/

* gcc.dg/format/ms_array-1.c: New.
* gcc.dg/format/ms_c90-scanf-3.c: New.
* gcc.dg/format/ms_c99-strftime-1.c: New.
* gcc.dg/format/ms_no-y2k-1.c: New.
* gcc.dg/format/ms_attr-1.c: New.
* gcc.dg/format/ms_c90-scanf-4.c: New.
* gcc.dg/format/ms_c99-strftime-2.c: New.
* gcc.dg/format/ms_nonlit-1.c: New.
* gcc.dg/format/ms_c90-scanf-5.c: New.
* gcc.dg/format/ms_cast-1.c: New.
* gcc.dg/format/ms_nonlit-2.c: New.
* gcc.dg/format/ms_attr-2.c: New.
* gcc.dg/format/ms_c90-strftime-1.c: New.
* gcc.dg/format/ms_miss-1.c: New.
* gcc.dg/format/ms_nonlit-3.c: New.
* gcc.dg/format/ms_attr-3.c: New.
* gcc.dg/format/ms_c90-strftime-2.c: New.
* gcc.dg/format/ms_miss-2.c: New.
* gcc.dg/format/ms_nul-1.c: New.
* gcc.dg/format/ms_attr-4.c: New.
* gcc.dg/format/ms_c94-printf-1.c: New.
* gcc.dg/format/ms_miss-3.c: New.
* gcc.dg/format/ms_nul-2.c: New.
* gcc.dg/format/ms_attr-7.c: New.
* gcc.dg/format/ms_c94-scanf-1.c: New.
* gcc.dg/format/ms_miss-4.c: New.
* gcc.dg/format/ms_null-1.c: New.
* gcc.dg/format/ms_bitfld-1.c: New.
* gcc.dg/format/ms_c99-printf-1.c: New.
* gcc.dg/format/ms_miss-5.c: New.
* gcc.dg/format/ms_plus-1.c: New.
* gcc.dg/format/ms_branch-1.c: New.
* gcc.dg/format/ms_c99-printf-2.c: New.
* gcc.dg/format/ms_miss-6.c: New.
* gcc.dg/format/ms_sec-1.c: New.
* gcc.dg/format/ms_c90-printf-1.c: New.
* gcc.dg/format/ms_c99-printf-3.c: New.
* gcc.dg/format/ms_multattr-1.c: New.
* gcc.dg/format/ms_unnamed-1.c: New.
* gcc.dg/format/ms_c90-printf-2.c: New.
* gcc.dg/format/ms_c99-scanf-1.c: New.
* gcc.dg/format/ms_multattr-2.c: New.
* gcc.dg/format/ms_va-1.c: New.
* gcc.dg/format/ms_c90-printf-3.c: New.
* gcc.dg/format/ms_c99-scanf-2.c: New.
* gcc.dg/format/ms_multattr-3.c: New.
* gcc.dg/format/ms_warnll-1.c: New.
* gcc.dg/format/ms_c90-scanf-1.c: New.
* gcc.dg/format/ms_c99-scanf-3.c: New.
* gcc.dg/format/ms_no-exargs-1.c: New.
* gcc.dg/format/ms_zero-length-1.c: New.
* gcc.dg/format/ms_c90-scanf-2.c: New.
* gcc.dg/format/ms_c99-scanf-4.c: New.
* gcc.dg/format/ms_no-exargs-2.c: New.
* gcc.dg/format/null-1.c: Add gnu style usage for mingw.
* gcc.dg/format/miss-1.c: Likewise.
* gcc.dg/format/miss-3.c: Likewise.
* gcc.dg/format/multattr-2.c: Likewise.
* gcc.dg/format/miss-5.c: Likewise.
* gcc.dg/format/attr-2.c: Likewise.
* gcc.dg/format/attr-4.c: Likewise.
* gcc.dg/format/c90-scanf-4.c: Likewise.
* gcc.dg/format/c99-printf-3.c: Likewise.
* gcc.dg/format/multattr-1.c: Likewise.
* gcc.dg/format/miss-4.c: Likewise.
* gcc.dg/format/miss-6.c: Likewise.
* gcc.dg/format/c90-printf-3.c: Likewise.
* gcc.dg/format/attr-1.c: Likewise.
* gcc.dg/format/attr-3.c: Likewise.
* gcc.dg/format/attr-7.c: Likewise.
* gcc.dg/format/format.h: Treat mingw and gnu style.
* gcc.dg/format/sys_format.c: New.

From-SVN: r133365

16 years agoinvoke.texi (-O3): Add -ftree-vectorize to the list of optimizations turned on under...
Ira Rosen [Thu, 20 Mar 2008 07:05:53 +0000 (07:05 +0000)]
invoke.texi (-O3): Add -ftree-vectorize to the list of optimizations turned on under -O3.

* doc/invoke.texi (-O3): Add -ftree-vectorize to the list of
optimizations turned on under -O3.
(ftree-vectorize): Add that the flag is turned on with -O3.

From-SVN: r133364

16 years agoregmove.c (try_auto_increment): Fix spelling error in comment.
Ben Elliston [Thu, 20 Mar 2008 04:31:53 +0000 (04:31 +0000)]
regmove.c (try_auto_increment): Fix spelling error in comment.

* regmove.c (try_auto_increment): Fix spelling error in comment.
* final.c (final_scan_insn): Likewise.

From-SVN: r133362

16 years agore PR fortran/35627 (namelist read error)
Jerry DeLisle [Thu, 20 Mar 2008 02:07:38 +0000 (02:07 +0000)]
re PR fortran/35627 (namelist read error)

2008-03-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/35627
* gfortran.dg/namelist_46.f90: New test.

From-SVN: r133361

16 years agore PR fortran/35627 (namelist read error)
Jerry DeLisle [Thu, 20 Mar 2008 02:05:05 +0000 (02:05 +0000)]
re PR fortran/35627 (namelist read error)

2008-03-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/35627
* io/list_read.c (free_line): Clear the line buffer enable flag and
reset the index into line_buffer, aka item_count.
(next_char): Cleanup whitespace.
(read_logical): Use unget_char to assure that the first character of the
bad logical is saved in case it is part of an object name. Remove the
clearing of index and flag that is now in free_line.
(read_real): Likewise.

From-SVN: r133360

16 years agoDaily bump.
GCC Administrator [Thu, 20 Mar 2008 00:18:03 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r133358

16 years agore PR target/14552 (compiled trivial vector intrinsic code is inefficient)
Uros Bizjak [Wed, 19 Mar 2008 23:38:35 +0000 (00:38 +0100)]
re PR target/14552 (compiled trivial vector intrinsic code is inefficient)

        PR target/14552
        * config/i386/mmx.md (*mov<mode>_internal_rex64"): Adjust register
        allocator preferences for "y" and "r" class registers.
        ("*mov<mode>_internal"): Ditto.
        ("*movv2sf_internal_rex64"): Ditto.
        ("*movv2sf_internal"): Ditto.

testsuite/ChangeLog:

        PR target/14552
        * gcc.target/i386/pr14552.c: New test.

From-SVN: r133354

16 years agore PR middle-end/35616 (Incorrect code while O2 compling)
Michael Matz [Wed, 19 Mar 2008 19:15:03 +0000 (19:15 +0000)]
re PR middle-end/35616 (Incorrect code while O2 compling)

        PR middle-end/35616
        * calls.c (expand_call): Check overlap of arguments with call
        address for sibcalls.

        * gcc.dg/pr35616.c: New test.

From-SVN: r133348

16 years agore PR fortran/35152 (Implicit procedure with keyword=argument is accepted)
Daniel Franke [Wed, 19 Mar 2008 19:13:48 +0000 (15:13 -0400)]
re PR fortran/35152 (Implicit procedure with keyword=argument is accepted)

gcc/fortran:
2008-03-19  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/35152
        * interface.c (gfc_procedure_use): Check for keyworded arguments in
        procedures without explicit interfaces.

gcc/testsuite:
2008-03-19  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/35152
        * gfortran.dg/argument_checking_16.f90: New test.

From-SVN: r133347

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Wed, 19 Mar 2008 16:56:22 +0000 (16:56 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-19  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* runtime/in_pack_generic.c (internal_pack):  Fix typo in
last commit.

From-SVN: r133345

16 years agore PR libfortran/32972 (performance of pack/unpack)
Thomas Koenig [Wed, 19 Mar 2008 15:42:55 +0000 (15:42 +0000)]
re PR libfortran/32972 (performance of pack/unpack)

2008-03-19  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* Makefile.am (in_pack_c): Add in_pack_i1.c, in_pack_i2.c,
in_pack_r4.c, in_pack_r8.c, in_pack_r10.c and in_pack_r16.c.
(in_unpack_c): Add in_unpack_i1.c, in_unpack_i2.c,
in_unpack_r4.c, in_unpack_r8.c, in_unpack_r10.c and
in_unpack_r16.c.
* Makefile.in: Regenerate.
* libgfortran.h:  Add prototypes for internal_pack_1,
internal_pack_2, internal_pack_16, internal_pack_r4,
internal_pack_r8, internal_pack_r10, internal_pack_r16,
internal_pack_c10 and internal_pack_c16.  Add prototypes for
internal_unpack_1, internal_unpack_2, internal_unpack_16,
internal_unpack_r4, internal_unpack_r8, internal_unpack_r10,
internal_unpack_r16, internal_unpack_c10 and
internal_unpack_c16.
* runtime/in_pack_generic.c (internal_pack): Use sizeof instead
of hardwired sizes.
Add calls to internal_pack_1, internal_pack_2,
internal_pack_16, internal_pack_r4, internal_pack_r8,
internal_pack_r10, internal_pack_r16, internal_pack_c10 and
internal_pack_c16.
* runtime/in_unpack_generic.c (internal_unpack):  Use sizeof
instead of hardwired sizes.
Add calls to internal_unpack_1, internal_unpack_2,
internal_unpack_16, internal_unpack_r4, internal_unpack_r8,
internal_unpack_r10, internal_unpack_r16, internal_unpack_c10
and internal_unpack_c16.
* generated/in_pack_r4.c:  New file.
* generated/in_pack_i2.c:  New file.
* generated/in_unpack_i1.c:  New file.
* generated/in_pack_r10.c:  New file.
* generated/in_unpack_r4.c:  New file.
* generated/in_unpack_i2.c:  New file.
* generated/in_unpack_r16.c:  New file.
* generated/in_pack_r8.c:  New file.
* generated/in_unpack_r10.c:  New file.
* generated/in_unpack_r8.c:  New file.
* generated/in_pack_r16.c:  New file.
* generated/in_pack_i1.c:  New file.

2008-03-19  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/32972
* gfortran.dg/internal_pack_1.f90:  New test case.
* gfortran.dg/internal_pack_2.f90:  New test case.
* gfortran.dg/internal_pack_3.f90:  New test case.

From-SVN: r133344

16 years agore PR target/35496 (test failures between revs. 132950 and 132974)
Uros Bizjak [Wed, 19 Mar 2008 14:50:15 +0000 (15:50 +0100)]
re PR target/35496 (test failures between revs. 132950 and 132974)

PR target/35496
* stor-layout.c (update_alignment_for_field): Set minimum alignment
of the underlying type of a MS bitfield layout to the natural
alignment of the type.

From-SVN: r133343

16 years agore PR other/35094 (RTL dump file letters hosed and partly undocumented)
Jan Hubicka [Wed, 19 Mar 2008 11:22:40 +0000 (12:22 +0100)]
re PR other/35094 (RTL dump file letters hosed and partly undocumented)

* gcc.dg/20050811-2.c: Update dumping flags.
* gcc.dg/sms-2.c: Update dumping flags.
* gcc.dg/var-expand1.c: Update dumping flags.
* gcc.dg/var-expand3.c: Update dumping flags.
* gcc.dg/pr30957-1.c: Update dumping flags.
* gcc.dg/20050811-1.c: Update dumping flags.
* gcc.dg/cpp/cmdlne-dI-M.C: Do not xfail.
* gcc.dg/cpp/cmdlne-dM-M.C: Do not xfail.

PR other/35094
* toplev.c (decode_d_option): Handle all CPP flags.
* tree-vrp.c: Update tree_pass descriptors.
* regrename.c: Update tree_pass descriptors.
* fwprop.c: Update tree_pass descriptors.
* doc/invoke.texi: Remove documentation of dropped -d? flags.
* tree-into-ssa.c: Update tree_pass descriptors.
* tree-dump.c: Update tree_pass descriptors.
* tree-complex.c: Update tree_pass descriptors.
* tree-dump.h: Update tree_pass descriptors.
* see.c: Update tree_pass descriptors.
* cgraphbuild.c: Update tree_pass descriptors.
* tracer.c: Update tree_pass descriptors.
* tree-loop-distribution.c: Update tree_pass descriptors.
* cgraph.c: Update tree_pass descriptors.
* postreload-gcse.c: Update tree_pass descriptors.
* postreload.c: Update tree_pass descriptors.
* tree-ssa-loop-ch.c: Update tree_pass descriptors.
* tree-tailcall.c: Update tree_pass descriptors.
* tree-pass.h (tree_opt_pass): Rename to ...
(opt_pass) ... this one; add "type" field and remove letter field.
(gimple_opt_pass, rtl_opt_pass, simple_ipa_opt_pass): New.
(execute_pass_list, execute_ipa_pass_list, all_passes, all_ipa_passes,
all_lowering_passes): Update declaration.
* ipa-cp.c: Update tree_pass descriptors.
* final.c: Update tree_pass descriptors.
* omp-low.c: Update tree_pass descriptors.
* tree-ssa-dse.c: Update tree_pass descriptors.
* ipa-reference.c: Update tree_pass descriptors.
* tree-ssa-uncprop.c: Update tree_pass descriptors.
* auto-inc-dec.c: Update tree_pass descriptors.
* reorg.c: Update tree_pass descriptors.
* cgraphunit.c: Update tree_pass descriptors.
* tree-ssa-copyrename.c: Update tree_pass descriptors.
* tree-ssa-ccp.c: Update tree_pass descriptors.
* df-core.c: Update tree_pass descriptors.
* mode-switching.c: Update tree_pass descriptors.
* tree-nomudflap.c: Update tree_pass descriptors.
* modulo-sched.c: Update tree_pass descriptors.
* ipa-pure-const.c: Update tree_pass descriptors.
* cse.c: Update tree_pass descriptors.
* web.c: Update tree_pass descriptors.
* tree-stdarg.c: Update tree_pass descriptors.
* tree-ssa-math-opts.c: Update tree_pass descriptors.
* tree-ssa-dom.c: Update tree_pass descriptors.
* tree-nrv.c: Update tree_pass descriptors.
* tree-ssa-alias.c: Update tree_pass descriptors.
* loop-init.c: Update tree_pass descriptors.
* gimple-low.c: Update tree_pass descriptors.
* ipa-inline.c: Update tree_pass descriptors.
* tree-ssa-sink.c: Update tree_pass descriptors.
* global.c: Update tree_pass descriptors.
* ifcvt.c: Update tree_pass descriptors.
* jump.c: Update tree_pass descriptors.
* predict.c: Update tree_pass descriptors.
* tree-ssa-loop.c: Update tree_pass descriptors.
* recog.c: Update tree_pass descriptors.
* dse.c: Update tree_pass descriptors.
* tree-ssa-ifcombine.c: Update tree_pass descriptors.
* tree-eh.c: Update tree_pass descriptors.
* regmove.c: Update tree_pass descriptors.
* local-alloc.c
* function.c: Update tree_pass descriptors.
* tree-vectorizer.c: Update tree_pass descriptors.
* gcse.c: Update tree_pass descriptors.
* ipa-type-escape.c: Update tree_pass descriptors.
* tree-if-conv.c: Update tree_pass descriptors.
* init-regs.c: Update tree_pass descriptors.
* ipa.c: Update tree_pass descriptors.
* tree-ssa-phiopt.c: Update tree_pass descriptors.
* rtl-factoring.c: Update tree_pass descriptors.
* lower-subreg.c: Update tree_pass descriptors.
* bt-load.c: Update tree_pass descriptors.
* tree-dfa.c: Update tree_pass descriptors.
* except.c: Update tree_pass descriptors.
* emit-rtl.c: Update tree_pass descriptors.
* cfgexpand.c: Update tree_pass descriptors.
* tree-cfgcleanup.c: Update tree_pass descriptors.
* cfgcleanup.c: Update tree_pass descriptors.
* tree-ssa-pre.c: Update tree_pass descriptors.
* tree-sra.c: Update tree_pass descriptors.
* tree-mudflap.c: Update tree_pass descriptors.
* tree-ssa-copy.c: Update tree_pass descriptors.
* cfglayout.c: Update tree_pass descriptors.
* tree-ssa-forwprop.c: Update tree_pass descriptors.
* tree-ssa-dce.c: Update tree_pass descriptors.
* tree-ssa.c: Update tree_pass descriptors.
* regclass.c: Update tree_pass descriptors.
* integrate.c: Update tree_pass descriptors.
* tree-optimize.c: Update tree_pass descriptors.
* tree-ssa-phiprop.c: Update tree_pass descriptors.
* tree-object-size.c: Update tree_pass descriptors.
* combine.c: Update tree_pass descriptors.
* tree-outof-ssa.c: Update tree_pass descriptors.
* bb-reorder.c: Update tree_pass descriptors.
* stack-ptr-mod.c: Update tree_pass descriptors.
* var-tracking.c: Update tree_pass descriptors.
* tree-profile.c: Update tree_pass descriptors.
* tree-vect-generic.c: Update tree_pass descriptors.
* reg-stack.c: Update tree_pass descriptors.
* sched-rgn.c: Update tree_pass descriptors.
* tree-ssa-structalias.c: Update tree_pass descriptors.
* tree-cfg.c: Update tree_pass descriptors.
* passes.c (current_pass): Update declaration.
(finish_optimization_passes): Update.
(all_passes, all_ipa_passes, all_lowering_passes): Update declaration.
(register_one_dump_file, register_dump_files_1, next_pass_1):
  Update arguments.
(init_optimization_passes): Update handling of new types.
(execute_one_pass, execute_pass_list, execute_ipa_pass_list): Update.
* ipa-struct-reorg.c: Update tree_pass descriptors.
* tree-ssa-reassoc.c: Update tree_pass descriptors.
* combine-stack-adj.c: Update tree_pass descriptors.
* cfgrtl.c: Update tree_pass descriptors.
* dce.c: Update tree_pass descriptors.
* tree-ssanames.c: Update tree_pass descriptors.

From-SVN: r133342

16 years agore PR tree-optimization/35609 ("is used uninitialized in this function" should be...
Richard Guenther [Wed, 19 Mar 2008 10:44:52 +0000 (10:44 +0000)]
re PR tree-optimization/35609 ("is used uninitialized in this function" should be may warning)

2008-03-19  Richard Guenther  <rguenther@suse.de>

PR middle-end/35609
* tree-ssa.c (always_executed): New global flag.
(warn_uninitialized_var): If !always_executed warn with "maybe"
instead of "is".
(execute_early_warn_uninitialized): Compute post-dominators.
Initialize always_executed before processing each basic block.

* gcc.dg/testsuite/uninit-15.c: New testcase.
* gcc.dg/testsuite/uninit-16.c: Likewise.

From-SVN: r133341

16 years agoDaily bump.
GCC Administrator [Wed, 19 Mar 2008 00:17:44 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r133331

16 years ago* nl.po: Update.
Joseph Myers [Tue, 18 Mar 2008 21:10:23 +0000 (21:10 +0000)]
* nl.po: Update.

From-SVN: r133325

16 years agore PR target/35504 (incorrect code generated on i386 for C++ multiple inheritance...
Mikulas Patocka [Tue, 18 Mar 2008 20:00:12 +0000 (21:00 +0100)]
re PR target/35504 (incorrect code generated on i386 for C++ multiple inheritance, large return structures and regparm or fastcall calling conventions)

        PR target/35504
        * config/i386/i386.c (x86_this_parameter): Calculate correct location
        of "this" pointer when "regparm = N" or "fastcall" is in effect.

testsuite/ChangeLog

        PR target/35504
        * g++.dg/other/pr35504.C: New test.

From-SVN: r133324

16 years ago* es.po, nl.po: Update.
Joseph Myers [Tue, 18 Mar 2008 19:59:25 +0000 (19:59 +0000)]
* es.po, nl.po: Update.

From-SVN: r133322