Iain Sandoe [Fri, 7 May 2010 17:34:31 +0000 (17:34 +0000)]
re PR target/43708 (gcc.dg/pragma-darwin.c "set not used", not working with pragma)
PR target/43708
* config/darwin-c.c (darwin_pragma_unused): Set DECL_READ_P
in addition to TREE_USED, to avoid "set but unused" warnings.
From-SVN: r159164
Changpeng Fang [Fri, 7 May 2010 17:26:02 +0000 (17:26 +0000)]
Define the TRIP_COUNT_TO_AHEAD_RATIO heuristic.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (TRIP_COUNT_TO_AHEAD_RATIO): New.
(is_loop_prefetching_profitable): Do not insert prefetches
when the trip count is not at least TRIP_COUNT_TO_AHEAD_RATIO
times the prefetch ahead distance.
From-SVN: r159163
Changpeng Fang [Fri, 7 May 2010 16:15:52 +0000 (16:15 +0000)]
Account for loop unrolling in the insn-to-prefetch ratio heuristic.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable):
Account for loop unrolling in the insn-to-prefetch ratio heuristic.
(loop_prefetch_arrays): Pass to is_loop_prefetching_profitable
the unroll_factor.
From-SVN: r159162
Changpeng Fang [Fri, 7 May 2010 16:15:45 +0000 (16:15 +0000)]
Dump a diagnostic info when the insn-to-mem ratio is too small.
2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Dump
a diagnostic info when the insn-to-mem ratio is too small.
From-SVN: r159161
Janne Blomqvist [Fri, 7 May 2010 15:55:59 +0000 (18:55 +0300)]
Remove free_mem
From-SVN: r159160
Richard Guenther [Fri, 7 May 2010 15:53:40 +0000 (15:53 +0000)]
re PR lto/43857 (-fresolution causes an ICE)
2010-05-07 Richard Guenther <rguenther@suse.de>
* gcc.c (LINK_COMMAND_SPEC): Provide a resolution file to
the linker plugin.
(store_arg): Queue temp_filename for deletion instead of
the whole argument.
lto/
PR lto/43857
PR lto/43371
* lang.opt (fresolution): Change to ...
(fresolution=): ... this.
* lto-lang.c (lto_handle_option): Adjust.
lto-plugin/
* lto-plugin.c (free_2): Do not free resolution_file.
(write_resolution): Check that we were passed a resolution file.
(all_symbols_read_handler): Adjust.
(cleanup_handler): Do not remove the resolution file.
(process_option): Handle -fresolution=.
From-SVN: r159159
Fabien ChĂȘne [Fri, 7 May 2010 15:52:06 +0000 (15:52 +0000)]
re PR c++/43951 (Revision 158918 miscompiled 483.xalancbmk in SPEC CPU 2006)
PR c++/43951
* init.c (diagnose_uninitialized_cst_or_ref_member_1): Returns the
error count. Emit errors only if compain is true.
(build_new_1): Do not return error_mark_node if
diagnose_uninitialized_cst_or_ref_member_1 does not diagnose any
errors. Delay the check for user-provided constructor.
(perform_member_init): Adjust.
* cp-tree.h (diagnose_uninitialized_cst_or_ref_member): Change the
prototype.
From-SVN: r159158
Richard Biener [Fri, 7 May 2010 15:52:01 +0000 (15:52 +0000)]
lto-wrapper.c (DUMPBASE_SUFFIX): Define.
2010-05-07 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (DUMPBASE_SUFFIX): Define.
(run_gcc): Handle LTRANS phase invocation.
* collect2.c (maybe_run_lto_and_relink): Do not set
WPA_SAVE_LTRANS.
lto/
* lto.c (DUMPBASE_SUFFIX): Remove.
(lto_execute_ltrans): Move functionality to lto-wrapper.c.
Rename to ...
(lto_write_ltrans_list): ... only output the list of ltrans files.
(lto_maybe_unlink): Remove.
(do_whole_program_analysis): Do not execute LTRANS phase
from here.
From-SVN: r159157
Jakub Jelinek [Fri, 7 May 2010 15:47:52 +0000 (17:47 +0200)]
tree.h (TREE_ADDRESSABLE): Adjust comment to say that this is also meaningful on PARM_DECLs and RESULT_DECLs.
* tree.h (TREE_ADDRESSABLE): Adjust comment to say that
this is also meaningful on PARM_DECLs and RESULT_DECLs.
From-SVN: r159156
Daniel Franke [Fri, 7 May 2010 15:36:45 +0000 (11:36 -0400)]
re PR fortran/40728 (Bogus error "Error: Can't convert UNKNOWN to REAL(8) at (1)")
gcc/fortran/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* intrinc.c (gfc_is_intrinsic): Do not prematurely mark symbol
as external
gcc/testsuite/:
2010-05-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/40728
* gfortran.dg/coarray_1.f90: Fixed error message.
* gfortran.dg/selected_char_kind_3.f90: Fixed error message.
* gfortran.dg/intrinsic_std_1.f90: Fixed bogus message.
* gfortran.dg/intrinsic_std_5.f90: New.
From-SVN: r159155
Jason Merrill [Fri, 7 May 2010 13:53:46 +0000 (09:53 -0400)]
* g++.dg/cpp0x/nullptr20.C: Use sprintf.
From-SVN: r159153
Rainer Orth [Fri, 7 May 2010 12:36:58 +0000 (12:36 +0000)]
* config/mips/iris6.h (LINK_SPEC): Don't pass -init, -fini with -r.
From-SVN: r159151
Richard Guenther [Fri, 7 May 2010 11:55:21 +0000 (11:55 +0000)]
re PR middle-end/44020 (Failed to build 200.sixtrack in SPEC CPU 2K)
2010-05-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44020
* tree-ssa-pre.c (execute_pre): Do not remove dead inserted
code when PRE is not yet initialized.
From-SVN: r159150
Eric Botcazou [Fri, 7 May 2010 10:25:54 +0000 (10:25 +0000)]
re PR c/40989 (-Werror= and #pragma diagnostics do not work with group flags)
PR 40989
* gcc-interface/misc.c (gnat_handle_option): Fix long line.
From-SVN: r159149
Rainer Orth [Fri, 7 May 2010 09:21:23 +0000 (09:21 +0000)]
dbxmdebug.h: Remove.
* config/mips/dbxmdebug.h: Remove.
* config.gcc (mips-sgi-irix6.5*): Remove mips/dbxmdebug.h.
From-SVN: r159147
Rainer Orth [Fri, 7 May 2010 09:11:31 +0000 (09:11 +0000)]
20100423-2_0.c: Include <stdio.h>.
* gcc.dg/lto/
20100423-2_0.c: Include <stdio.h>.
(size_t, stderr): Remove.
(read_error): Replaced __builtin_fprintf by fprintf.
From-SVN: r159146
Shujing Zhao [Fri, 7 May 2010 08:18:06 +0000 (08:18 +0000)]
c-typeck.c (build_binary_op): Warn ordered comparison of pointer with null pointer and also warn about...
gcc/
2010-05-07 Shujing Zhao <pearly.zhao@oracle.com>
* c-typeck.c (build_binary_op): Warn ordered comparison of pointer
with null pointer and also warn about ordered comparison of zero
with pointer if -Wextra.
gcc/testsuite/
2010-05-07 Shujing Zhao <pearly.zhao@oracle.com>
* gcc.dg/ordered-comparison-1.c: New test.
* gcc.dg/ordered-comparison-2.c: New test.
* gcc.dg/ordered-comparison-3.c: New test.
* gcc.dg/ordered-comparison-4.c: New test.
From-SVN: r159145
Jonathan Wakely [Fri, 7 May 2010 01:05:38 +0000 (01:05 +0000)]
exception_ptr.h (make_exception_ptr): Add.
2010-05-07 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception_ptr.h (make_exception_ptr): Add.
* testsuite/18_support/exception_ptr/make_exception_ptr.cc: New.
From-SVN: r159144
GCC Administrator [Fri, 7 May 2010 00:18:37 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r159143
Mike Stump [Thu, 6 May 2010 23:53:46 +0000 (23:53 +0000)]
Note which PR this was related to.
From-SVN: r159139
Mike Stump [Thu, 6 May 2010 23:49:18 +0000 (23:49 +0000)]
* obj-c++.dg/cxx-ivars-2.mm: Restore running of testcase.
From-SVN: r159138
Jason Merrill [Thu, 6 May 2010 21:59:37 +0000 (17:59 -0400)]
gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
* config/abi/pre/gnu.ver: Move decltype(nullptr) into CXXABI_1.3.5.
* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.5.
From-SVN: r159136
Andreas Simbuerger [Thu, 6 May 2010 21:53:47 +0000 (21:53 +0000)]
Add ChangeLog entries.
From-SVN: r159135
Sebastian Pop [Thu, 6 May 2010 21:53:42 +0000 (21:53 +0000)]
Allow all the versions greater than 0.10 of PPL.
2010-05-05 Sebastian Pop <sebastian.pop@amd.com>
* configure.ac: Allow all the versions greater than 0.10 of PPL.
* configure: Regenerated.
From-SVN: r159134
Andreas Simbuerger [Thu, 6 May 2010 21:53:35 +0000 (21:53 +0000)]
Replace Value with mpz_t
2010-04-12 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-blocking.c
(pbb_strip_mine_profitable_p): Replace Value with mpz_t.
* graphite-clast-to-gimple.c
(clast_to_gcc_expression): Same.
(precision_for_value): Same.
(precision_for_interval): Same.
(gcc_type_for_interval): Same.
(graphite_create_new_guard): Same.
(compute_bounds_for_level): Same.
(graphite_create_new_loop_guard): Same.
* graphite-interchange.c
(build_linearized_memory_access): Same.
(pdr_stride_in_loop): Same.
(memory_strides_in_loop_1): Same.
(memory_strides_in_loop): Same.
(extend_scattering): Same.
(psct_scattering_dim_for_loop_depth): Same.
(pbb_number_of_iterations): Same.
* graphite-poly.h
(debug_iteration_domains): Same.
* graphite-ppl.c
(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
(ppl_set_inhomogeneous_gmp): Same.
(ppl_strip_loop): Same.
(ppl_lexico_compare_linear_expressions): Same.
(ppl_read_polyhedron_matrix): Same.
(ppl_max_for_le_pointset): Same.
* graphite-ppl.h
(ppl_read_polyhedron_matrix): Same.
(tree_int_to_gmp): Same.
(gmp_cst_to_tree): Same.
(ppl_set_inhomogeneous): Same.
(ppl_set_inhomogeneous_tree): Same.
(ppl_set_coef): Same.
(ppl_set_coef_tree): Same.
* graphite-sese-to-poly.c
(build_pbb_scattering_polyhedrons): Same.
(build_scop_scattering): Same.
(scan_tree_for_params_right_scev): Same.
(scan_tree_for_params): Same.
(find_params_in_bb): Same.
(find_scop_parameters): Same.
(add_upper_bounds_from_estimated_nit): Same.
(build_loop_iteration_domains): Same.
(add_condition_to_domain): Same.
(pdr_add_memory_accesses): Same.
From-SVN: r159133
Andreas Simbuerger [Thu, 6 May 2010 21:53:29 +0000 (21:53 +0000)]
Resolve CLooG's value_* macros to their respective mpz_* counterparts.
2010-04-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-blocking.c (pbb_strip_mine_profitable_p): Resolve
CLooG's value_* macros to their respective mpz_* counterparts.
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Same.
(graphite_create_new_loop_guard): Same.
* graphite-interchange.c (build_linearized_memory_access): Same.
(pdr_stride_in_loop): Same.
(memory_strides_in_loop_1): Same.
(1st_interchange_profitable_p): Same.
* graphite-poly.c (extend_scattering): Same.
(psct_scattering_dim_for_loop_depth): Same.
(pbb_number_of_iterations): Same.
(pbb_number_of_iterations_at_time): Same.
* graphite-poly.h (new_1st_loop): Same.
* graphite-ppl.c (cloog_matrix_to_ppl_constraint): Same.
(oppose_constraint): Same.
(insert_constraint_into_matrix): Same.
(ppl_set_inhomogeneous_gmp): Same.
(ppl_set_coef_gmp): Same.
(ppl_strip_loop): Same.
(ppl_lexico_compare_linear_expressions): Same.
(ppl_max_for_le_pointset): Same.
(ppl_min_for_le_pointset): Same.
(ppl_build_realtion): Same.
* graphite-ppl.h (gmp_cst_to_tree): Same.
(ppl_set_inhomogeneous): Same.
(ppl_set_inhomogeneous_tree): Same.
(ppl_set_coef): Same.
(ppl_set_coef_tree): Same.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Same.
(build_scop_scattering): Same.
(add_value_to_dim): Same.
(scan_tree_for_params_right_scev): Same.
(scan_tree_for_params_int): Same.
(scan_tree_for_params): Same.
(find_params_in_bb): Same.
(find_scop_parameters): Same.
(add_upper_bounds_from_estimated_nit): Same.
(build_loop_iteration_domains): Same.
(create_linear_expr_from_tree): Same.
(add_condition_to_domain): Same.
(pdr_add_memory_accesses): Same.
From-SVN: r159132
Jason Merrill [Thu, 6 May 2010 20:51:52 +0000 (16:51 -0400)]
Add support for C++0x nullptr.
gcc:
* c-common.c (c_common_reswords): Add nullptr.
* c-common.h: Add RID_NULLPTR. Reorganize C++0x rids.
* dwarf2out.c (is_base_type): Handle NULLPTR_TYPE.
(gen_type_die_with_usage): Likewise.
* dbxout.c (dbxout_type): Likewise.
* sdbout.c (plain_type_1): Likewise.
gcc/cp:
* cp-tree.def: Add NULLPTR_TYPE.
* cp-tree.h: Add nullptr_node.
(cp_tree_index): Add CPTI_NULLPTR.
(SCALAR_TYPE_P): Add NULLPTR_TYPE.
* call.c (null_ptr_cst_p): Handle nullptr.
(standard_conversion): Likewise.
(convert_arg_to_ellipsis): Likewise.
* mangle.c (write_type): Likewise.
* name-lookup.c (arg_assoc_type): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
* typeck.c (cp_build_binary_op): Likewise.
(build_reinterpret_cast_1): Likewise.
* error.c (dump_type): Likewise.
(dump_type_prefix, dump_type_suffix): Likewise.
* decl.c (cxx_init_decl_processing): Likewise.
* cxx-pretty-print.c (pp_cxx_constant): Likewise.
* cvt.c (ocp_convert): Likewise.
* rtti.c (typeinfo_in_lib_p, emit_support_tinfos): Put
nullptr_t tinfo in libsupc++.
libstdc++-v3:
* config/abi/pre/gnu.ver: Add typeinfo for decltype(nullptr).
libiberty:
* cp-demangle.c (cplus_demangle_builtin_types): Add nullptr.
(cplus_demangle_type): Handle nullptr.
From-SVN: r159131
Jonathan Wakely [Thu, 6 May 2010 20:18:13 +0000 (20:18 +0000)]
basic_string.h: Escape class names in doxygen docs.
2010-05-06 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/basic_string.h: Escape class names in doxygen docs.
From-SVN: r159129
Jonathan Wakely [Thu, 6 May 2010 19:57:58 +0000 (19:57 +0000)]
re PR libstdc++/44014 (no std::string in API documentation)
2010-05-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/44014
* include/bits/stringfwd.h: Add doxygen comments and new group.
* include/bits/basic_string.h: Add to new doxygen group.
* doc/doxygen/user.cfg.in (ALIASES): Link to correct group.
From-SVN: r159126
Jason Merrill [Thu, 6 May 2010 19:46:14 +0000 (15:46 -0400)]
gimplify.c (gimplify_expr): Set GS_ALL_DONE when appropriate.
gcc:
* gimplify.c (gimplify_expr): Set GS_ALL_DONE when appropriate.
Don't change GS_OK to GS_ALL_DONE. Make sure that all cases set
ret appropriately.
(gimplify_compound_lval): Return GS_ALL_DONE as appropriate.
gcc/cp:
* semantics.c (simplify_aggr_init_expr): Use INIT_EXPR.
From-SVN: r159125
Jason Merrill [Thu, 6 May 2010 19:46:03 +0000 (15:46 -0400)]
gimplify.c (gimplify_modify_expr_rhs): Don't return GS_OK for stripping WITH_SIZE_EXPR.
* gimplify.c (gimplify_modify_expr_rhs): Don't return GS_OK for
stripping WITH_SIZE_EXPR.
(gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the rhs didn't
change.
From-SVN: r159124
Rainer Orth [Thu, 6 May 2010 18:47:18 +0000 (18:47 +0000)]
config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from list of obsolete configurations.
gcc:
* config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from
list of obsolete configurations.
Disabled check for obsolete configurations.
(mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
Removed support for previous versions.
* config/mips/iris.h: Removed.
* config/mips/iris5.h: Removed.
* config/mips/iris6.h: Merged old iris.h contents.
(TARGET_IRIX): Removed.
(DRIVER_SELF_SPECS): Removed mabi=32.
(IDENT_ASM_OP): Removed undef.
(STARTFILE_SPEC): Removed mabi=32.
(ENDFILE_SPEC): Likewise.
(IRIX_SUBTARGET_LINK_SPEC): Likewise.
(MACHINE_TYPE): Update for IRIX 6.5.
* config/mips/mips.c (mips_build_builtin_va_list): Replaced
TARGET_IRIX by TARGET_IRIX6.
(mips_file_start): Likewise.
(mips_output_external): Remove IRIX 5/6 O32 support.
(mips_output_function_prologue): Likewise.
* config/mips/mips.h (TARGET_GPWORD): Replaced TARGET_IRIX by
TARGET_IRIX6.
(TARGET_CPU_CPP_BUILTINS): Likewise.
(TARGET_IRIX): Removed.
* config/mips/t-iris6 (MULTILIB_OPTIONS): Removed mabi=32.
(MULTILIB_DIRNAMES): Removed 32.
(MULTILIB_OSDIRNAMES): Removed ../lib.
* doc/install.texi (Prerequisites): Don't reference IRIX before
6.5.
(Specific, mips-sgi-irix5): Document removal.
(Specific, mips-sgi-irix6): Document IRIX 6.[0-4] and O32 ABI
removal.
Remove references to older IRIX 6 releases and the O32 ABI.
gcc/ada:
* gcc-interface/Makefile.in: Removed mips-sgi-irix5* support.
libstdc++-v3:
* configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
support.
* config/os/irix/irix5.2: Removed.
From-SVN: r159121
Jakub Jelinek [Thu, 6 May 2010 17:41:34 +0000 (19:41 +0200)]
Wunused-var-8.c: Move to...
* gcc.dg/Wunused-var-8.c: Move to...
* c-c++-common/Wunused-var-6.c: ... here. New test.
From-SVN: r159118
Jakub Jelinek [Thu, 6 May 2010 17:34:47 +0000 (19:34 +0200)]
re PR bootstrap/43994 (Revision 159063 failed to bootstrap on Linux/ia64)
PR bootstrap/43994
* df-problems.c (dead_debug_insert_before): Use *DF_REF_REAL_LOC
instead of DF_REF_REAL_REG.
From-SVN: r159117
Dave Korn [Thu, 6 May 2010 16:20:53 +0000 (16:20 +0000)]
re PR target/42811 (java.lang.ExceptionInInitializerError in ecj1)
PR target/42811
* tests/staticrootstest.c: New test source file.
* tests/staticrootslib.c: New test library source file.
* Makefile.am (test_ldadd): New variable.
(gctest_LDADD): Use it.
(TESTS): Add leaktest, middletest and staticrootstest.
(check_PROGRAMS): Likewise.
(leaktest_SOURCES): New libtool variable definition.
(leaktest_LDADD): Likewise.
(leaktest_LDFLAGS): Likewise.
(leaktest_LINK): Likewise.
(middletest_SOURCES): Likewise.
(middletest_LDADD): Likewise.
(middletest_LDFLAGS): Likewise.
(middletest_LINK): Likewise.
(staticrootstest_SOURCES): Likewise.
(staticrootstest_LDADD): Likewise.
(staticrootstest_LDFLAGS): Likewise.
(staticrootstest_LINK): Likewise.
(check_LTLIBRARIES): Likewise.
(libstaticrootslib_la_SOURCES): Likewise.
(libstaticrootslib_la_LIBADD): Likewise.
(libstaticrootslib_la_LDFLAGS): Likewise.
(libstaticrootslib_la_DEPENDENCIES): Likewise.
* Makefile.in: Regenerate.
From-SVN: r159115
Paolo Carlini [Thu, 6 May 2010 16:07:02 +0000 (16:07 +0000)]
re PR c++/40406 (ICE with broken template member declaration)
2010-05-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/40406
* g++.dg/template/crash96.C: New.
From-SVN: r159112
Dave Korn [Thu, 6 May 2010 16:06:18 +0000 (16:06 +0000)]
re PR target/43888 (FAIL: gcc.dg/alias-7.c execution test)
PR target/43888
* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
handling to still return true for x64 targets.
From-SVN: r159111
Maxim Kuvyrkov [Thu, 6 May 2010 15:54:14 +0000 (15:54 +0000)]
* config/m68k/uclinux.h (LIB_SPEC): Bring in sync with config/linux.h.
From-SVN: r159110
Jan Hubicka [Thu, 6 May 2010 14:15:22 +0000 (16:15 +0200)]
re PR tree-optimization/43791 (kernel/rtmutex.c:1138:1: internal compiler error: in cgraph_decide_inlining_of_small_functions, at ipa-inline.c:1009)
PR tree-optimization/43791
* ipa-inline.c (update_caller_keys): Remove bogus
disregard_inline_limits check.
* gcc.c-torture/compile/pr43791.c: New file.
From-SVN: r159108
Michael Matz [Thu, 6 May 2010 13:54:32 +0000 (13:54 +0000)]
re PR tree-optimization/43984 (PRE misses full-redundancies, inserts into loops)
PR tree-optimization/43984
* tree-ssa-pre.c (inserted_phi_names): Remove.
(inserted_exprs): Change to bitmap.
(create_expression_by_pieces): Set bits, don't append to vector.
(insert_into_preds_of_block): Don't handle inserted_phi_names.
(eliminate): Don't look at inserted_phi_names, remove deleted
insns from inserted_exprs.
(remove_dead_inserted_code): Adjust to use bitmaps instead of
vectors.
(init_pre, fini_pre): Allocate and free bitmaps.
(execute_pre): Insert insns on edges before elimination.
testsuite/
* gfortran.dg/pr43984.f90: New test.
From-SVN: r159106
H.J. Lu [Thu, 6 May 2010 13:03:12 +0000 (13:03 +0000)]
Add argument kind to lto_handle_option.
2010-05-06 H.J. Lu <hongjiu.lu@intel.com>
* lto-lang.c (lto_handle_option): Add argument kind.
From-SVN: r159105
Maxim Kuvyrkov [Thu, 6 May 2010 10:28:46 +0000 (10:28 +0000)]
* tree.c (initializer_zerop): Handle STRING_CST.
From-SVN: r159103
Manuel López-Ibåñez [Thu, 6 May 2010 10:12:36 +0000 (10:12 +0000)]
re PR c/40989 (-Werror= and #pragma diagnostics do not work with group flags)
2010-05-06 Manuel López-Ibåñez <manu@gcc.gnu.org>
PR 40989
* doc/invoke.texi (Wimplicit): Document as C only.
* opts.c (common_handle_option): Add argument kind.
(handle_option): Rename as read_cmdline_option. Factor out code to...
(handle_option): ... here. New.
(handle_options): Rename as read_cmdline_options.
(decode_options): Update call.
(set_option): Use option index instead of option pointer. Classify
diagnostics correctly.
(enable_warning_as_error): Call handle_option.
* opts.h (set_option): Update declaration.
(handle_option): Declare.
* langhooks.h (struct lang_hooks): Add argument kind to
handle_option.
* c.opt (Wimplicit,Wimplicit-int): Initialize to -1.
* c-opts.c (set_Wimplicit): Delete.
(c_family_lang_mask): New static constant.
(c_common_handle_option): Add argument kind. Use handle_option
instead of set_Wimplicit.
(c_common_post_options): warn_implicit and warn_implicit_int
are disabled by default.
* c-common.c (warn_implicit): Do not define here.
* c-common.h (warn_implicit): Do not declare here.
(c_common_handle_option): Update declaration.
* lto-opts.c (lto_reissue_options): Update call to set_option.
java/
* lang.c (java_handle_option): Add argument kind.
fortran/
* options.c (gfc_handle_option): Add argument kind.
* gfortran.h (gfc_handle_option): Update declaration.
ada/
* gcc-interface/misc.c (gnat_handle_option): Add argument kind.
testsuite/
* gcc.dg/pr40989.c: New.
From-SVN: r159102
Richard Guenther [Thu, 6 May 2010 09:08:57 +0000 (09:08 +0000)]
re PR tree-optimization/43571 (domwalk sucks)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43571
* domwalk.c (walk_dominator_tree): Walk the dominator
sons in more optimal order.
From-SVN: r159100
Richard Guenther [Thu, 6 May 2010 09:04:00 +0000 (09:04 +0000)]
re PR tree-optimization/43934 (LIM should handle PHI nodes)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43934
* tree-ssa-loop-im.c (movement_possibility): Handle PHI nodes.
(stmt_cost): Likewise.
(extract_true_false_args_from_phi): New helper.
(determine_max_movement): For PHI nodes verify we can hoist them
and compute their cost.
(determine_invariantness_stmt): Handle PHI nodes.
(move_computations_stmt): Likewise. Hoist PHI nodes in
if-converted form using COND_EXPRs.
(move_computations): Return TODO_cleanup_cfg if we hoisted PHI
nodes.
(tree_ssa_lim): Likewise.
* tree-flow.h (tree_ssa_lim): Adjust prototype.
* tree-ssa-loop.c (tree_ssa_loop_im): Return todo.
* gcc.dg/tree-ssa/ssa-lim-9.c: New testcase.
From-SVN: r159099
Richard Guenther [Thu, 6 May 2010 08:53:19 +0000 (08:53 +0000)]
re PR middle-end/43987 (type-punning causes broken binaries unless -O0 is used)
2010-05-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43987
* tree-ssa-structalias.c (could_have_pointers): For possibly
address-taken variables force pointers to be recorded.
(create_variable_info_for_1): Likewise.
(push_fields_onto_fieldstack): Pass in wheter all fields
must have pointers.
(find_func_aliases): Query types instead of vars whether
they contain pointers where appropriate.
* gcc.c-torture/execute/pr43987.c: New testcase.
* gcc.dg/torture/pta-escape-1.c: Adjust.
* gcc.dg/tree-ssa/pta-escape-1.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
* gcc.dg/ipa/ipa-pta-11.c: Likewise.
From-SVN: r159098
Jan Hubicka [Thu, 6 May 2010 08:39:32 +0000 (10:39 +0200)]
cgraphbuild.c (record_reference_ctx): Add varpool_node.
* cgraphbuild.c (record_reference_ctx): Add varpool_node.
(record_reference, mark_address, mark_load, mark_store): Record
references.
(record_references_in_initializer): Update call of record_references.
(rebuild_cgraph_edges): Remove all references before rebuiding.
* cgraph.c (cgraph_create_node): Clear ref list.
(cgraph_remove_node): Remove references.
(dump_cgraph_node): Dump references.
(cgraph_clone_node): Clone references.
* cgraph.h: Include ipa-ref.h and ipa-ref-inline.h
(struct cgraph_node, varpool_node): Add ref_lst.
* ipa-ref.c: New file.
* ipa-ref.h: New file.
* ipa-ref-inline.h: New file.
* lto-cgraph.c (output_varpool): Take cgrag node set argument.
(referenced_from_other_partition_p): New function.
(lto_output_varpool_node): Take set arugment; call
referenced_from_other_partition.
(lto_output_ref): New.
(add_references): New.
(output_refs): New.
(output_cgraph): Compute boundary based on references;
output refs.
(output_varpool): Accept cgraph_node_set argument.
(input_ref): New.
(input_refs): New.
(input_cgraph): Call input_refs.
* lto-section-in.c (lto_section_name): Add refs.
* Makefile.in: (cgraph.h): Include ipa-ref.h and ipa-ref-inline.h
(ipa-ref.o): New file.
* varpool.c (varpool_node): Clear ipa ref list.
(varpool_remove_node): Remove references.
(dump_varpool_node): Dump references.
(varpool_assemble_decl): Only compile finalized ones.
(varpool_extra_name_alias): Initialize ref list.
* lto-streamer.c (lto-get_section_name): Add .refs section.
* lto-streamer.h (lto_section_type): Add LTO_section_refs.
(referenced_from_other_partition_p): Declared.
From-SVN: r159097
Jakub Jelinek [Thu, 6 May 2010 06:52:30 +0000 (08:52 +0200)]
C++ support for -Wunused-but-set-variable
gcc/cp/ChangeLog:
PR 18624
* cp-tree.h (mark_exp_read, mark_rvalue_use, mark_lvalue_use,
mark_type_use): Declare ...
* expr.c (mark_exp_read, mark_rvalue_use, mark_lvalue_use,
mark_type_use): ... new fns.
* typeck.c (cxx_sizeof_expr, cxx_alignof_expr): Call mark_type_use.
(perform_integral_promotions): Call mark_rvalue_use.
(cp_build_unary_op): Call mark_lvalue_use.
(decay_conversion): Update comment. Call mark_lvalue.
* decl.c (unused_but_set_errorcount): New variable.
(poplevel): Issue -Wunused-but-set-variable diagnostics.
(duplicate_decls): Merge DECL_READ_P flags.
(start_cleanup_fn): Set DECL_READ_P flag.
(finish_function): Issue -Wunused-but-set-parameter diagnostics.
* tree.c (rvalue): Call mark_rvalue_use.
* pt.c (convert_nontype_argument): Likewise.
* semantics.c (finish_typeof, finish_decltype_type): Call
mark_type_use.
(finish_asm_stmt): Call mark_lvalue_use.
(finish_expr_stmt): Call mark_exp_read.
* call.c (convert_like_real) <ck_identity, ck_user>: Call
mark_rvalue_use.
(build_x_va_arg): Call mark_lvalue_use.
(build_over_call): Call mark_type_use.
* init.c (build_new, build_delete): Call mark_value_use.
* rtti.c (build_typeid): Call mark_lvalue_use or mark_type_use.
(build_dynamic_cast_1): call mark_lvalue_use or mark_rvalue_use.
gcc/testsuite/ChangeLog:
PR 18624
* g++.dg/warn/Wunused-7.C: Add dg-warning.
* g++.dg/template/sfinae16.C: Likewise.
* gcc.dg/Wunused-var-1.c: Moved to...
* c-c++-common/Wunused-var-1.c: ...here. New test.
* gcc.dg/Wunused-var-2.c: Moved to...
* c-c++-common/Wunused-var-2.c: ...here. New test.
* gcc.dg/Wunused-var-3.c: Moved to...
* c-c++-common/Wunused-var-3.c: ...here. New test.
* gcc.dg/Wunused-var-4.c: Moved to...
* gcc.dg/Wunused-var-1.c: ... here.
* gcc.dg/Wunused-var-5.c: Moved to...
* c-c++-common/Wunused-var-4.c: ...here. New test.
* gcc.dg/Wunused-var-7.c: Moved to...
* c-c++-common/Wunused-var-5.c: ...here. New test.
* gcc.dg/Wunused-var-6.c: Moved to...
* gcc.dg/Wunused-var-2.c: ... here.
* c-c++-common/Wunused-var-1.c: New test.
* c-c++-common/Wunused-var-2.c: New test.
* c-c++-common/Wunused-var-3.c: New test.
* c-c++-common/Wunused-var-4.c: New test.
* c-c++-common/Wunused-var-5.c: New test.
* g++.dg/warn/Wunused-var-1.C: New test.
* g++.dg/warn/Wunused-var-2.C: New test.
* g++.dg/warn/Wunused-var-3.C: New test.
* g++.dg/warn/Wunused-var-4.C: New test.
* g++.dg/warn/Wunused-var-5.C: New test.
* g++.dg/warn/Wunused-var-6.C: New test.
* g++.dg/warn/Wunused-var-7.C: New test.
* g++.dg/warn/Wunused-var-8.C: New test.
* g++.dg/warn/Wunused-parm-1.C: New test.
* g++.dg/warn/Wunused-parm-2.C: New test.
* g++.dg/warn/Wunused-parm-3.C: New test.
Co-Authored-By: Dodji Seketeli <dodji@redhat.com>
From-SVN: r159096
Ira Rosen [Thu, 6 May 2010 06:42:51 +0000 (06:42 +0000)]
re PR middle-end/43901 (FAIL: gcc.c-torture/compile/pr42196-2.c)
PR tree-optimization/43901
* tree-vect-stmts.c (vectorizable_call): Assert that vector
type is not NULL if it's transformation phase, and return
FALSE if it's analysis.
(vectorizable_conversion, vectorizable_operation,
vectorizable_type_demotion, vectorizable_type_promotion):
Likewise.
From-SVN: r159095
GCC Administrator [Thu, 6 May 2010 00:17:31 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159094
Andrew Pinski [Thu, 6 May 2010 00:14:59 +0000 (00:14 +0000)]
mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Delete.
2010-05-05 Andrew Pinski <andrew.pinski@caviumnetworks.com>
* config/mips/mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
Delete.
* config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
New define.
* config/mips/mips-protos.h
(mips_small_register_classes_for_mode_p): Delete prototype.
From-SVN: r159090
Bernd Schmidt [Wed, 5 May 2010 22:46:38 +0000 (22:46 +0000)]
arm.h (MAX_LDM_STM_OPS): New macro.
* config/arm/arm.h (MAX_LDM_STM_OPS): New macro.
* config/arm/arm.c (multiple_operation_profitable_p,
compute_offset_order): New static functions.
(load_multiple_sequence, store_multiple_sequence): Use them.
Replace constant 4 with MAX_LDM_STM_OPS. Compute order[0] from
memory offsets, not register numbers.
(emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS.
From-SVN: r159089
Tobias Burnus [Wed, 5 May 2010 22:11:14 +0000 (00:11 +0200)]
re PR fortran/43985 (ICE when assumed size cray-pointee passed as argument)
2010-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43985
* trans-types.c (gfc_sym_type): Mark Cray pointees as
GFC_POINTER_TYPE_P.
2010-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43985
* gfortran.dg/gomp/crayptr5.f90: New test case.
From-SVN: r159086
Steven Bosscher [Wed, 5 May 2010 21:32:44 +0000 (21:32 +0000)]
stor-layout.c (pending_sizes): Change the type to VEC(tree,gc) *.
* stor-layout.c (pending_sizes): Change the type to
VEC(tree,gc) *.
(get_pending_sizes, put_pending_size, put_pending_sizes):
Update the uses of pending_sizes.
* c-decl.c (store_parm_decls): Likewise.
* c-tree.h (struct c_arg_info): Likewise.
* tree.h: Update the prototype for get_pending_sizes and
put_pending_sizes.
From-SVN: r159085
Paolo Carlini [Wed, 5 May 2010 19:53:11 +0000 (19:53 +0000)]
29134.cc: Adjust for profile-mode too.
2010-05-05 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust
for profile-mode too.
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
Likewise.
2010-05-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/profile/unordered_map (unordered_map<>::insert(_InputIter,
_InputIter), unordered_multimap<>::insert(_InputIter, _InputIter)):
Fix typo, don't call base() on __first and __last.
2010-05-05 Paolo Carlini <paolo.carlini@oracle.com>
Fix profile-mode vs -std=c++0x
* include/profile/impl/profiler_trace.h: Do not include the
whole <algorithm>, include <bits/stl_heap.h> (additionally
to <bits/stl_algobase.h>).
(__write_cost_factors): Replace std::for_each with open-coding.
(__set_cost_factors): Likewise.
(__report): Likewise; use std::make_heap / std::sort_heap
instead of std::sort.
(__report_cost_factors): Replace std::remove with open-coding.
(__warn, __cost_factor_writer, __cost_factor_setter): Remove.
From-SVN: r159082
Jason Merrill [Wed, 5 May 2010 19:46:41 +0000 (15:46 -0400)]
re PR debug/43370 (ICE gen_type_die_with_usage, at dwarf2out.c:14745)
PR debug/43370
* c-common.c (handle_aligned_attribute): Respect
ATTR_FLAG_TYPE_IN_PLACE.
From-SVN: r159081
Daniel Franke [Wed, 5 May 2010 19:35:22 +0000 (15:35 -0400)]
resolve.c (traverse_data_list): Rephrase error message for non-constant bounds in data-implied-do.
2010-05-05 Daniel Franke <franke.daniel@gmail.com>
* resolve.c (traverse_data_list): Rephrase error message for
non-constant bounds in data-implied-do.
From-SVN: r159080
Jason Merrill [Wed, 5 May 2010 19:33:11 +0000 (15:33 -0400)]
re PR testsuite/43758 (19 new GCC HEAD@158360 regressions)
PR testsuite/43758
* target.h (struct gcc_target): Add attribute_takes_identifier_p.
* target_def.h (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.
(TARGET_INITIALIZER): Use it.
* c-common.c (attribute_takes_identifier_p): Call it.
* c-common.h: Update prototype.
* config/rs6000/rs6000.c (rs6000_attribute_takes_identifier_p): New.
(TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.
From-SVN: r159079
Jakub Jelinek [Wed, 5 May 2010 19:11:16 +0000 (21:11 +0200)]
re PR debug/43950 (fortran: Use DW_AT_identifier_case)
PR debug/43950
* dwarf2out.c (gen_compile_unit_die): Add DW_AT_identifier_case
DW_ID_down_case for Fortran compilation units.
From-SVN: r159077
Daniel Franke [Wed, 5 May 2010 18:53:23 +0000 (14:53 -0400)]
re PR fortran/24978 (ICE in gfc_assign_data_value_range)
gcc/fortran/:
2010-05-05 Daniel Franke <franke.daniel@gmail.com>
PR fortran/24978
* gfortran.h: Removed repeat count from constructor, removed
all usages.
* data.h (gfc_assign_data_value_range): Changed return value from
void to gfc_try.
* data.c (gfc_assign_data_value): Add location to constructor element.
(gfc_assign_data_value_range): Call gfc_assign_data_value()
for each element in range. Return early if an error was generated.
* resolve.c (check_data_variable): Stop early if range assignment
generated an error.
gcc/testsuite/:
2010-05-05 Daniel Franke <franke.daniel@gmail.com>
PR fortran/24978
* gfortran.dg/data_invalid.f90: New.
From-SVN: r159076
Jan Hubicka [Wed, 5 May 2010 18:14:43 +0000 (20:14 +0200)]
lto-cgraph.c (lto_output_varpool_node, [...]): Correctly handle aliases.
* lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Correctly
handle aliases.
From-SVN: r159075
Eric Botcazou [Wed, 5 May 2010 17:48:01 +0000 (17:48 +0000)]
gimplify.c (gimplify_return_expr): Gimplify the size expressions of a variable-sized RESULT_DECL.
* gimplify.c (gimplify_return_expr): Gimplify the size expressions of
a variable-sized RESULT_DECL.
From-SVN: r159074
Maxim Kuvyrkov [Wed, 5 May 2010 17:11:26 +0000 (17:11 +0000)]
* doc/invoke.texi (-mfix-cortex-m3-ldrd): Move from ARC section to ARM.
From-SVN: r159073
Jason Merrill [Wed, 5 May 2010 16:32:20 +0000 (12:32 -0400)]
re PR c++/43787 (memory copy of empty class (sizeof is one))
PR c++/43787
gcc:
* gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
returns GS_OK.
(gimplify_modify_expr_rhs): Return GS_OK if anything changed.
gcc/cp:
* cp-gimplify.c (cp_gimplify_expr): Remove copies of empty classes.
* call.c (build_over_call): Don't try to avoid INIT_EXPR copies here.
From-SVN: r159072
Jason Merrill [Wed, 5 May 2010 16:32:07 +0000 (12:32 -0400)]
add myself as gimple maintainer
From-SVN: r159071
Andrew Haley [Wed, 5 May 2010 13:05:21 +0000 (13:05 +0000)]
010-05-04 Andrew Haley <aph@redhat.com>
* lib/gen-classlist.sh.in: Use absolute pathnames for all the
directory names in the output file.
From-SVN: r159067
Alexandre Oliva [Wed, 5 May 2010 10:43:36 +0000 (10:43 +0000)]
re PR debug/43478 (Missing DW_AT_location for a variable)
PR debug/43478
* df-problems.c (struct dead_debug_use, struct dead_debug): New.
(dead_debug_init, dead_debug_finish): New functions.
(dead_debug_add, dead_debug_insert_before): Likewise.
(df_note_bb_compute): Initialize a dead_debug object, add dead
debug uses to it, insert debug bind insns before death insns,
reset debug insns that refer to pending uses at the end.
* rtl.h (make_debug_expr_from_rtl): New prototype.
* varasm.c (make_debug_expr_from_rtl): New function.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r159063
Jan Hubicka [Wed, 5 May 2010 10:21:42 +0000 (12:21 +0200)]
lto-cgraph.c (output_varpool): Forward declare; work on encoder.
* lto-cgraph.c (output_varpool): Forward declare; work on encoder.
(lto_varpool_encoder_new, lto_varpool_encoder_delete, lto_varpool_encoder_encode
lto_varpool_encoder_lookup, lto_varpool_encoder_deref, lto_varpool_encoder_size,
lto_varpool_encoder_encode_initializer_p,
lto_set_varpool_encoder_encode_initializer): New functions.
(lto_output_cgraph): Take vset parameter too; compute varpool encoder;
call output_varpool.
(input_varpool_node): Do not always set analyzed.
(input_cgraph_1): Return vector of cgraph nodes.
(input_varpool_1): Return vector of varpools.
(input_cgraph): Free the vectors.
* lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
output only initializers needed.
(lto_output): Only call output_cgraph.
(produce_asm_for_decls): Call lto_varpool_encoder_delete.
* lto-section-out.c (lto_new_out_decl_state): Initialize
state->varpool_node_encoder.
* lto-streamer.h (lto_varpool_encoder_d): New.
(lto_out_decl_state, lto_file_decl_data): Add varpool_node_encoder.
(lto_cgraph_encoder_delete, output_cgraph): Update prototype.
(lto_varpool_encoder_deref, lto_varpool_encoder_lookup,
lto_varpool_encoder_encode, lto_varpool_encoder_delete,
lto_varpool_encoder_encode_initializer_p, lto_varpool_encoder_new):
Declare.
(output_varpool, input_varpool): Remove declarations.
* lto.c (lto_1_to_1_map): Partition only needed nodes.
From-SVN: r159062
Jan Hubicka [Wed, 5 May 2010 10:20:38 +0000 (12:20 +0200)]
lto-symtab.c (lto_symtab_resolve_can_prevail_p): Alias of variable with body can prevail.
* lto-symtab.c (lto_symtab_resolve_can_prevail_p): Alias of variable
with body can prevail.
* lto-symtab.c (lto_symtab_merge_decls_1): Prefer declarations with
size.
From-SVN: r159061
Laurynas Biveinis [Wed, 5 May 2010 10:06:37 +0000 (10:06 +0000)]
Makefile.in (build/gengtype.o): Add $(HASHTAB_H) to dependencies.
2010-05-05 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* Makefile.in (build/gengtype.o): Add $(HASHTAB_H) to
dependencies.
* gengtype.h (erro_at_line): Constify pos argument.
* gengtype.c: Include hashtab.h.
(enum gc_used): Document GC_MAYBE_POINTED_TO.
(error_at_line): Constify pos argument.
(do_typedef): Initialize p->opt field.
(get_file_gtfilename): Fix comment typo.
(struct walk_type_data): Constify line field.
(get_output_file_for_structure): New function.
(write_local_func_for_structure): Constify orig_s argument.
Use get_output_file_for_structure.
(write_func_for_structure): Use get_output_file_for_structure.
(INDENT): New define.
(dump_pair, dump_type, dump_type_list, dump_typekind)
(dump_gc_used, dump_options, dump_fileloc, dump_type_u_s)
(dump_type_u_a, dump_type_u_param_struct, dump_everything): New
functions.
(seen_types): New variable.
(main): New variable do_dump. Process "-d" command line option.
Call dump_everything if dump requested.
From-SVN: r159060
Jakub Jelinek [Wed, 5 May 2010 09:26:26 +0000 (11:26 +0200)]
Fix up ChangeLog entry.
From-SVN: r159059
Jakub Jelinek [Wed, 5 May 2010 09:25:01 +0000 (11:25 +0200)]
var-tracking.c (var_debug_decl): Save DECL_DEBUG_EXPR value in a temporary instead of invoking the macro...
* var-tracking.c (var_debug_decl): Save DECL_DEBUG_EXPR value
in a temporary instead of invoking the macro multiple times.
(track_expr_p): Likewise.
From-SVN: r159058
Janus Weil [Wed, 5 May 2010 07:44:33 +0000 (09:44 +0200)]
re PR fortran/43696 ([OOP] Bogus error: Passed-object dummy argument must not be POINTER)
2010-05-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/43696
* resolve.c (resolve_fl_derived): Some fixes for class variables.
* symbol.c (gfc_build_class_symbol): Add separate class container for
class pointers.
2010-05-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/43696
* gfortran.dg/class_17.f03: New.
From-SVN: r159056
Mike Stump [Wed, 5 May 2010 03:08:26 +0000 (03:08 +0000)]
re PR objc/35165 (Massive failures of objc on i686-apple-darwin9)
PR objc/35165
* encode-8.mm: Restore running of testcase, skip for gnu-runtime.
From-SVN: r159055
GCC Administrator [Wed, 5 May 2010 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r159054
Neil Vachharajani [Tue, 4 May 2010 23:45:58 +0000 (23:45 +0000)]
Sanitize the behavior of -Wcoverage-mismatch.
2010-05-04 Neil Vachharajani <nvachhar@google.com>
* doc/invoke.texi (-Wcoverage-mismatch): Updated documentation as
per new semantics.
* opts.c (decode_options): Enable -Werror=coverage-mismatch.
* coverage.c (get_coverage_counts): Always emit a warning. Adjust
conditions for printing notes.
* common.opt (-Wcoverage-mismatch): Allow negative, default to
true, update documentation.
* Makefile.in (coverage.o): Add dependence on DIAGNOSTIC_H and intl.h.
* testsuite/gcc.dg/tree-prof/wcoverage-mismatch.c: Adjusted.
From-SVN: r159050
H.J. Lu [Tue, 4 May 2010 21:15:35 +0000 (21:15 +0000)]
Add a testcase for PR target/43668.
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR target/43668
* gcc.target/i386/pr43668.c: New.
From-SVN: r159046
Paolo Carlini [Tue, 4 May 2010 19:22:26 +0000 (19:22 +0000)]
re PR c++/43028 ([C++0x] internal compiler error in maybe_adjust_types_for_deduction)
/cp
2010-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/43028
* pt.c (unify): Check each elt for error_mark_node.
/testsuite
2010-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/43028
* g++.dg/cpp0x/initlist31.C: New.
From-SVN: r159045
Jakub Jelinek [Tue, 4 May 2010 19:08:37 +0000 (21:08 +0200)]
re PR c/43981 (-Wunused-but-set-variable does not consider array sizing use of a variable)
PR c/43981
* c-parser.c (c_parser_direct_declarator_inner): Call mark_exp_read
on dimen.
* gcc.dg/Wunused-var-8.c: New test.
From-SVN: r159044
Jason Merrill [Tue, 4 May 2010 19:01:13 +0000 (15:01 -0400)]
re PR c++/38064 ([c++0x] operator== doesn't work for enum classes)
PR c++/38064
* typeck.c (cp_build_binary_op): Allow enums for <> as well.
From-SVN: r159042
Ralf Wildenhues [Tue, 4 May 2010 18:58:11 +0000 (18:58 +0000)]
no-dist in non-imported automake dirs.
libgfortran/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* configure: Regenerate.
* Makefile.in: Regenerate.
libgomp/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* configure: Regenerate.
* Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* Makefile.in: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/libltdl/:
PR other/43620
* Makefile.am (AUTOMAKE_OPTIONS): Add no-dist.
* Makefile.in: Regenerate.
libmudflap/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libssp/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* Makefile.in: Regenerate.
libstdc++-v3/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* configure: Regenerate.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
lto-plugin/:
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* Makefile.in: Regenerate.
From-SVN: r159041
H.J. Lu [Tue, 4 May 2010 18:51:29 +0000 (18:51 +0000)]
Add clobber CC register to sse_prologue_save patterns.
gcc/
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR target/43799
* config/i386/i386.md (sse_prologue_save): Add clobber CC
register.
(*sse_prologue_save_insn1): Likewise.
(SSE prologue save splitter): Likewise.
gcc/testsuite/
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR target/43799
* gcc.target/i386/pr43799.c: New.
From-SVN: r159040
Eric Botcazou [Tue, 4 May 2010 17:47:52 +0000 (17:47 +0000)]
tree.c (free_lang_data_in_one_sizepos): New inline function.
* tree.c (free_lang_data_in_one_sizepos): New inline function.
(free_lang_data_in_type): Call it on TYPE_{MIN|MAX}_VALUE of numerical
types. Call it on TYPE_SIZE and TYPE_SIZE_UNIT of all types.
(free_lang_data_in_decl): Call it on DECL_SIZE and DECL_SIZE_UNIT of
all decls. Call it on DECL_FIELD_OFFSET of fields.
(find_decls_types_r): Follow DECL_VALUE_EXPR.
(iterative_hash_expr) <PLACEHOLDER_EXPR>: New case.
From-SVN: r159039
Martin Jambor [Tue, 4 May 2010 17:34:01 +0000 (19:34 +0200)]
tree-sra.c (build_access_from_expr_1): The first parameter type changed to simple tree.
2010-05-04 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (build_access_from_expr_1): The first parameter type
changed to simple tree.
(build_access_from_expr): Likewise, gsi parameter was eliminated.
(scan_assign_result): Renamed to assignment_mod_result, enum elements
renamed as well.
(build_accesses_from_assign): Removed all parameters except for a
simple gimple statement. Now returns a simple bool.
(scan_function): All non-analysis parts moved to separate functions
sra_modify_function_body and ipa_sra_modify_function_body. Removed all
parameters and updated both callers.
(sra_modify_expr): Removed parameter data.
(sra_modify_function_body): New function.
(perform_intra_sra): Call sra_modify_function_body to modify the
function body.
(replace_removed_params_ssa_names): Parameter data changed into
adjustments vector.
(sra_ipa_modify_expr): Likewise. Also removed unused parameter gsi and
changed the parameter dont_convert to convert with the opposite
meaning.
(sra_ipa_modify_assign): Parameter data changed into adjustments
vector, return value changed to bool.
(ipa_sra_modify_function_body): New function.
(sra_ipa_reset_debug_stmts): Updated a comment.
(modify_function): Use ipa_sra_modify_function_body to modify function
body.
From-SVN: r159038
Jan Hubicka [Tue, 4 May 2010 16:45:58 +0000 (16:45 +0000)]
* Makefile.in (cgraphbuild.o): Add dependency on ipa-utils.h
From-SVN: r159037
H.J. Lu [Tue, 4 May 2010 15:47:25 +0000 (15:47 +0000)]
Handle the same VALUE for true dependence.
gcc/
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/43671
* alias.c (true_dependence): Handle the same VALUE in x and mem.
(canon_true_dependence): Likewise.
(write_dependence_p): Likewise.
gcc/testsuite/
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/43671
* gcc.target/i386/pr43671.c: New.
From-SVN: r159033
Jan Hubicka [Tue, 4 May 2010 15:42:15 +0000 (17:42 +0200)]
Makefile.in (cgraphbuild.o): Add dependency on ipa-utils.h
* Makefile.in (cgraphbuild.o): Add dependency on ipa-utils.h
* cgraphbuild.c: Include ipa-utils.h
(record_reference_ctx): New struct.
(record_reference): Simplify to work on initializers; not statements.
(mark_address, mark_load, mark_store): New.
(build_cgraph_edges): Simplify using walk_stmt_load_store_addr_ops;
walk PHI nodes too.
(record_references_in_initializer): Update use of record_reference.
(rebuild_cgraph_edges): Simplify using walk_stmt_load_store_addr_ops;
walk PHI nodes too.
From-SVN: r159032
Jan Hubicka [Tue, 4 May 2010 15:17:10 +0000 (17:17 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Do not remove edges; node will be removed anyway.
* lto-symtab.c (lto_cgraph_replace_node): Do not remove edges;
node will be removed anyway.
(lto_varpool_replace_node): Allow also unanalyzed nodes;
relink aliases of node into prevailing node.
* varpool.c (varpool_remove_node): Remove aliases properly;
when removing node, remove all its aliases too; remove DECL_INITIAL
of removed node; ggc_free the varpool node.
From-SVN: r159031
Paolo Carlini [Tue, 4 May 2010 14:17:52 +0000 (14:17 +0000)]
re PR c++/43705 (ICE: SIGSEGV with template specialization in non-namespace scope)
/cp
2010-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/43705
* call.c (build_new_method_call): Return error_mark_node if fns is
NULL_TREE.
/testsuite
2010-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/43705
* g++.dg/template/crash95.C: New.
From-SVN: r159029
H.J. Lu [Tue, 4 May 2010 14:11:32 +0000 (14:11 +0000)]
Add a testcase for PR debug/43508.
2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
PR debug/43508
* gcc.target/i386/pr43508.c: New.
From-SVN: r159027
Richard Guenther [Tue, 4 May 2010 13:12:02 +0000 (13:12 +0000)]
re PR tree-optimization/43879 (-fipa-pta causes various miscompilations)
2010-05-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43879
* tree-ssa-structalias.c (alias_get_name): Use
DECL_ASSEMBLER_NAME if available.
(create_function_info_for): Return the varinfo node.
(ipa_pta_execute): Associate same-body aliases and extra names
with their origin nodes varinfo. Dump DECL_ASSEMBLER_NAME.
* g++.dg/torture/pr43879-1_0.C: New testcase.
* g++.dg/torture/pr43879-1_1.C: Likewise.
From-SVN: r159026
Kaz Kojima [Tue, 4 May 2010 12:43:13 +0000 (12:43 +0000)]
sh.c (sh_small_register_classes_for_mode_p): Remove static.
* config/sh/sh.c (sh_small_register_classes_for_mode_p): Remove
static.
From-SVN: r159024
Mikael Pettersson [Tue, 4 May 2010 10:49:41 +0000 (12:49 +0200)]
re PR bootstrap/43964 (4.6-
20100501 (r158965) bootstrap failure on ARM, ira-color.c triggers -Werror)
PR bootstrap/43964
* ira-color.c (assign_hard_reg): Declare rclass and add_cost
only if HONOR_REG_ALLOC_ORDER is not defined.
From-SVN: r159022
Richard Guenther [Tue, 4 May 2010 09:53:28 +0000 (09:53 +0000)]
re PR tree-optimization/43949 (bogus warning: array subscript is above array bounds)
2010-05-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43949
* tree-vrp.c (extract_range_from_binary_expr): Only handle
TRUNC_MOD_EXPR.
From-SVN: r159020
Dodji Seketeli [Tue, 4 May 2010 09:49:45 +0000 (09:49 +0000)]
re PR c++/43953 (ICE: dependent_type_p, at cp/pt.c:17404)
Fix PR c++/43953
gcc/cp/ChangeLog:
PR c++/43953
* pt.c (most_specialized_class): Pretend we are processing
a template decl during the call to coerce_template_parms.
gcc/testsuite/ChangeLog:
PR c++/43953
* g++.dg/other/crash-12.C: New test.
From-SVN: r159019
Jason Merrill [Tue, 4 May 2010 04:59:27 +0000 (00:59 -0400)]
add c++/43145 tag to changelog and testcase
From-SVN: r159017
GCC Administrator [Tue, 4 May 2010 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159015
H.J. Lu [Tue, 4 May 2010 00:04:52 +0000 (00:04 +0000)]
Add a space. Updated.
2010-05-03 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/cdce3.C: Add a space. Updated.
From-SVN: r159010
Jack Howarth [Mon, 3 May 2010 22:37:50 +0000 (22:37 +0000)]
re PR java/43839 (libjava incorrectly uses -liconv in testsuite, jni.exp when using --with-libiconv-prefix)
PR 43839
* testsuite/Makefile.am: Override automake for site.exp creation
and add entry to set libiconv.
* testsuite/Makefile.in: Regenerate.
* testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation):
Add new global variable libiconv to handle alternative libiconv
locations.
From-SVN: r159009
Jason Merrill [Mon, 3 May 2010 21:16:40 +0000 (17:16 -0400)]
re PR c++/43680 ([DR 1022] G++ is too aggressive in optimizing away bounds checking with enums)
PR c++/43680
gcc:
* c.opt (-fstrict-enums): New.
* doc/invoke.texi (C++ Dialect Options): Document -fstrict-enums.
gcc/cp:
* decl.c (finish_enum): Use the TYPE_MIN_VALUE and TYPE_MAX_VALUE
from the selected underlying type unless -fstrict-enums. Set
ENUM_UNDERLYING_TYPE to have the restricted range.
* cvt.c (type_promotes_to): Use ENUM_UNDERLYING_TYPE.
* class.c (check_bitfield_decl): Likewise.
From-SVN: r159006