Paolo Carlini [Sun, 13 Jul 2014 13:24:18 +0000 (13:24 +0000)]
re PR c++/60967 (ICE with range for in template function with C++11 and cilkplus)
2014-07-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60967
* g++.dg/cilk-plus/pr60967.C: New.
From-SVN: r212493
Ulrich Drepper [Sun, 13 Jul 2014 11:07:44 +0000 (11:07 +0000)]
random: Add uniform_on_sphere_distribution definition.
2014-07-12 Ulrich Drepper <drepper@gmail.com>
* include/ext/random: Add uniform_on_sphere_distribution definition.
* include/ext/random.tcc: Add out-of-band member function definitions
for uniform_on_sphere_distribution.
* testsuite/ext/random/uniform_on_sphere_distribution/
cons/default.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/equal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/inequal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/serialize.cc: New file.
From-SVN: r212492
Tobias Burnus [Sun, 13 Jul 2014 08:10:40 +0000 (10:10 +0200)]
coarray_atomic_4.f90: Avoid using a kind=16 integer.
2014-07-13 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_atomic_4.f90: Avoid using a kind=16
integer.
From-SVN: r212491
Tobias Burnus [Sun, 13 Jul 2014 06:40:16 +0000 (08:40 +0200)]
pr34020.f90: Make compile with TS 18508/Fortran 2015
2014-07-13 Tobias Burnus <burnus@net-b.de>
* testsuite/libgomp.fortran/pr34020.f90: Make compile
with TS 18508/Fortran 2015
From-SVN: r212490
GCC Administrator [Sun, 13 Jul 2014 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r212489
Paul Thomas [Sat, 12 Jul 2014 19:09:11 +0000 (19:09 +0000)]
re PR fortran/61780 (Wrong code when shifting elements of a multidimensional array)
2014-07-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61780
* dependency.c (gfc_dep_resolver): Index the 'reverse' array so
that elements are skipped. This then correctly aligns 'reverse'
with the scalarizer loops.
2014-07-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61780
* gfortran.dg/dependency_44.f90 : New test
From-SVN: r212486
Tobias Burnus [Sat, 12 Jul 2014 19:05:52 +0000 (21:05 +0200)]
re PR fortran/61628 ([MinGW)Write of medium sized or larger matrix fails without error message.)
2014-07-12 Tobias Burnus <burnus@net-b.de>
PR fortran/61628
* trans-types.c (gfc_init_types): Fix data-type bug
with gfc_max_array_element_size.
From-SVN: r212485
Tobias Burnus [Sat, 12 Jul 2014 19:02:57 +0000 (21:02 +0200)]
libgfortran.h (libcaf_atomic_codes): Add.
2014-07-12 Tobias Burnus <burnus@net-b.de>
gcc/fortran/
* libgfortran.h (libcaf_atomic_codes): Add.
* trans-decl.c (gfor_fndecl_caf_atomic_def,
gfor_fndecl_caf_atomic_ref, gfor_fndecl_caf_atomic_cas,
gfor_fndecl_caf_atomic_op): New variables.
(gfc_build_builtin_function_decls): Initialize them.
* trans.h (gfor_fndecl_caf_atomic_def,
gfor_fndecl_caf_atomic_ref, gfor_fndecl_caf_atomic_cas,
gfor_fndecl_caf_atomic_op): New variables.
* trans-intrinsic.c (conv_intrinsic_atomic_op,
conv_intrinsic_atomic_ref, conv_intrinsic_atomic_cas):
Add library calls with -fcoarray=lib.
libgfortran/
* caf/libcaf.h (_gfortran_caf_atomic_define,
_gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
_gfortran_caf_atomic_cas): New prototypes.
* caf/single.c (_gfortran_caf_atomic_define,
_gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
_gfortran_caf_atomic_cas): New functions.
From-SVN: r212484
Tobias Burnus [Sat, 12 Jul 2014 19:00:47 +0000 (21:00 +0200)]
check.c (gfc_check_atomic): Update for STAT=.
gcc/fortran/
2014-07-12 Tobias Burnus <burnus@net-b.de>
* check.c (gfc_check_atomic): Update for STAT=.
(gfc_check_atomic_def, gfc_check_atomic_ref): Update call.
(gfc_check_atomic_op, gfc_check_atomic_cas,
gfc_check_atomic_fetch_op): New.
* gfortran.h (gfc_isym_id): GFC_ISYM_ATOMIC_CAS,
* GFC_ISYM_ATOMIC_ADD,
GFC_ISYM_ATOMIC_AND, GFC_ISYM_ATOMIC_OR, GFC_ISYM_ATOMIC_XOR,
GFC_ISYM_ATOMIC_FETCH_ADD, GFC_ISYM_ATOMIC_FETCH_AND,
GFC_ISYM_ATOMIC_FETCH_OR and GFC_ISYM_ATOMIC_FETCH_XOR.
* intrinsic.c (add_subroutines): Handle them.
* intrinsic.texi: Add documentation for them.
(ATOMIC_REF, ATOMIC_DEFINE): Add STAT=.
(ISO_FORTRAN_ENV): Add STAT_FAILED_IMAGE.
* intrinsic.h (gfc_check_atomic_op, gfc_check_atomic_cas,
gfc_check_atomic_fetch_op): New
prototypes.
* libgfortran.h (libgfortran_stat_codes): Add
* GFC_STAT_FAILED_IMAGE.
* iso-fortran-env.def: Add it.
* trans-intrinsic.c (conv_intrinsic_atomic_op): Renamed from
conv_intrinsic_atomic_ref; handle more atomics.
(conv_intrinsic_atomic_def): Handle STAT=.
(conv_intrinsic_atomic_cas): New.
(gfc_conv_intrinsic_subroutine): Handle new atomics.
gcc/testsuite/
2014-07-12 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_atomic_1.f90: Update dg-error.
* gfortran.dg/coarray_atomic_2.f90: New.
* gfortran.dg/coarray_atomic_3.f90: New.
* gfortran.dg/coarray_atomic_4.f90: New.
* gfortran.dg/coarray/atomic_2.f90: New.
From-SVN: r212483
Jason Merrill [Sat, 12 Jul 2014 16:36:25 +0000 (12:36 -0400)]
re PR c++/22434 (ICE in simplify_{,gen_}subreg)
PR c++/22434
PR c++/61288
* call.c (build_conditional_expr_1): Avoid reading freed memory.
From-SVN: r212482
Jan Hubicka [Sat, 12 Jul 2014 15:34:45 +0000 (17:34 +0200)]
tree.c (type_in_anonymous_namespace_p): Ignore TREE_PUBLIC on builtin types.
* tree.c (type_in_anonymous_namespace_p): Ignore TREE_PUBLIC
on builtin types.
* ipa-devirt.c: Include stor-layout.h and intl.h
(odr_subtypes_equivalent_p): New function.
(warn_odr): New function.
(warn_type_mismatch): New function.
(odr_types_equivalent_p): New function.
(add_type_duplicate): Use it.
* common.opt (Wodr): New flag.
* doc/invoke.texi (Wodr): Document new warning.
From-SVN: r212481
Paolo Carlini [Sat, 12 Jul 2014 15:27:12 +0000 (15:27 +0000)]
2014-07-12 Paolo Carlini <paolo.carlini@oracle.com>
* Minor ChangeLog adjustment.
From-SVN: r212480
Jan Hubicka [Sat, 12 Jul 2014 09:35:00 +0000 (11:35 +0200)]
lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO timevar
* lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO
timevar
(materialize_cgraph): Do not push GIMPLE_IN timevar.
* timevar.def (TV_IPA_LTO_DECL_INIT_IO): Remove.
(TV_IPA_LTO_CTORS_IN, TV_IPA_LTO_CTORS_OUT): New timevar.
* cgraph.c (cgraph_get_body): Push GIMPLE_IN timevar.
(varpool_get_constructor): Push CTORS_IN timevar.
* lto-streamer-out.c (lto_output): Push TV_IPA_LTO_CTORS_OUT
timevar.
From-SVN: r212479
Uros Bizjak [Sat, 12 Jul 2014 09:09:51 +0000 (11:09 +0200)]
i386-builtin-types.def: Add USHORT_FTYPE_VOID.
* config/i386/i386-builtin-types.def: Add USHORT_FTYPE_VOID.
Remove VOID_FTYPE_PUSHORT.
* config/i386/i386.c (bdesc_special_args) <__builtin_ia32_fnstsw>:
Change code to USHORT_FTYPE_VOID.
(ix86_expand_special_args_builtin): Handle USHORT_FTYPE_VOID.
(ix86_expand_builtin): Remove IX86_BUILTIN_FNSTSW handling.
(ix86_atomic_assign_expand_fenv): Update for
__builtin_ia32_fnstsw changes.
* config/i386/i386.md (x86_fnstsw_1): Set length unconditionally to 2.
(fnstsw): Change operand 0 to nonimmediate operand.
From-SVN: r212478
Edward Smith-Rowland [Sat, 12 Jul 2014 01:41:30 +0000 (01:41 +0000)]
PR c++/57644 - [C++1y] Cannot bind bitfield to lvalue reference
2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/57644 - [C++1y] Cannot bind bitfield to lvalue reference
g++.dg/cpp0x/pr57644.C: New.
From-SVN: r212477
Edward Smith-Rowland [Sat, 12 Jul 2014 01:32:20 +0000 (01:32 +0000)]
Add the logistic_distribution as an extension.
2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
Add the logistic_distribution as an extension.
* include/ext/random: Add the logistic_distribution.
* include/ext/random.tcc: Add the logistic_distribution.
* testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
* testsuite/ext/random/logistic_distribution/cons/default.cc: New.
* testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
New.
* testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
* testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
* testsuite/ext/random/logistic_distribution/operators/serialize.cc:
New.
From-SVN: r212476
GCC Administrator [Sat, 12 Jul 2014 00:17:02 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r212475
Ian Lance Taylor [Sat, 12 Jul 2014 00:01:09 +0000 (00:01 +0000)]
runtime: Merge master revision 19185.
This revision renames several files in the runtime directory
from .c to .goc.
From-SVN: r212472
Paolo Carlini [Fri, 11 Jul 2014 23:32:14 +0000 (23:32 +0000)]
2014-07-11 Paolo Carlini <paolo.carlini@oracle.com>
* Minor ChangeLog adjustment.
From-SVN: r212471
Paolo Carlini [Fri, 11 Jul 2014 22:25:16 +0000 (22:25 +0000)]
2014-07-11 Paolo Carlini <paolo.carlini@oracle.com>
* Minor ChangeLog adjustments.
From-SVN: r212470
Paolo Carlini [Fri, 11 Jul 2014 21:53:59 +0000 (21:53 +0000)]
re PR c++/53159 (Missing narrowing check)
/cp
2014-07-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53159
* call.c (build_user_type_conversion_1): Copy LOOKUP_NO_NARROWING
into convflags.
* decl.c (check_initializer): Don't call check_narrowing here,
set LOOKUP_NO_NARROWING.
* typeck2.c (digest_init_r): Likewise.
/testsuite
2014-07-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53159
* g++.dg/cpp0x/Wnarrowing1.C: New.
From-SVN: r212469
Jason Merrill [Fri, 11 Jul 2014 21:10:49 +0000 (17:10 -0400)]
* doc/invoke.texi: Document -fno-use-all-virtuals.
From-SVN: r212468
Jan Hubicka [Fri, 11 Jul 2014 17:43:44 +0000 (19:43 +0200)]
vapool.c: Include tree-ssa-alias.h, gimple.h and lto-streamer.h
* vapool.c: Include tree-ssa-alias.h, gimple.h and lto-streamer.h
(varpool_get_constructor): New function.
(varpool_ctor_useable_for_folding_p): Break out from ...
(ctor_for_folding): ... here; use varpool_get_constructor.
(varpool_assemble_decl): Likewise.
* lto-streamer.h (struct output_block): Turn cgraph_node
to symbol filed.
(lto_input_variable_constructor): Declare.
* ipa-visibility.c (function_and_variable_visibility): Use
varpool_get_constructor.
* cgraph.h (varpool_get_constructor): Declare.
(varpool_ctor_useable_for_folding_p): New function.
* lto-streamer-out.c (get_symbol_initial_value): Take encoder
parameter; return error_mark_node for non-trivial constructors.
(lto_write_tree_1, DFS_write_tree): UPdate use of
get_symbol_initial_value.
(output_function): Update initialization of symbol.
(output_constructor): New function.
(copy_function): Rename to ..
(copy_function_or_variable): ... this one; handle vars too.
(lto_output): Output variable sections.
* lto-streamer-in.c (input_constructor): New function.
(lto_read_body): Rename from ...
(lto_read_body_or_constructor): ... this one; handle vars
too.
(lto_input_variable_constructor): New function.
* ipa-prop.c (ipa_prop_write_jump_functions,
ipa_prop_write_all_agg_replacement): Update.
* lto-cgraph.c (compute_ltrans_boundary): Use it.
(output_cgraph_opt_summary): Set symbol to NULL.
* lto-partition.c (add_references_to_partition): Use
varpool_ctor_useable_for_folding_p.
* lto.c (lto_read_in_decl_state): Update sanity check.
From-SVN: r212467
Jan Hubicka [Fri, 11 Jul 2014 17:36:35 +0000 (19:36 +0200)]
ipa-prop.c (ipa_binfo_from_known_type_jfunc): In LTO do not walk non-polymorphic types.
* ipa-prop.c (ipa_binfo_from_known_type_jfunc): In LTO do not walk
non-polymorphic types.
* ipa-cp.c (ipa_get_jf_ancestor_result): Likewise.
* ipa-devirt.c (types_same_for_odr): Do not explode when one
of types is not polymorphic.
From-SVN: r212466
Vladimir Makarov [Fri, 11 Jul 2014 17:19:53 +0000 (17:19 +0000)]
lra-constraints.c (remove_inheritance_pseudos): Process destination pseudo too.
2014-07-11 Vladimir Makarov <vmakarov@redhat.com>
* lra-constraints.c (remove_inheritance_pseudos): Process
destination pseudo too.
From-SVN: r212464
Rong Xu [Fri, 11 Jul 2014 17:02:18 +0000 (17:02 +0000)]
libgcov-util.c (gcov_max_filename): Fix declartion.
2014-07-11 Rong Xu <xur@google.com>
* libgcov-util.c (gcov_max_filename): Fix declartion.
From-SVN: r212463
Rong Xu [Fri, 11 Jul 2014 16:59:30 +0000 (16:59 +0000)]
gcov-tool.c (gcov_output_files): Fix build error introduced in commit r212448.
2014-07-11 Rong Xu <xur@google.com>
* gcov-tool.c (gcov_output_files): Fix build error introduced in
commit r212448.
From-SVN: r212462
Pitchumani Sivanupandi [Fri, 11 Jul 2014 16:22:10 +0000 (16:22 +0000)]
avr-arch.h (avr_mcu_t): Add text section start attribute.
* config/avr/avr-arch.h (avr_mcu_t): Add text section start attribute.
* config/avr/avr-devices.c (AVR_MCU): Same.
(avr_mcu_types): add text start value to end of device list.
* config/avr/avr-mcus.def: Add text section start for all devices.
(ata5782): Add new avr5 device.
(ata5831): Same.
* config/avr/avr-tables.opt: Regenerate.
* config/avr/avr.h: Add declaration for text section start handler.
(EXTRA_SPEC_FUNCTIONS): Add text section start handler to SPEC function=
s.
(LINK_SPEC): Include text section start handler to linker spec.
* config/avr/driver-avr.c (avr_device_to_text_start): New function to
pass -Ttext option to linker if the text section start for the device i=
s
not zero.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.
From-SVN: r212461
David Edelsohn [Fri, 11 Jul 2014 15:47:48 +0000 (15:47 +0000)]
aix51.h (LINK_SPEC): Remove -bnodelcsect.
* config/rs6000/aix51.h (LINK_SPEC): Remove -bnodelcsect.
* config/rs6000/aix52.h (LINK_SPEC): Same.
* config/rs6000/aix53.h (LINK_SPEC): Same.
* config/rs6000/aix61.h (LINK_SPEC): Same.
* config/rs6000/xcoff.h (MAKE_DECL_ONE_ONLY): Define.
From-SVN: r212460
Samuel Bronson [Fri, 11 Jul 2014 15:32:29 +0000 (15:32 +0000)]
gdb-test.exp (gdb-test): Turn off GDB's auto-load, list loaded libs.
2014-07-11 Samuel Bronson <naesten@gmail.com>
* testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
list loaded libs.
From-SVN: r212459
Samuel Bronson [Fri, 11 Jul 2014 15:32:14 +0000 (15:32 +0000)]
libstdc++.exp (libstdc++_init): Set $GCC_COLORS="" instead of insisting that GCC understand...
2014-07-11 Samuel Bronson <naesten@gmail.com>
* testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
instead of insisting that GCC understand -fdiagnostics-color=never
From-SVN: r212458
Andreas Schwab [Fri, 11 Jul 2014 14:49:27 +0000 (14:49 +0000)]
re PR preprocessor/61389 (libcpp diagnostics shouldn't talk about ISO C99 for C++ input files)
PR preprocessor/61389
* gcc.dg/cpp/macsyntx.c: Update expected warnings.
* gcc.dg/cpp/sysmac1.c: Likewise.
From-SVN: r212457
Roman Gareev [Fri, 11 Jul 2014 14:18:44 +0000 (14:18 +0000)]
graphite-isl-ast-to-gimple.c (gmp_cst_to_tree): New function.
gcc/
* graphite-isl-ast-to-gimple.c (gmp_cst_to_tree):
New function.
(graphite_verify): New function.
(ivs_params_clear): New function.
(gcc_expression_from_isl_ast_expr_id): New function.
(gcc_expression_from_isl_expr_int): New function.
(binary_op_to_tree): New function.
(ternary_op_to_tree): New function.
(unary_op_to_tree): New function.
(nary_op_to_tree): New function.
(gcc_expression_from_isl_expr_op): New function.
(gcc_expression_from_isl_expression): New function.
(graphite_create_new_loop): New function.
(translate_isl_ast_for_loop): New function.
(get_upper_bound): New function.
(graphite_create_new_loop_guard): New function.
(translate_isl_ast_node_for): New function.
(translate_isl_ast): New function.
(add_parameters_to_ivs_params): New function.
(scop_to_isl_ast): New parameter ip.
(graphite_regenerate_ast_isl): Add generation of GIMPLE code.
From-SVN: r212455
Jan Hubicka [Fri, 11 Jul 2014 13:44:49 +0000 (15:44 +0200)]
predicates.md (call expander): Update for DECL_SECTION_NAME being string.
* config/xtensa/predicates.md (call expander): Update for
DECL_SECTION_NAME being string.
From-SVN: r212454
Samuel Bronson [Fri, 11 Jul 2014 13:43:07 +0000 (13:43 +0000)]
re PR libstdc++/58962 (Pretty printers use obsolete Python syntax)
2014-07-11 Samuel Bronson <naesten@gmail.com>
Matthias Klose <doko@ubuntu.com>
PR libstdc++/58962
* python/libstdcxx/v6/printers.py: Port to Python 2+3
(imap): New compat function.
(izip): Likewise.
(Iterator): New mixin to allow writing iterators in Python 3 style
regardless of which version we're running on.
[Python3] (long) New compat alias for "int".
* testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
Co-Authored-By: Matthias Klose <doko@ubuntu.com>
From-SVN: r212453
Richard Biener [Fri, 11 Jul 2014 13:42:55 +0000 (13:42 +0000)]
re PR middle-end/61473 (register sized memmove not inlined)
2014-07-11 Richard Biener <rguenther@suse.de>
PR middle-end/61473
* builtins.c (fold_builtin_memory_op): Inline memory moves
that can be implemented with a single load followed by a
single store.
(c_strlen): Only warn when only_value is not 2.
* gcc.dg/memmove-4.c: New testcase.
* gcc.dg/strlenopt-8.c: XFAIL.
* gfortran.dg/coarray_lib_realloc_1.f90: Adjust.
From-SVN: r212452
Evgeny Stupachenko [Fri, 11 Jul 2014 11:27:42 +0000 (11:27 +0000)]
gcc/
* gcc/config/i386/i386.c.orig
From-SVN: r212451
Marat Zakirov [Fri, 11 Jul 2014 09:02:39 +0000 (09:02 +0000)]
re PR target/61561 (arm gcc internal error)
gcc/
2014-07-11 Marat Zakirov <m.zakirov@samsung.com>
PR target/61561
* config/arm/arm.md (*movhi_insn_arch4): Handle stack pointer.
(*movhi_bytes): Likewise.
(*arm_movqi_insn): Likewise.
gcc/testsuite/
2014-07-11 Marat Zakirov <m.zakirov@samsung.com>
PR target/61561
* gcc.dg/pr61561.c: New test.
From-SVN: r212450
Uros Bizjak [Fri, 11 Jul 2014 07:42:50 +0000 (09:42 +0200)]
re PR target/56858 (alpha looks for NOTE_INSN_EH_REGION notes that cannot exist)
PR target/56858
* config/alpha/alpha.c: Include tree-pass.h, context.h
and pass_manager.h.
(pass_data_handle_trap_shadows): New pass.
(pass_handle_trap_shadows::gate): New pass gate function.
(make_pass_handle_trap_shadows): New function.
(rest_of_handle_trap_shadows): Ditto.
(alpha_align_insns_1): Rename from alpha_align_insns.
(pass_data_align_insns): New pass.
(pass_align_insns::gate): New pass gate function.
(make_pass_aling_insns): New function.
(rest_of_align_insns): Ditto.
(alpha_align_insns): Ditto.
(alpha_option_override): Declare handle_trap_shadows info
and align_insns_info. Register handle_trap_shadows and align_insns
passes here.
(alpha_reorg): Do not call alpha_trap_shadows and
alpha_align_insn from here.
(alpha_pad_function_end): Do not skip BARRIERs.
From-SVN: r212449
Rong Xu [Fri, 11 Jul 2014 05:48:07 +0000 (05:48 +0000)]
Add gcov-tool: an offline gcda profile processing tool Support.
2014-07-10 Rong Xu <xur@google.com>
Add gcov-tool: an offline gcda profile processing tool
Support.
* gcc/gcov-io.c (gcov_position): Make avaialble to gcov-tool.
(gcov_is_error): Ditto.
(gcov_read_string): Ditto.
(gcov_read_sync): Ditto.
* gcc/gcov-io.h: Move counter defines to gcov-counter.def.
* gcc/gcov-dump.c (tag_counters): Use gcov-counter.def.
* gcc/coverage.c: Ditto.
* gcc/gcov-tool.c: Offline gcda profile processing tool.
(unlink_gcda_file): Remove one gcda file.
(unlink_profile_dir): Remove gcda files from the profile path.
(gcov_output_files): Output gcda files to an output dir.
(profile_merge): Merge two profiles in directory.
(print_merge_usage_message): Print merge usage.
(merge_usage): Print merge usage and exit.
(do_merge): Driver for profile merge sub-command.
(profile_rewrite): Rewrite profile.
(print_rewrite_usage_message): Print rewrite usage.
(rewrite_usage): Print rewrite usage and exit.
(do_rewrite): Driver for profile rewrite sub-command.
(print_usage): Print gcov-info usage and exit.
(print_version): Print gcov-info version.
(process_args): Process arguments.
(main): Main routine for gcov-tool.
* gcc/Makefile.in: Build and install gcov-tool.
* gcc/gcov-counter.def: New file split from gcov-io.h.
* libgcc/libgcov-driver.c (gcov_max_filename): Make available
to gcov-tool.
* libgcc/libgcov-merge.c (__gcov_merge_add): Replace
gcov_read_counter() with a Macro.
(__gcov_merge_ior): Ditto.
(__gcov_merge_time_profile): Ditto.
(__gcov_merge_single): Ditto.
(__gcov_merge_delta): Ditto.
* libgcc/libgcov-util.c (void gcov_set_verbose): Set the verbose flag
in the utility functions.
(set_fn_ctrs): Utility function for reading gcda files to in-memory
gcov_list object link lists.
(tag_function): Ditto.
(tag_blocks): Ditto.
(tag_arcs): Ditto.
(tag_lines): Ditto.
(tag_counters): Ditto.
(tag_summary): Ditto.
(read_gcda_finalize): Ditto.
(read_gcda_file): Ditto.
(ftw_read_file): Ditto.
(read_profile_dir_init): Ditto.
(gcov_read_profile_dir): Ditto.
(gcov_read_counter_mem): Ditto.
(gcov_get_merge_weight): Ditto.
(merge_wrapper): A wrapper function that calls merging handler.
(gcov_merge): Merge two gcov_info objects with weights.
(find_match_gcov_info): Find the matched gcov_info in the list.
(gcov_profile_merge): Merge two gcov_info object lists.
(__gcov_add_counter_op): Process edge profile counter values.
(__gcov_ior_counter_op): Process IOR profile counter values.
(__gcov_delta_counter_op): Process delta profile counter values.
(__gcov_single_counter_op): Process single profile counter values.
(fp_scale): Callback function for float-point scaling.
(int_scale): Callback function for integer fraction scaling.
(gcov_profile_scale): Scaling profile counters.
(gcov_profile_normalize): Normalize profile counters.
* libgcc/libgcov.h: Add headers and functions for gcov-tool use.
(gcov_get_counter): New.
(gcov_get_counter_target): Ditto.
(struct gcov_info): Make the functions field mutable in gcov-tool
compilation.
* gcc/doc/gcc.texi: Include gcov-tool.texi.
* gcc/doc/gcov-tool.texi: Document for gcov-tool.
From-SVN: r212448
Ian Lance Taylor [Fri, 11 Jul 2014 00:39:03 +0000 (00:39 +0000)]
runtime: Rename iface.goc to go-iface.goc.
Rename in order to avoid confusion with the new
runtime/iface.goc file in the Go library master sources.
From-SVN: r212447
Ian Lance Taylor [Fri, 11 Jul 2014 00:26:25 +0000 (00:26 +0000)]
runtime: Drop reflectFlags tests.
The flags were used by the reflect package in the past, but
not for a couple of years now.
From-SVN: r212446
GCC Administrator [Fri, 11 Jul 2014 00:18:26 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r212445
Edward Smith-Rowland [Thu, 10 Jul 2014 22:44:36 +0000 (22:44 +0000)]
There is a stray right paren.
Fixed as obvious.
From-SVN: r212442
Edward Smith-Rowland [Thu, 10 Jul 2014 22:26:50 +0000 (22:26 +0000)]
re PR preprocessor/61389 (libcpp diagnostics shouldn't talk about ISO C99 for C++ input files)
2014-07-10 Edward Smith-Rowland <3dw4rd@verizon.net>
Jonathan Wakely <jwakely@redhat.com>
PR CPP/61389
* macro.c (_cpp_arguments_ok, parse_params, create_iso_definition):
Warning messages mention C++11 in c++ mode and C99 in c mode.
* lex.c (lex_identifier_intern, lex_identifier): Ditto
Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r212441
Jason Merrill [Thu, 10 Jul 2014 21:48:26 +0000 (17:48 -0400)]
re PR c++/61661 (Bogus error: ‘const Outer::Foo{&Outer::Bar}’ is not a constant expression)
PR c++/61661
* semantics.c (reduced_constant_expression_p): Handle CONSTRUCTOR.
From-SVN: r212439
Jason Merrill [Thu, 10 Jul 2014 19:29:59 +0000 (15:29 -0400)]
re PR ipa/61659 (Extra undefined symbol because of devirtualization)
PR c++/61659
PR c++/61687
gcc/c-family/
* c.opt (-fuse-all-virtuals): New.
gcc/cp/
* decl2.c (mark_all_virtuals): New variable.
(maybe_emit_vtables): Check it instead of flag_devirtualize.
(cp_write_global_declarations): Set it and give helpful diagnostic
if it introduces errors.
* class.c (finish_struct_1): Check it.
* decl.c (grokdeclarator): Clear virtualp after 'virtual auto' error.
From-SVN: r212436
Jonathan Wakely [Thu, 10 Jul 2014 18:08:35 +0000 (19:08 +0100)]
any (any::_Manager_alloc::_Data): Reorder tuple members to simplify pretty printing.
* include/experimental/any (any::_Manager_alloc::_Data): Reorder
tuple members to simplify pretty printing.
(any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
construction.
* testsuite/experimental/any/cons/4.cc: New.
From-SVN: r212435
Richard Biener [Thu, 10 Jul 2014 14:43:07 +0000 (14:43 +0000)]
re PR tree-optimization/61757 (genmodes failure with enable-checking)
2014-07-10 Richard Biener <rguenther@suse.de>
PR tree-optimization/61757
* tree-ssa-dom.c (loop_depth_of_name): Restore.
(propagate_rhs_into_lhs): Revert part of last change.
From-SVN: r212433
Tom de Vries [Thu, 10 Jul 2014 14:02:26 +0000 (14:02 +0000)]
Add addressing=absolute and isa_rev=0 to mips fuse-caller-save tests
2014-07-10 Tom de Vries <tom@codesourcery.com>
* gcc.target/mips/fuse-caller-save.c: Add addressing=absolute to
dg-options.
* gcc.target/mips/fuse-caller-save-micromips.c: Same.
* gcc.target/mips/fuse-caller-save-mips16.c: Same. Add isa_rev=0 to
dg-options.
From-SVN: r212432
Richard Biener [Thu, 10 Jul 2014 12:20:32 +0000 (12:20 +0000)]
re PR c/61741 (wrong code with -fno-strict-overflow)
2014-07-10 Richard Biener <rguenther@suse.de>
PR c-family/61741
* c-c++-common/torture/pr61741.c: Use signed char.
From-SVN: r212430
Thomas Schwinge [Thu, 10 Jul 2014 12:05:27 +0000 (14:05 +0200)]
Fix --enable-checking=fold failure.
gcc/
* fold-const.c (fold_checksum_tree): Look at DECL_VINDEX only for
FUNCTION_DECLs.
From-SVN: r212428
Eric Botcazou [Thu, 10 Jul 2014 10:38:30 +0000 (10:38 +0000)]
re PR middle-end/53590 (compiler fails to generate SIMD instruction for FP division)
PR middle-end/53590
* function.c (allocate_struct_function): Revert r188667 change.
* gimple-low.c (lower_builtin_setjmp): Use properly-typed constant.
From-SVN: r212424
Francois-Xavier Coudert [Thu, 10 Jul 2014 08:45:38 +0000 (08:45 +0000)]
fpu-*.h (get_fpu_rounding_mode, [...]): Clean up, mark unreachable code as such.
* config/fpu-*.h (get_fpu_rounding_mode, set_fpu_rounding_mode,
support_fpu_rounding_mode): Clean up, mark unreachable code as such.
From-SVN: r212423
Tom G. Christensen [Thu, 10 Jul 2014 08:28:36 +0000 (08:28 +0000)]
install.texi: Remove links to defunct package providers for Solaris.
* doc/install.texi: Remove links to defunct package providers for
Solaris.
From-SVN: r212422
Yuri Rumyantsev [Thu, 10 Jul 2014 07:38:39 +0000 (07:38 +0000)]
re PR tree-optimization/61742 (wrong code at -O3 on x86_64-linux-gnu)
PR tree-optimization/61742
gcc/testsuite/
* gcc.dg/torture/pr61742.c: New test.
* gcc.gg/vect/cond-reduc-1.c: Rename it to vect-cond-reduc-1.c
* gcc.gg/vect/cond-reduc-2.c: Rename it to vect-cond-reduc-2.c
From-SVN: r212421
GCC Administrator [Thu, 10 Jul 2014 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r212420
Tom de Vries [Wed, 9 Jul 2014 23:51:22 +0000 (23:51 +0000)]
Add missing ChangeLog entries
From-SVN: r212416
Paolo Carlini [Wed, 9 Jul 2014 22:44:42 +0000 (22:44 +0000)]
re PR c++/60686 (message " only declarations of constructors can be ‘explicit’ " now conflicting with C++11)
/cp
2014-07-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60686
* decl.c (grokdeclarator): Adjust error messages about 'explicit'
outside class declaration, in friend declaration, and neither on
constructor nor conversion operator.
/testsuite
2014-07-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60686
* g++.dg/cpp0x/explicit8.C: New.
From-SVN: r212415
Jason Merrill [Wed, 9 Jul 2014 22:21:49 +0000 (18:21 -0400)]
re PR libstdc++/61728 (lost symbol FUNC:_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj@@CXXABI_1.3)
PR libstdc++/61728
* libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
* libsupc++/tinfo.h: Not here.
From-SVN: r212413
Paolo Carlini [Wed, 9 Jul 2014 21:23:06 +0000 (21:23 +0000)]
DR 1584 PR c++/57466
/cp
2014-07-09 Paolo Carlini <paolo.carlini@oracle.com>
DR 1584
PR c++/57466
* pt.c (check_cv_quals_for_unify): Implement resolution, disregard
cv-qualifiers of function types.
/testsuite
2014-07-09 Paolo Carlini <paolo.carlini@oracle.com>
DR 1584
PR c++/57466
* g++.dg/template/pr57466.C: New.
* g++.dg/cpp0x/pr57466.C: Likewise.
* g++.dg/template/unify6.C: Update.
From-SVN: r212410
Tom de Vries [Wed, 9 Jul 2014 21:03:44 +0000 (21:03 +0000)]
Enable fuse-caller-save on self-recursive functions
2014-07-09 Tom de Vries <tom@codesourcery.com>
* final.c (get_call_fndecl): Declare.
(self_recursive_call_p): New function.
(collect_fn_hard_reg_usage): Handle self-recursive function calls.
* gcc.target/i386/fuse-caller-save-rec.c: New test.
From-SVN: r212409
Francois-Xavier Coudert [Wed, 9 Jul 2014 20:32:12 +0000 (20:32 +0000)]
libgfortran.h (support_fpu_underflow_control, [...]): New prototypes.
* libgfortran.h (support_fpu_underflow_control,
get_fpu_underflow_mode, set_fpu_underflow_mode): New prototypes.
* config/fpu-*.h (support_fpu_underflow_control,
get_fpu_underflow_mode, set_fpu_underflow_mode):
New functions.
* ieee/ieee_arithmetic.F90: Support underflow control.
* gfortran.dg/ieee/underflow_1.f90: New file.
From-SVN: r212407
Jan Hubicka [Wed, 9 Jul 2014 20:00:25 +0000 (22:00 +0200)]
* ipa-devirt.c (record_node): Walk through aliases.
From-SVN: r212406
Jan Hubicka [Wed, 9 Jul 2014 19:09:50 +0000 (21:09 +0200)]
* lto-streamer-out.c (hash_scc): Avoid quadratic hashing loop.
From-SVN: r212404
Richard Biener [Wed, 9 Jul 2014 17:14:11 +0000 (17:14 +0000)]
re PR c/61741 (wrong code with -fno-strict-overflow)
2014-07-09 Richard Biener <rguenther@suse.de>
PR c-family/61741
* c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
using unsigned arithmetic if overflow does not wrap instead of
if overflow is undefined.
* c-c++-common/torture/pr61741.c: New testcase.
From-SVN: r212400
Pat Haugen [Wed, 9 Jul 2014 16:26:00 +0000 (16:26 +0000)]
* lib/target-supports.exp
(check_effective_target_logical_op_short_circuit): Add powerpc*-*-*.
From-SVN: r212398
Jan Hubicka [Wed, 9 Jul 2014 16:11:53 +0000 (18:11 +0200)]
revert: stor-layout.c (finish_builtin_struct): Copy fields into the variants.
Revert:
* stor-layout.c (finish_builtin_struct): Copy fields into the variants.
From-SVN: r212397
Jan Hubicka [Wed, 9 Jul 2014 16:06:17 +0000 (18:06 +0200)]
ipa-visibility.c (function_and_variable_visibility): Remove temporary hack disabling local aliases on AIX.
* ipa-visibility.c (function_and_variable_visibility): Remove
temporary hack disabling local aliases on AIX.
From-SVN: r212396
Jan Hubicka [Wed, 9 Jul 2014 16:03:14 +0000 (18:03 +0200)]
ipa-cp.c (devirtualization_time_bonus): Walk through aliases.
* ipa-cp.c (devirtualization_time_bonus): Walk through aliases.
* ipa-inline-analysis.c (estimate_edge_devirt_benefit): Likewise.
From-SVN: r212395
Jan Hubicka [Wed, 9 Jul 2014 15:56:40 +0000 (17:56 +0200)]
rs6000-protos.h (rs6000_xcoff_declare_object_name): Declare.
* rs6000/rs6000-protos.h (rs6000_xcoff_declare_object_name): Declare.
* rs6000/rs6000.c: Inline output of .set instruction.
(declare_alias_data): New struct.
(rs6000_declare_alias): New function.
(rs6000_xcoff_declare_function_name): Use it.
(rs6000_xcoff_declare_object_name): New function.
* config/rs6000/xcoff.h: Define ASM_DECLARE_OBJECT_NAME.
(ASM_OUTPUT_DEF): Turn to empty definition.
From-SVN: r212394
Edward Smith-Rowland [Wed, 9 Jul 2014 13:33:58 +0000 (13:33 +0000)]
PR c++/58155 - -Wliteral-suffix warns about tokens which are skipped
libcpp/
2014-07-09 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/58155 - -Wliteral-suffix warns about tokens which are skipped
by preprocessor
* lex.c (lex_raw_string ()): Do not warn about invalid suffix
if skipping. (lex_string ()): Ditto.
gcc/testsuite/
2014-07-09 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/58155 - -Wliteral-suffix warns about tokens which are skipped
g++.dg/cpp0x/pr58155.C: New.
From-SVN: r212392
Mark Wielaard [Wed, 9 Jul 2014 10:56:39 +0000 (10:56 +0000)]
java: Use build_qualified_type instead of build_type_variant.
gcc/java/ChangeLog
* builtins.c (putVolatile_builtin): Use build_qualified_type
instead of build_type_variant.
(getVolatile_builtin): Likewise.
(build_classdollar_field): Likewise.
From-SVN: r212389
Bernd Schmidt [Wed, 9 Jul 2014 10:34:40 +0000 (10:34 +0000)]
Avoid using create_tmp_var for static decls.
* trans-array.c (gfc_build_constant_array_constructor): Build a
static decl manually.
* trans-decl.c (create_main_function): Likewise.
From-SVN: r212388
Dominique d'Humieres [Wed, 9 Jul 2014 09:01:06 +0000 (11:01 +0200)]
re PR testsuite/61453 (gfortran.dg/bind_c_array_params_2.f90 for targets where a call insn isn't "call")
2014-07-09 Dominique d'Humieres <dominiq@lps.ens.fr>
PR testsuite/61453
* gfortran.dg/gfortran.dg/bind_c_array_params_2.f90:
Adjust regexp for more targets.
From-SVN: r212387
Andrew Sutton [Wed, 9 Jul 2014 08:32:43 +0000 (08:32 +0000)]
re PR c++/59361 (cannot expand parenthesized pack expression)
/cp
2014-07-09 Andrew Sutton <andrew.n.sutton@gmail.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59361
* parser.c (cp_parser_tokens_start_cast_expression): Return 0 for
CPP_ELLIPSIS too.
/testsuite
2014-07-09 Andrew Sutton <andrew.n.sutton@gmail.com>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59361
* g++.dg/cpp0x/vt-59361.C: New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r212386
Trevor Saunders [Wed, 9 Jul 2014 03:07:09 +0000 (03:07 +0000)]
playcate old gcc
gcc/
PR bootstrap/61679
* hash-table.h: use hash_table::value_type instead of
Descriptor::value_type in the return types of several methods.
From-SVN: r212384
Trevor Saunders [Wed, 9 Jul 2014 03:06:49 +0000 (03:06 +0000)]
remove has_execute
gcc/
* tree-pass.h (pass_data): Remove has_execute member.
* passes.c (execute_one_pass): Don't check pass->has_execute.
* asan.c, auto-inc-dec.c, bb-reorder.c, bt-load.c, cfgcleanup.c,
cfgexpand.c, cfgrtl.c, cgraphbuild.c, combine-stack-adj.c, combine.c,
compare-elim.c, config/arc/arc.c, config/epiphany/mode-switch-use.c,
config/epiphany/resolve-sw-modes.c, config/i386/i386.c,
config/mips/mips.c, config/rl78/rl78.c, config/s390/s390.c,
config/sh/sh_optimize_sett_clrt.cc, config/sh/sh_treg_combine.cc,
config/sparc/sparc.c, cprop.c, cse.c, dce.c, df-core.c, dse.c,
dwarf2cfi.c, except.c, final.c, function.c, fwprop.c, gcse.c,
gimple-low.c, gimple-ssa-isolate-paths.c,
gimple-ssa-strength-reduction.c, graphite.c, ifcvt.c, init-regs.c,
ipa-comdats.c, ipa-cp.c, ipa-devirt.c, ipa-inline-analysis.c,
ipa-inline.c, ipa-profile.c, ipa-pure-const.c, ipa-reference.c,
ipa-split.c, ipa-visibility.c, ipa.c, ira.c, jump.c, loop-init.c,
lower-subreg.c, mode-switching.c, modulo-sched.c, omp-low.c, passes.c,
postreload-gcse.c, postreload.c, predict.c, recog.c, ree.c,
reg-stack.c, regcprop.c, reginfo.c, regrename.c, reorg.c, sched-rgn.c,
stack-ptr-mod.c, store-motion.c, tracer.c, trans-mem.c,
tree-call-cdce.c, tree-cfg.c, tree-cfgcleanup.c, tree-complex.c,
tree-eh.c, tree-emutls.c, tree-if-conv.c, tree-into-ssa.c,
tree-loop-distribution.c, tree-nrv.c, tree-object-size.c,
tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
tree-sra.c, tree-ssa-ccp.c, tree-ssa-copy.c, tree-ssa-copyrename.c,
tree-ssa-dce.c, tree-ssa-dom.c, tree-ssa-dse.c, tree-ssa-forwprop.c,
tree-ssa-ifcombine.c, tree-ssa-loop-ch.c, tree-ssa-loop-im.c,
tree-ssa-loop-ivcanon.c, tree-ssa-loop-prefetch.c,
tree-ssa-loop-unswitch.c, tree-ssa-loop.c, tree-ssa-math-opts.c,
tree-ssa-phiopt.c, tree-ssa-phiprop.c, tree-ssa-pre.c,
tree-ssa-reassoc.c, tree-ssa-sink.c, tree-ssa-strlen.c,
tree-ssa-structalias.c, tree-ssa-uncprop.c, tree-ssa-uninit.c,
tree-ssa.c, tree-ssanames.c, tree-stdarg.c, tree-switch-conversion.c,
tree-tailcall.c, tree-vect-generic.c, tree-vectorizer.c, tree-vrp.c,
tree.c, tsan.c, ubsan.c, var-tracking.c, vtable-verify.c,
web.c: Remove initializer for pass_data::has_execute.
From-SVN: r212383
Trevor Saunders [Wed, 9 Jul 2014 03:06:09 +0000 (03:06 +0000)]
convert some hash_table to hash_map
gcc/
* graphite-htab.h: Use hash_map instead of hash_table.
* graphite-clast-to-gimple.c: Adjust.
* passes.c: Use hash_map instead of hash_table.
* sese.c: Likewise.
* sese.h: Remove now unused code.
From-SVN: r212382
Mike Stump [Wed, 9 Jul 2014 01:02:31 +0000 (01:02 +0000)]
Fix pr60226.c on darwin.
From-SVN: r212381
Sriraman Tallam [Wed, 9 Jul 2014 00:50:25 +0000 (00:50 +0000)]
re PR target/61599 ([x86_64] With -mcmodel=medium, extern global arrays without size are not treated conservatively.)
2014-07-08 Sriraman Tallam <tmsriram@google.com>
PR target/61599
* config/i386/i386.c (ix86_in_large_data_p): Check for size less
than zero.
PR target/61599
* gcc.target/i386/pr61599-1.c: New test.
* gcc.target/i386/pr61599-2.c: New test.
From-SVN: r212380
GCC Administrator [Wed, 9 Jul 2014 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r212379
Ian Lance Taylor [Tue, 8 Jul 2014 21:28:17 +0000 (21:28 +0000)]
re PR go/61308 (gccgo: ICE in Expression::check_bounds [GoSmith])
PR go/61308
compiler: Convert array start index before bounds checking.
From-SVN: r212372
Ian Lance Taylor [Tue, 8 Jul 2014 20:49:38 +0000 (20:49 +0000)]
re PR go/61746 (A line starting with /*// causes an error even if the /* is closed on the next line)
PR go/61746
compiler: Fix C-style comment parsing.
The compiler was incorrectly seeing /*/ as a complete C-style
comment.
From-SVN: r212370
Jakub Jelinek [Tue, 8 Jul 2014 15:39:36 +0000 (17:39 +0200)]
re PR rtl-optimization/61673 (Miscompilation of _gnutls_hostname_compare on s390)
PR rtl-optimization/61673
* combine.c (simplify_comparison): Test just mode's sign bit
in tmode rather than the sign bit and any bits above it.
* gcc.c-torture/execute/pr61673.c: New test.
From-SVN: r212364
Roman Gareev [Tue, 8 Jul 2014 13:51:26 +0000 (13:51 +0000)]
graphite-isl-ast-to-gimple.c (generate_isl_context): Add __isl_give to the declaration.
gcc/
* graphite-isl-ast-to-gimple.c (generate_isl_context):
Add __isl_give to the declaration.
(generate_isl_schedule): Likewise.
(scop_to_isl_ast): Likewise.
From-SVN: r212361
Jonathan Wakely [Tue, 8 Jul 2014 13:22:14 +0000 (14:22 +0100)]
allocated_ptr.h (__allocated_ptr::operator=): Add missing return.
* include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
missing return.
* include/experimental/any: Remove unused header.
* include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
* testsuite/util/testsuite_regex.h: Move include guard.
From-SVN: r212360
Kyrylo Tkachov [Tue, 8 Jul 2014 13:17:13 +0000 (13:17 +0000)]
[ARM] Cortex-A5 rtx costs table
* config/arm/arm.c (cortexa5_extra_costs): New table.
(arm_cortex_a5_tune): Use cortexa5_extra_costs.
From-SVN: r212358
Jakub Jelinek [Tue, 8 Jul 2014 09:39:57 +0000 (11:39 +0200)]
re PR middle-end/61725 (__builtin_ffs(0) leads to wrong code generation)
PR tree-optimization/61725
* tree-vrp.c (extract_range_basic): Don't assume vr0 is unsigned
range, use range_includes_zerop_p instead of integer_zerop on
vr0->min, only use log2 of max if min is not negative.
* gcc.dg/tree-ssa/vrp93.c: New test.
* gcc.c-torture/execute/pr61725.c: New test.
From-SVN: r212353
Richard Biener [Tue, 8 Jul 2014 09:22:54 +0000 (09:22 +0000)]
tree-ssa-dom.h (loop_depth_of_name): Remove.
2014-07-08 Richard Biener <rguenther@suse.de>
* tree-ssa-dom.h (loop_depth_of_name): Remove.
* tree-ssa-dom.c (record_equivalences_from_phis): Remove
restriction on loop depth difference.
(record_equality): Likewise.
(propagate_rhs_into_lhs): Likewise. Simplify condition.
(loop_depth_of_name): Remove.
* tree-ssa-copy.c (copy_prop_visit_phi_node): Remove
restriction on loop depth difference.
(init_copy_prop): Likewise.
* gcc.dg/tree-ssa/ssa-pre-16.c: Adjust expected eliminations.
From-SVN: r212352
Jan Hubicka [Tue, 8 Jul 2014 09:12:56 +0000 (11:12 +0200)]
tree-ssa-alias.c (walk_aliased_vdefs_1): Add FUNCTION_ENTRY_REACHED parameter.
* tree-ssa-alias.c (walk_aliased_vdefs_1): Add FUNCTION_ENTRY_REACHED
parameter.
(walk_aliased_vdefs): Likewise.
* tree-ssa-alias.h (walk_aliased_vdefs): Likewise.
* ipa-prop.c (stmt_may_be_vtbl_ptr_store): Skip clobbers
(detect_type_change_from_memory_writes): Check if entry was reached.
From-SVN: r212351
Rainer Orth [Tue, 8 Jul 2014 09:08:49 +0000 (09:08 +0000)]
Use FP_RN etc. unconditionally
* config/fpu-sysv.h (get_fpu_rounding_mode): Use FP_RN, FP_RP,
FP_RM, FP_RZ unconditionally.
(set_fpu_rounding_mode): Likewise.
From-SVN: r212350
Richard Biener [Tue, 8 Jul 2014 09:04:29 +0000 (09:04 +0000)]
re PR tree-optimization/61681 (wrong code at -Os and above on x86_64-linux-gnu)
2014-07-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/61681
* tree-ssa-structalias.c (find_what_var_points_to): Expand
NONLOCAL inside ESCAPED.
* gcc.dg/torture/pr61681.c: New testcase.
From-SVN: r212349
Richard Biener [Tue, 8 Jul 2014 08:59:17 +0000 (08:59 +0000)]
re PR tree-optimization/61680 (vectorization gives wrong answer for sandybridge target)
2014-07-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/61680
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
Handle properly all read-write dependences with group accesses.
* gcc.dg/vect/pr61680.c: New testcase.
From-SVN: r212348
Yuri Rumyantsev [Tue, 8 Jul 2014 07:52:12 +0000 (07:52 +0000)]
re PR tree-optimization/61576 (wrong code at -O3 on x86_64-linux-gnu)
PR tree-optimization/61576
gcc/
* tree-if-conv.c (is_cond_scalar_reduction): Add check that
basic block containing reduction statement is predecessor
of phi basi block.
gcc/testsuite/
* gcc.dg/torture/pr61576.c: New test.
From-SVN: r212347
Marek Polacek [Tue, 8 Jul 2014 05:38:12 +0000 (05:38 +0000)]
re PR middle-end/60226 (ICE initializing array of elements with too large alignment)
PR c/60226
* fold-const.c (round_up_loc): Change the parameter type.
Remove assert.
* fold-const.h (round_up_loc): Adjust declaration.
* stor-layout.c (finalize_record_size): Check for too large types.
* c-c++-common/pr60226.c: New test.
From-SVN: r212346
GCC Administrator [Tue, 8 Jul 2014 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r212345
Paul Thomas [Mon, 7 Jul 2014 20:04:05 +0000 (20:04 +0000)]
re PR fortran/61459 (segfault when assigning to allocatable function result from matmul result)
2014-07-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61459
PR fortran/58883
* trans-expr.c (fcncall_realloc_result): Use the natural type
for the address expression of 'res_desc'.
2014-07-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/61459
PR fortran/58883
* gfortran.dg/allocatable_function_8.f90 : New test
From-SVN: r212339
Jan Hubicka [Mon, 7 Jul 2014 19:53:36 +0000 (21:53 +0200)]
symtab.c: Include calls.h
* symtab.c: Include calls.h
(symtab_nonoverwritable_alias_1): Check sanity of the local
alias.
From-SVN: r212337
Maciej W. Rozycki [Mon, 7 Jul 2014 15:48:23 +0000 (15:48 +0000)]
rs6000.c (output_vec_const_move): Handle little-endian code generation.
gcc/
* config/rs6000/rs6000.c (output_vec_const_move): Handle
little-endian code generation.
* config/rs6000/spe.md (spe_evmergehi): Rename to...
(vec_perm00_v2si): ... this. Handle little-endian code
generation.
(spe_evmergehilo): Rename to...
(vec_perm01_v2si): ... this. Handle little-endian code
generation.
(spe_evmergelo): Rename to...
(vec_perm11_v2si): ... this. Handle little-endian code
generation.
(spe_evmergelohi): Rename to...
(vec_perm10_v2si): ... this. Handle little-endian code
generation.
(spe_evmergehi, spe_evmergehilo): New expanders.
(spe_evmergelo, spe_evmergelohi): Likewise.
(*frob_<SPE64:mode>_<DITI:mode>): Handle little-endian code
generation.
(*frob_tf_ti): Likewise.
(*frob_<mode>_di_2): Likewise.
(*frob_tf_di_8_2): Likewise.
(*frob_di_<mode>): Likewise.
(*frob_ti_tf): Likewise.
(*frob_<DITI:mode>_<SPE64:mode>_2): Likewise.
(*frob_ti_<mode>_8_2): Likewise.
(*frob_ti_tf_2): Likewise.
(mov_si<mode>_e500_subreg0): Rename to...
(mov_si<mode>_e500_subreg0_be): ... this. Restrict to the big
endianness only.
(*mov_si<mode>_e500_subreg0_le): New instruction pattern.
(*mov_si<mode>_e500_subreg0_elf_low): Rename to...
(*mov_si<mode>_e500_subreg0_elf_low_be): ... this. Restrict to
the big endianness only.
(*mov_si<mode>_e500_subreg0_elf_low_le): New instruction pattern.
(*mov_si<mode>_e500_subreg0_2): Rename to...
(*mov_si<mode>_e500_subreg0_2_be): ... this. Restrict to the
big big endianness only.
(*mov_si<mode>_e500_subreg0_2_le): New instruction pattern.
(*mov_si<mode>_e500_subreg4): Rename to...
(*mov_si<mode>_e500_subreg4_be): ... this. Restrict to the big
endianness only.
(mov_si<mode>_e500_subreg4_le): New instruction pattern.
(*mov_si<mode>_e500_subreg4_elf_low): Rename to...
(*mov_si<mode>_e500_subreg4_elf_low_be): ... this. Restrict to
the big endianness only.
(*mov_si<mode>_e500_subreg4_elf_low_le): New instruction/splitter
pattern.
(*mov_si<mode>_e500_subreg4_2): Rename to...
(*mov_si<mode>_e500_subreg4_2_be): ... this. Restrict to the big
endianness only.
(*mov_si<mode>_e500_subreg4_2_le): New instruction pattern.
(*mov_sitf_e500_subreg8): Rename to...
(*mov_sitf_e500_subreg8_be): ... this. Restrict to the big
endianness only.
(*mov_sitf_e500_subreg8_le): New instruction pattern.
(*mov_sitf_e500_subreg8_2): Rename to...
(*mov_sitf_e500_subreg8_2_be): ... this. Restrict to the big
endianness only.
(*mov_sitf_e500_subreg8_2_le): New instruction pattern.
(*mov_sitf_e500_subreg12): Rename to...
(*mov_sitf_e500_subreg12_be): ... this. Restrict to the big
endianness only.
(*mov_sitf_e500_subreg12_le): New instruction pattern.
(*mov_sitf_e500_subreg12_2): Rename to...
(*mov_sitf_e500_subreg12_2_be): ... this. Restrict to the big
endianness only.
(*mov_sitf_e500_subreg12_2_le): New instruction pattern.
gcc/testsuite/
* gcc.target/powerpc/spe-evmerge.c: New file.
From-SVN: r212335