Marek Polacek [Fri, 20 Mar 2015 14:56:53 +0000 (14:56 +0000)]
re PR c++/65072 (Segfault when parsing dectlype in trailing return type)
PR c++/65072
* typeck.c (lookup_anon_field): Make sure we're dealing with the main
variant.
* g++.dg/cpp0x/pr65072.C: New test.
From-SVN: r221535
Jonathan Wakely [Fri, 20 Mar 2015 13:26:55 +0000 (13:26 +0000)]
c++config (__gnu_cxx::__cxx11): Define new namespace.
* include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
* include/ext/codecvt_specializations.h (encoding_state,
encoding_char_traits): Remove abi-tag and use inline namespace.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
From-SVN: r221533
Richard Biener [Fri, 20 Mar 2015 12:39:32 +0000 (12:39 +0000)]
re PR tree-optimization/64715 (__builtin_object_size (..., 1) fails to locate subobject)
2015-03-20 Richard Biener <rguenther@suse.de>
PR middle-end/64715
* tree-chrec.c (chrec_fold_poly_cst): Use useless_type_conversion_p
for type comparison and gcc_checking_assert.
(chrec_fold_plus_poly_poly): Likewise.
(chrec_fold_multiply_poly_poly): Likewise.
(chrec_convert_1): Likewise.
* gimplify.c (gimplify_expr): Remove premature folding of
&X + CST to &MEM[&X, CST].
* gcc.dg/pr15347.c: Use -O.
* c-c++-common/pr19807-1.c: Likewise.
From-SVN: r221532
Eric Botcazou [Fri, 20 Mar 2015 10:15:33 +0000 (10:15 +0000)]
re PR ada/65451 (compiler crash on volatile access type)
PR ada/65451
* gcc-interface/utils.c (gnat_pushdecl): Tidy up and improve comment.
Make sure to chain only main variants through TYPE_NEXT_PTR_TO.
From-SVN: r221531
Jan Hubicka [Fri, 20 Mar 2015 06:41:17 +0000 (07:41 +0100)]
ipa-inline.c (can_inline_edge_p): Short circuit if inline_failed already is final.
* ipa-inline.c (can_inline_edge_p): Short circuit if inline_failed
already is final.
(ipa_inline): Recompute inline_failed codes.
* cif-code.def (FUNCTION_NOT_OPTIMIZED, REDEFINED_EXTERN_INLINE,
USES_COMDAT_LOCAL, ATTRIBUTE_MISMATCH, UNREACHABLE): Declare as
CIF_FINAL_ERROR.
From-SVN: r221530
Uros Bizjak [Fri, 20 Mar 2015 06:07:30 +0000 (07:07 +0100)]
re PR rtl-optimization/60851 (ICE: in extract_constrain_insn_cached, at recog.c:2117 with -flive-range-shrinkage -mdispatch-scheduler -march=bdver4)
PR rtl-optimization/60851
* recog.c (constrain_operands): Accept a pseudo register before reload
for LRA enabled targets.
testsuite/ChangeLog:
PR rtl-optimization/60851
* gcc.target/i386/pr60851.c: New test.
From-SVN: r221529
Vladimir Makarov [Fri, 20 Mar 2015 00:18:57 +0000 (00:18 +0000)]
Add missed ChangeLog entry for revision 221552.
From-SVN: r221528
GCC Administrator [Fri, 20 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221527
Michael Meissner [Thu, 19 Mar 2015 22:37:33 +0000 (22:37 +0000)]
re PR target/65240 (ICE (insn does not satisfy its constraints) on powerpc64le-linux-gnu)
[gcc]
2015-03-19 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/65240
* config/rs6000/predicates.md (easy_fp_constant): Remove special
-ffast-math handling that kept non-0 constants live in the RTL
until reload. Remove logic testing the number of instructions it
took to create a constant in a GPR that was never used, due to a
test for soft-float earlier.
(memory_fp_constant): Delete, no longer used.
* config/rs6000/rs6000.md (mov<MODE>_hardfloat): Remove
alternatives for loading non-0 constants into GPRs for hard
floating point that is no longer needed due to changes in
easy_fp_constant. Add support for loading 0.0 into GPRs.
(mov<mode>_hardfloat32): Likewise.
(mov<mode>_hardfloat64): Likewise.
(mov<mode>_64bit_dm): Likewise.
(movtd_64bit_nodm): Likewise.
(pre-reload move FP constant define_split): Delete define_split,
since it is no longer used.
(extenddftf2_internal): Remove GHF constraints that are not valid
for extenddftf2.
[gcc/testsuite]
2015-03-19 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/65240
* gcc/testsuite/g++.dg/pr65240.h: Add tests for PR 65240.
* gcc/testsuite/g++.dg/pr65240-1.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-2.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-3.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-4.C: Likewise.
From-SVN: r221524
Vladimir Makarov [Thu, 19 Mar 2015 19:59:38 +0000 (19:59 +0000)]
re PR rtl-optimization/63491 (Ice in LRA with simple vector test case on power)
2015-03-19 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/63491
* lra-constraints.c (check_and_process_move): Use src instead of
sreg. Remove some dead code.
2015-03-19 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/63491
* gcc.target/powerpc/pr63491.c: New.
From-SVN: r221522
Jason Merrill [Thu, 19 Mar 2015 19:31:48 +0000 (15:31 -0400)]
re PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)
PR c++/65046
Automatically propagate ABI tags to variables and functions
from their (return) type.
* class.c (check_tag): Handle variables and functions.
(mark_or_check_attr_tags): Split out from find_abi_tags_r.
(mark_or_check_tags): Likewise.
(mark_abi_tags): Use it. Rename from mark_type_abi_tags.
(check_abi_tags): Add single argument overload for decls.
Handle inheriting tags for decls.
* mangle.c (write_mangled_name): Call it.
(mangle_return_type_p): Split out from write_encoding.
(unmangled_name_p): Split out from write_mangled_name.
(write_mangled_name): Ignore abi_tag on namespace.
* cp-tree.h (NAMESPACE_IS_INLINE): Replace NAMESPACE_ABI_TAG.
* parser.c (cp_parser_namespace_definition): Set it.
* name-lookup.c (handle_namespace_attrs): Use arguments. Warn
about abi_tag attribute on non-inline namespace.
* tree.c (check_abi_tag_args): Split out from handle_abi_tag_attribute.
(handle_abi_tag_attribute): Allow tags on variables.
From-SVN: r221521
Jakub Jelinek [Thu, 19 Mar 2015 19:12:43 +0000 (20:12 +0100)]
c-decl.c (c_decl_attributes): Also add "omp declare target" attribute for DECL_EXTERNAL VAR_DECLs.
* c-decl.c (c_decl_attributes): Also add "omp declare target"
attribute for DECL_EXTERNAL VAR_DECLs.
* decl2.c (cplus_decl_attributes): Also add "omp declare target"
attribute for DECL_EXTERNAL VAR_DECLs.
* testsuite/libgomp.c/target-10.c: New test.
* testsuite/libgomp.c++/target-4.C: New test.
From-SVN: r221520
Jan Hubicka [Thu, 19 Mar 2015 17:37:15 +0000 (18:37 +0100)]
re PR lto/65380 ([ICF] LTO: ICE in add_symbol_to_partition_1, at lto/lto-partition.c:158)
Fix PR ipa/65380.
PR ipa/65380
* ipa-icf.c (sem_function::merge): Do not merge DECL_EXTERNAL symbols.
(sem_variable::merge): Likewise.
From-SVN: r221519
Martin Liska [Thu, 19 Mar 2015 17:35:52 +0000 (17:35 +0000)]
re PR ipa/65465 (Internal compiler error: in build2_stIat)
Fix for PR ipa/65465.
PR ipa/65465
* cgraphunit.c (cgraph_node::create_wrapper): Correctly reset
all fields of cgraph_thunk_info.
* g++.dg/ipa/pr65465.C: New test.
From-SVN: r221518
Ilya Enkovich [Thu, 19 Mar 2015 14:01:31 +0000 (14:01 +0000)]
ipa-chkp.c (chkp_maybe_create_clone): Don't try to clone instrumented thunks.
* ipa-chkp.c (chkp_maybe_create_clone): Don't try to
clone instrumented thunks.
From-SVN: r221516
Richard Biener [Thu, 19 Mar 2015 13:36:18 +0000 (13:36 +0000)]
revert: re PR middle-end/63155 (memory hog)
2015-03-19 Richard Biener <rguenther@suse.de>
Revert
2015-03-10 Richard Biener <rguenther@suse.de>
PR middle-end/63155
* tree-ssa-coalesce.h (verify_ssa_coalescing): Declare.
* tree-ssa-coalesce.c: Include timevar.h.
(attempt_coalesce): Handle graph being NULL.
(coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING.
Split out abnormal coalescing to ...
(perform_abnormal_coalescing): ... this function.
(coalesce_ssa_name): Perform abnormal coalescing without computing
live/conflict.
(verify_ssa_coalescing_worker): New function.
(verify_ssa_coalescing): Likewise.
From-SVN: r221515
Richard Biener [Thu, 19 Mar 2015 11:44:08 +0000 (11:44 +0000)]
partition.h (struct partition_elem): Re-order elements to avoid padding.
2015-03-19 Richard Biener <rguenther@suse.de>
* partition.h (struct partition_elem): Re-order elements to
avoid padding.
From-SVN: r221514
Paolo Carlini [Thu, 19 Mar 2015 11:02:47 +0000 (11:02 +0000)]
re PR c++/52659 (GCC fails to reject a deleted function definition which is not the first declaration)
2015-03-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52659
* g++.dg/cpp0x/deleted11.C: New.
From-SVN: r221513
Jakub Jelinek [Thu, 19 Mar 2015 10:12:34 +0000 (11:12 +0100)]
re PR sanitizer/65400 (tsan mis-compiles inlineable C functions)
PR sanitizer/65400
* tsan.c (instrument_gimple): Clear tail call flag on
calls.
* c-c++-common/tsan/pr65400-3.c: New test.
From-SVN: r221512
Paolo Carlini [Thu, 19 Mar 2015 08:57:01 +0000 (08:57 +0000)]
re PR c++/59686 (Non-constexpr pointers accepted in constant expressions)
2015-03-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59686
* g++.dg/cpp0x/constexpr-59686.C: New.
From-SVN: r221510
Jakub Jelinek [Thu, 19 Mar 2015 07:55:22 +0000 (08:55 +0100)]
re PR sanitizer/64265 (r217669 broke tsan)
PR sanitizer/64265
* g++.dg/tsan/pr64265.C: New test.
From-SVN: r221509
Jakub Jelinek [Thu, 19 Mar 2015 07:53:38 +0000 (08:53 +0100)]
re PR sanitizer/65400 (tsan mis-compiles inlineable C functions)
PR sanitizer/65400
* ipa-split.c (find_return_bb): Allow TSAN_FUNC_EXIT internal
call in the return bb.
(find_split_points): Add RETURN_BB argument, don't call
find_return_bb.
(split_function): Likewise. Add ADD_TSAN_FUNC_EXIT argument,
if true append TSAN_FUNC_EXIT internal call after the call to
the split off function.
(execute_split_functions): Call find_return_bb here.
Don't optimize if TSAN_FUNC_EXIT is found in unexpected places.
Adjust find_split_points and split_function calls.
* c-c++-common/tsan/pr65400-1.c: New test.
* c-c++-common/tsan/pr65400-2.c: New test.
From-SVN: r221508
DJ Delorie [Thu, 19 Mar 2015 04:00:51 +0000 (00:00 -0400)]
rl78-virt.md (andqi3_virt): Allow far operands.
* config/rl78/rl78-virt.md (andqi3_virt): Allow far operands.
(iorqi3_virt): Likewise.
From-SVN: r221506
GCC Administrator [Thu, 19 Mar 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221505
Paolo Carlini [Wed, 18 Mar 2015 21:30:04 +0000 (21:30 +0000)]
re PR c++/59816 ([c++11] Incorrect visibility check in template instantiation when the default constructor is a variadic template.)
2015-03-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59816
* g++.dg/cpp0x/pr59816.C: New.
From-SVN: r221502
Paul Thomas [Wed, 18 Mar 2015 21:18:38 +0000 (21:18 +0000)]
re PR fortran/59198 (ICE on cyclically dependent polymorphic types)
2014-03-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/59198
* gfortran.dg/proc_ptr_comp_45.f90 : Make tests fuzzy.
From-SVN: r221501
Martin Liska [Wed, 18 Mar 2015 19:18:34 +0000 (20:18 +0100)]
re PR ipa/65439 (FAIL: g++.dg/ipa/ipa-icf-4.C -std=gnu++98 scan-ipa-dump icf "Equal symbols: 6")
Fix PR65439.
PR ipa/65439
* g++.dg/ipa/ipa-icf-4.C: Extend expected number of
equivalences either to 6 or 7.
M gcc/testsuite/ChangeLog
M gcc/testsuite/g++.dg/ipa/ipa-icf-4.C
From-SVN: r221500
Tom de Vries [Wed, 18 Mar 2015 18:55:38 +0000 (18:55 +0000)]
Make parallelize_loops static
2015-03-18 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (parallelize_loops): Make static.
* tree-parloops.h (parallelize_loops): Remove extern declaration.
From-SVN: r221498
Jonathan Wakely [Wed, 18 Mar 2015 18:08:29 +0000 (18:08 +0000)]
re PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)
PR c++/65046
* config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
get_catalogs): Add abi-tag.
* include/ext/codecvt_specializations.h (encoding_state,
encoding_char_traits): Likewise.
* src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
* src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
money_get_shim, money_put_shim, messages_shim): Likewise.
* src/c++11/future.cc (future_error_category::message): Likewise.
* src/c++11/system_error.cc (generic_error_category::message,
system_error_category::message): Likewise.
(__sso_string): Disable -Wabi-tag warnings.
From-SVN: r221497
Jonathan Wakely [Wed, 18 Mar 2015 16:17:47 +0000 (16:17 +0000)]
re PR libstdc++/13631 (Problems in messages)
PR libstdc++/13631
* config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
implementation for old glibc. Fix whitespace.
From-SVN: r221494
Andrew Stubbs [Wed, 18 Mar 2015 14:27:13 +0000 (14:27 +0000)]
re PR middle-end/64491 (incorrect warning: loop exit may only be reached after undefined behavior)
Fix PR64491
2015-03-18 Andrew Stubbs <ams@codesourcery.com>
PR middle-end/64491
Revert:
2014-11-20 Andrew Stubbs <ams@codesourcery.com>
* tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Warn if a loop
condition would be removed due to undefined behaviour.
2015-03-18 Andrew Stubbs <ams@codesourcery.com>
PR middle-end/64491
Revert:
2014-11-20 Andrew Stubbs <ams@codesourcery.com>
* gcc.dg/undefined-loop-1.c: New file.
* gcc.dg/undefined-loop-2.c: New file.
2014-12-24 Andrew Stubbs <ams@codesourcery.com>
PR testsuite/64032
* gcc.dg/undefined-loop-2.c: Don't allow GCC to optimize away the
loop exits too early.
From-SVN: r221492
Martin Liska [Wed, 18 Mar 2015 14:16:59 +0000 (15:16 +0100)]
re PR ipa/65432 (Invalid read of size 1: ipa_icf::sem_item_optimizer::merge_classes(unsigned int) (ipa-icf.c:2958))
Fix PR ipa/65432
PR ipa/65432
* cgraph.c (cgraph_node::get_create): Remove unnecessary
xstrdup_for_dump wrapper.
* ipa-icf.c (sem_item::dump): Use symtab_node::name instead of
sem_item::name.
(sem_function::equals): Wrap symtab_node::name and symtab_node::asm_name
with xstrdup_for_dump.
(sem_variable::equals): Likewise.
(sem_item_optimizer::read_section): Use symtab_node::name instead of
sem_item::name.
(sem_item_optimizer::parse_funcs_and_vars): Likewise.
(sem_item_optimizer::merge_classes): Wrap symtab_node::name and
symtab_node::asm_name with xstrdup_for_dump.
(congruence_class::dump): Use symtab_node::name instead of
sem_item::name.
* ipa-icf.h (symtab_node::name): Remove.
(symtab_node::asm_name): Likewise.
From-SVN: r221491
Jakub Jelinek [Wed, 18 Mar 2015 13:54:12 +0000 (14:54 +0100)]
re PR tree-optimization/65450 (Unaligned access with -O3 -mtune=k8)
PR tree-optimization/65450
* tree-vect-data-refs.c (vect_duplicate_ssa_name_ptr_info): New
function.
(vect_create_addr_base_for_vector_ref, vect_create_data_ref_ptr): Use
it instead of duplicate_ssa_name_ptr_info.
* gfortran.dg/pr65450.f90: New test.
From-SVN: r221490
Jakub Jelinek [Wed, 18 Mar 2015 13:47:47 +0000 (14:47 +0100)]
re PR target/65222 (-mtune= or -march=: Not all options not documented: slm, knl, shanghai, istanbul)
PR target/65222
* doc/invoke.texi: Add knl as x86 -march=/-mtune= CPU type.
From-SVN: r221489
Richard Biener [Wed, 18 Mar 2015 13:36:16 +0000 (13:36 +0000)]
tree-data-ref.h (struct access_matrix): Remove.
2015-03-18 Richard Biener <rguenther@suse.de>
* tree-data-ref.h (struct access_matrix): Remove.
(AM_LOOP_NEST, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX,
AM_NB_PARAMETERS, AM_CONST_COLUMN_INDEX, AM_NB_COLUMNS,
AM_GET_SUBSCRIPT_ACCESS_VECTOR, AM_GET_ACCESS_MATRIX_ELEMENT): Likewise.
(am_vector_index_for_loop): Likewise.
(struct data_reference): Remove access_matrix member.
(DR_ACCESS_MATRIX): Remove.
(lambda_vector_new): Add comment.
(lambda_matrix_new): Use XOBNEWVEC.
From-SVN: r221488
Richard Biener [Wed, 18 Mar 2015 12:29:20 +0000 (12:29 +0000)]
tree-ssa-loop-ch.c (pass_data_ch): Remove TODO_cleanup_cfg.
2015-03-18 Richard Biener <rguenther@suse.de>
* tree-ssa-loop-ch.c (pass_data_ch): Remove TODO_cleanup_cfg.
(pass_ch::execute): Cleanup the CFG only if we did sth.
* tree-vect-generic.c (pass_data_lower_vector): Remove TODO_cleanup_cfg.
From-SVN: r221487
Kyrylo Tkachov [Wed, 18 Mar 2015 12:01:24 +0000 (12:01 +0000)]
[expmed][cleanup] Use std::swap instead of manual swapping
* expmed.c (synth_mult): Use std::swap instead of manually
swapping algorithms.
From-SVN: r221486
Jakub Jelinek [Wed, 18 Mar 2015 10:58:32 +0000 (11:58 +0100)]
re PR rtl-optimization/65078 (4.9 and 5.0 generate more spill-fill in comparison with 4.8.2)
PR target/65078
* config/i386/sse.md (movsi/movdi -> vec_extract_*_0 splitter): New.
* gcc.target/i386/pr65078-1.c: New test.
* gcc.target/i386/pr65078-2.c: New test.
* gcc.target/i386/pr65078-3.c: New test.
* gcc.target/i386/pr65078-4.c: New test.
* gcc.target/i386/pr65078-5.c: New test.
* gcc.target/i386/pr65078-6.c: New test.
From-SVN: r221485
Jonathan Wakely [Wed, 18 Mar 2015 10:53:38 +0000 (10:53 +0000)]
acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
2015-03-18 Jonathan Wakely <jwakely@redhat.com>
Torvald Riegel <triegel@redhat.com>
* acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
* config.h.in: Regenerate.
* configure: Regenerate.
* include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
(shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
(shared_timed_mutex::lock_shared()): Retry on EAGAIN.
(shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
EDEADLK.
Co-Authored-By: Torvald Riegel <triegel@redhat.com>
From-SVN: r221484
Paolo Carlini [Wed, 18 Mar 2015 10:31:24 +0000 (10:31 +0000)]
re PR c++/65340 ([C++14]ICE in mark_used, at decl2.c:5040)
2015-03-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/65340
* call.c (build_over_call): Pass the tsubst_flags_t argument to
mark_used.
* decl2.c (mark_used): Inline the require_deduced_type call and
guard the error call.
2015-03-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/65340
* g++.dg/cpp1y/pr65340.C: New.
From-SVN: r221483
Jerry DeLisle [Wed, 18 Mar 2015 01:47:12 +0000 (01:47 +0000)]
re PR fortran/64432 (SYSTEM_CLOCK(COUNT_RATE=rate) wrong result for integer(4)::rate)
2015-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/64432
* gfortran.dg/system_clock_3.f08: Adjust test.
From-SVN: r221482
GCC Administrator [Wed, 18 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221481
Jason Merrill [Tue, 17 Mar 2015 17:38:25 +0000 (13:38 -0400)]
re PR c++/65061 (Issue with using declaration and member class template)
PR c++/65061
* parser.c (cp_parser_template_name): Call strip_using_decl.
From-SVN: r221478
Jonathan Wakely [Tue, 17 Mar 2015 16:36:32 +0000 (16:36 +0000)]
1.cc: Remove name of unused exception variable.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
unused exception variable.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
test.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
From-SVN: r221477
Jonathan Wakely [Tue, 17 Mar 2015 14:24:55 +0000 (14:24 +0000)]
nested_exception.h: Do not try to derive from final classes.
* libsupc++/nested_exception.h: Do not try to derive from final
classes.
* testsuite/18_support/nested_exception/throw_with_nested.cc: Test
final class.
From-SVN: r221476
Georg-Johann Lay [Tue, 17 Mar 2015 10:34:11 +0000 (10:34 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)
PR target/65296
* config/avr/avr.opt (-nodevicelib): New option.
* doc/invoke.texi (AVR Options): Document it.
* config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC) [avr1]: Don't link
libgcc.a, libc.a, libm.a.
* config/avr/specs.h: Same.
* config/avr/gen-avr-mmcu-specs.c (print_mcu): Don't print specs
which don't (directly) depend on the device. Print more help.
(*avrlibc_devicelib) [-nodevicelib]: Don't link libdev.a.
(*cpp): Don't define __AVR_DEV_LIB_NAME__.
* config/avr/driver-avr.c: Remove -nodevicelib from option list in
case of an error.
(avr_devicespecs_file): Use suffix "%s" instead of absolute path
for specs file name.
* config/avr/avr-arch.h (avr_mcu_t) [.library_name]: Remove.
* config/avr/avr-mcus.def: Adjust initializers and comments.
From-SVN: r221475
Paul Thomas [Tue, 17 Mar 2015 05:20:08 +0000 (05:20 +0000)]
re PR fortran/59198 (ICE on cyclically dependent polymorphic types)
2014-03-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/59198
* trans-types.c (gfc_get_derived_type): If an abstract derived
type with procedure pointer components has no other type of
component, return the backend_decl. Otherwise build the
components if any of the non-procedure pointer components have
no backend_decl.
2014-03-17 Paul Thomas <pault@gcc.gnu.org>
PR fortran/59198
* gfortran.dg/proc_ptr_comp_44.f90 : New test
* gfortran.dg/proc_ptr_comp_45.f90 : New test
From-SVN: r221474
Jerry DeLisle [Tue, 17 Mar 2015 01:22:12 +0000 (01:22 +0000)]
re PR fortran/64432 (SYSTEM_CLOCK(COUNT_RATE=rate) wrong result for integer(4)::rate)
2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/64432
* gfortran.dg/system_clock_3.f08: New test.
From-SVN: r221473
Jerry DeLisle [Tue, 17 Mar 2015 01:04:58 +0000 (01:04 +0000)]
re PR fortran/64432 (SYSTEM_CLOCK(COUNT_RATE=rate) wrong result for integer(4)::rate)
2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/64432
* intrinsics/system_clock.c (system_clock4, system_clock8):
Cleanup some whitespace.
From-SVN: r221472
Jerry DeLisle [Tue, 17 Mar 2015 01:01:54 +0000 (01:01 +0000)]
re PR fortran/64432 (SYSTEM_CLOCK(COUNT_RATE=rate) wrong result for integer(4)::rate)
2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/64432
*trans-intrinisic.c (conv_intrinsic_system_clock): Check the
smallest kind passed in user arguments and hardcode tesults for
KIND=1 or KIND=2 to indicate no clock available.
From-SVN: r221471
Edward Smith-Rowland [Tue, 17 Mar 2015 00:50:55 +0000 (00:50 +0000)]
re PR c++/64626 (C++14 single quote should not always be a digit separator)
libcpp/
2015-03-16 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/64626
* lex.c (lex_number): If a number ends with digit-seps (') skip back
and let lex_string take them.
gcc/testsuite/
2015-03-16 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/64626
g++.dg/cpp1y/pr64626-1.C: New.
g++.dg/cpp1y/pr64626-2.C: New.
g++.dg/cpp1y/digit-sep-neg.C: Adjust errors and warnings.
From-SVN: r221470
GCC Administrator [Tue, 17 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221469
Jan Hubicka [Mon, 16 Mar 2015 19:39:14 +0000 (20:39 +0100)]
tree-sra.c (ipa_sra_preliminary_function_checks): Use DECL_ONE_ONLY to check if decl is one only.
* tree-sra.c (ipa_sra_preliminary_function_checks): Use
DECL_ONE_ONLY to check if decl is one only.
* ipa-split.c (consider_split): Limit splitt of one only functions.
From-SVN: r221466
Jakub Jelinek [Mon, 16 Mar 2015 18:50:43 +0000 (19:50 +0100)]
re PR tree-optimization/65427 (ICE in emit_move_insn with wide vector types)
PR tree-optimization/65427
* tree-vect-generic.c (do_cond, expand_vector_scalar_condition): New
functions.
(expand_vector_operations_1): Handle BLKmode vector COND_EXPR.
* gcc.c-torture/execute/pr65427.c: New test.
From-SVN: r221464
Marek Polacek [Mon, 16 Mar 2015 18:30:49 +0000 (18:30 +0000)]
DR 1688 PR c++/65327
DR 1688
PR c++/65327
* decl.c (grokdeclarator): Allow volatile and constexpr together.
* g++.dg/cpp0x/constexpr-object1.C: Change dg-error to dg-bogus.
* g++.dg/cpp0x/pr65327.C: New test.
From-SVN: r221463
Marek Polacek [Mon, 16 Mar 2015 18:28:26 +0000 (18:28 +0000)]
cgraph.h (add_new_static_var): Remove declaration.
* cgraph.h (add_new_static_var): Remove declaration.
* varpool.c (add_new_static_var): Remove function.
From-SVN: r221462
Jakub Jelinek [Mon, 16 Mar 2015 16:10:58 +0000 (17:10 +0100)]
omp-low.c (expand_omp_target): Use auto_vec<tree, 11> instead of vec<tree> * with vec_alloc and release for args.
* omp-low.c (expand_omp_target): Use auto_vec<tree, 11>
instead of vec<tree> * with vec_alloc and release for args.
Adjust all users.
From-SVN: r221460
Jakub Jelinek [Mon, 16 Mar 2015 16:10:17 +0000 (17:10 +0100)]
re PR middle-end/65431 (Invalid read of size 8 at 0x105DBBF8: delete_omp_context(unsigned long) (omp-low.c:1586))
PR middle-end/65431
* omp-low.c (delete_omp_context): Only splay_tree_delete
reduction_map in GIMPLE_OMP_TARGET is_gimple_omp_offloaded
is_gimple_omp_oacc contexts. Don't look at ctx->outer.
From-SVN: r221459
H.J. Lu [Mon, 16 Mar 2015 15:28:58 +0000 (08:28 -0700)]
Move cloog.m4 ChangeLog entry to config/ChangeLog
From-SVN: r221458
Max Ostapenko [Mon, 16 Mar 2015 11:17:32 +0000 (13:17 +0200)]
re PR sanitizer/64820 (Libsanitizer fails with ((AddrIsAlignedByGranularity(addr + size))) != (0)" (0x0, 0x0) if ssp is enabled.)
2015-03-16 Max Ostapenko <m.ostapenko@partner.samsung.com>
PR sanitizer/64820
gcc/
* cfgexpand.c (align_base): New function.
(alloc_stack_frame_space): Call it.
(expand_stack_vars): Align prev_frame to be sure
data->asan_vec elements aligned properly.
gcc/testsuite/
* c-c++-common/asan/pr64820.c: New test.
From-SVN: r221457
Andre Vehreschild [Mon, 16 Mar 2015 10:29:59 +0000 (11:29 +0100)]
resolve.c: Prevent segfault on illegal input.
gcc/fortran/ChangeLog:
2015-03-16 Andre Vehreschild <vehre@gmx.de>
* resolve.c: Prevent segfault on illegal input.
gcc/testsuite/ChangeLog:
2015-03-16 Andre Vehreschild <vehre@gmx.de>
* gfortran.dg/pointer_2.f90: New test.
From-SVN: r221455
Eric Botcazou [Mon, 16 Mar 2015 10:26:28 +0000 (10:26 +0000)]
re PR middle-end/65409 (ICE in store_field)
PR middle-end/65409
* expr.c (store_field): Do not do a direct block copy if the source is
a PARALLEL with BLKmode.
From-SVN: r221453
Tom de Vries [Mon, 16 Mar 2015 10:11:11 +0000 (10:11 +0000)]
Add PR64895 xfails in i386/fuse-caller-save*.c
2015-03-16 Tom de Vries <tom@codesourcery.com>
* gcc.target/i386/fuse-caller-save-rec.c: Add PR64895 xfail on scans.
* gcc.target/i386/fuse-caller-save-xmm.c: Same.
* gcc.target/i386/fuse-caller-save.c: Same.
From-SVN: r221452
Eric Botcazou [Mon, 16 Mar 2015 09:59:01 +0000 (09:59 +0000)]
utils2.c (gnat_invariant_expr): Return null if the type of the expression ends up being composite.
* gcc-interface/utils2.c (gnat_invariant_expr): Return null if the type
of the expression ends up being composite.
From-SVN: r221449
Tom de Vries [Mon, 16 Mar 2015 09:42:21 +0000 (09:42 +0000)]
Revert 'Use actual_call_used_reg_set to find conflicting regs'
2015-03-16 Tom de Vries <tom@codesourcery.com>
PR middle-end/65414
Revert:
2015-03-12 Tom de Vries <tom@codesourcery.com>
PR rtl-optimization/64895
* lra-lives.c (check_pseudos_live_through_calls): Use
actual_call_used_reg_set instead of call_used_reg_set, if available.
From-SVN: r221448
Eric Botcazou [Mon, 16 Mar 2015 09:40:14 +0000 (09:40 +0000)]
decl.c (is_from_limited_with_of_main): New predicate.
* gcc-interface/decl.c (is_from_limited_with_of_main): New predicate.
(gnat_to_gnu_entity) <E_Subprogram_Type>: Invoke it on return and
parameter types to detect circularities in ASIS mode.
* gcc-interface/trans.c (Attribute_to_gnu): Mention AI05-0151.
From-SVN: r221447
Eric Botcazou [Mon, 16 Mar 2015 09:18:38 +0000 (09:18 +0000)]
decl.c (gnat_to_gnu_entity): Do not short-circuit the regular handling.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Abstract_State>: Do not
short-circuit the regular handling.
From-SVN: r221446
Alan Modra [Mon, 16 Mar 2015 03:29:36 +0000 (13:59 +1030)]
re PR regression/63150 (FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *)
PR target/63150
gcc/
* config/rs6000/rs6000.md (bswapdi2): Remove one scratch reg.
Modify Z->r bswapdi splitter to use dest in place of scratch.
In r->Z and Z->r bswapdi splitter rename word_high, word_low
to word1, word2 and rearrange logic to suit.
(bswapdi2_64bit): Remove early clobber on Z->r alternative.
(bswapdi2_ldbrx): Likewise. Remove '??' on r->r.
(bswapdi2_32bit): Remove early clobber on Z->r alternative.
Add one '?' on r->r. Modify Z->r splitter to avoid need for
early clobber.
gcc/testsuite/
* gcc.target/powerpc/pr53199.c: Add extra functions. Revert
2014-12-05 change.
From-SVN: r221445
GCC Administrator [Mon, 16 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221444
John David Anglin [Sun, 15 Mar 2015 23:49:02 +0000 (23:49 +0000)]
pr65270-1.c: Add -fno-common to dg-options on hppa*-*-hpux*.
* gcc.dg/torture/pr65270-1.c: Add -fno-common to dg-options on
hppa*-*-hpux*.
* gcc.dg/torture/pr65270-2.c: Likewise.
From-SVN: r221441
GCC Administrator [Sun, 15 Mar 2015 00:16:21 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221439
Mikael Morin [Sat, 14 Mar 2015 12:23:27 +0000 (12:23 +0000)]
re PR fortran/61138 (Wrong code with pointer-bounds remapping)
PR fortran/61138
fortran/
* trans-expr.c (gfc_trans_pointer_assignment): Clear DESCRIPTOR_ONLY
field before reusing LSE.
testsuite/
gfortran.dg/pointer_remapping_9.f90: New.
From-SVN: r221436
Jakub Jelinek [Sat, 14 Mar 2015 09:56:39 +0000 (10:56 +0100)]
re PR target/65369 (nettle test failure on powerpc64le-linux-gnu when built with -O3)
PR tree-optimization/65369
* tree-vect-stmts.c (vectorizable_load) <case dr_explicit_realign>:
Set bump to vs * TYPE_SIZE_UNIT (elem_type) - 1 instead of
(vs - 1) * TYPE_SIZE_UNIT (elem_type).
* gcc.c-torture/execute/pr65369.c: New test.
From-SVN: r221435
Jakub Jelinek [Sat, 14 Mar 2015 09:55:41 +0000 (10:55 +0100)]
re PR tree-optimization/65418 (vim miscompilation)
PR tree-optimization/65418
* tree-ssa-reassoc.c (extract_bit_test_mask): If there
are casts in the first PLUS_EXPR operand, ensure tbias and
*totallowp are in the inner type.
* gcc.c-torture/execute/pr65418-1.c: New test.
* gcc.c-torture/execute/pr65418-2.c: New test.
From-SVN: r221434
Jakub Jelinek [Sat, 14 Mar 2015 08:54:08 +0000 (09:54 +0100)]
re PR rtl-optimization/65401 (make_field_assignment broken for big-endian)
PR rtl-optimization/65401
* combine.c (rtx_equal_for_field_assignment_p): Add widen_x
argument. If true, adjust_address_nv of x with big-endian
correction for the mode widening to GET_MODE (y).
(make_field_assignment): Don't do MEM mode widening here.
Use MEM_P instead of GET_CODE == MEM.
* gcc.c-torture/execute/pr65401.c: New test.
From-SVN: r221433
GCC Administrator [Sat, 14 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221432
Ian Lance Taylor [Fri, 13 Mar 2015 20:48:15 +0000 (20:48 +0000)]
compiler: Permit label on fallthrough statement.
Test case: https://go-review.googlesource.com/7523 .
From-SVN: r221428
Ian Lance Taylor [Fri, 13 Mar 2015 18:53:13 +0000 (18:53 +0000)]
libgo/README: Minor updates.
In particular, mention that libgo should not be stripped.
From-SVN: r221427
Uros Bizjak [Fri, 13 Mar 2015 18:09:12 +0000 (19:09 +0100)]
jit-recording.c (dump::write): Also check vasprintf return value.
* jit-recording.c (dump::write): Also check vasprintf return value.
(recording::context::add_error_va): Ditto.
(recording::string::from_printf): Ditto.
From-SVN: r221426
David Malcolm [Fri, 13 Mar 2015 17:23:37 +0000 (17:23 +0000)]
jit docs: Add "Packaging notes" section
gcc/jit/ChangeLog:
* docs/internals/index.rst (Packaging notes): New section.
* docs/_build/texinfo/libgccjit.texi: Regenerate.
From-SVN: r221425
Arnaud Charlet [Fri, 13 Mar 2015 13:48:21 +0000 (14:48 +0100)]
Fix typo.
From-SVN: r221423
Arnaud Charlet [Fri, 13 Mar 2015 13:47:24 +0000 (14:47 +0100)]
[multiple changes]
2015-03-13 Robert Dewar <dewar@adacore.com>
* exp_unst.adb (Note_Uplevel_Reference): Eliminate duplicate
references.
(Actual_Ref): New function.
(AREC_String): Minor reformatting.
(Unnest_Subprogram): Use Actual_Ref.
* frontend.adb (Frontend): Turn off Unnest_Subprogram_Mode
before call to Instantiate_Bodies.
2015-03-13 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Freeze_Profile): If the return type of a function
being frozen is an untagged limited view and the function is
abstract, mark the type as frozen because there is no later
point at which the profile of the subprogram will be elaborated.
2015-03-13 Robert Dewar <dewar@adacore.com>
* einfo.adb, einfo.ads, atree.adb, atree.ads, atree.h: Add seventh
component to entities. Add new fields Field36-41 and Node36-41.
2015-03-13 Claire Dross <dross@adacore.com>
* inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Rewrite after review.
2015-03-13 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Is_Volatile_Reference): Compile time known
value is never considered to be a volatile reference.
2015-03-13 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb (Analyze_Object_Contract): Suppress "constant
cannot be volatile" for internally generated object (such as
FIRST and LAST constants).
2015-03-13 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validate_Access_Subprogram_Instance): If a
convention is specified for the formal parameter, verify that
the actual has the same convention.
* sem_prag.adb (Set_Convention_From_Pragma): Allow convention
pragma to be set on a generic formal type.
* sem_util.adb (Set_Convention): Ignore within an instance,
as it has already been verified in the generic unit.
From-SVN: r221422
Ilya Verbin [Fri, 13 Mar 2015 13:30:26 +0000 (13:30 +0000)]
varpool.c (varpool_node::get_create): Don't set 'offloadable' flag for the external decls.
gcc/
* varpool.c (varpool_node::get_create): Don't set 'offloadable' flag for
the external decls.
libgomp/
* testsuite/libgomp.fortran/declare-target-1.f90: New test.
* testsuite/libgomp.fortran/declare-target-2.f90: New file.
From-SVN: r221421
Arnaud Charlet [Fri, 13 Mar 2015 13:28:15 +0000 (14:28 +0100)]
[multiple changes]
2015-03-13 Claire Dross <dross@adacore.com>
* inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Do not inline
subprograms with unconstrained record parameters containing
Itype declarations.
* sinfo.ads Document GNATprove assumption that type should match
in the AST.
* sem_ch6.adb (Analyze_Subprogram_Body_Contract):
Do not check for Refined_Depends and Refined_Globals contracts
as they are optional.
2015-03-13 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Instantiate_Type): For a floating-point type,
capture dimension info if any, because the generated subtype
declaration does not come from source and will not process dimensions.
* sem_dim,adb (Analyze_Dimension_Extension_Or_Record_Aggregate):
Do not analyze expressions with an initialization procedure
because aggregates will have been checked at the point of record
declaration.
2015-03-13 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb: Add entries for aspect Unimplemented.
* einfo.ads, einfo.adb (Is_Unimplemented): New flag.
* sem_ch13.adb: Add dummy entry for aspect Unimplemented.
* snames.ads-tmpl: Add entry for Name_Unimplemented.
From-SVN: r221420
Arnaud Charlet [Fri, 13 Mar 2015 13:22:52 +0000 (14:22 +0100)]
[multiple changes]
2015-03-13 Gary Dismukes <dismukes@adacore.com>
* style.adb (Missing_Overriding): Apply the
Comes_From_Source test to the Original_Node of the subprogram
node, to handle the case of a null procedure declaration that
has been rewritten as an empty procedure body.
2015-03-13 Robert Dewar <dewar@adacore.com>
* exp_util.ads: Minor fix to comment.
* sem_ch3.adb (Constrain_Index): Correct pasto from previous
change.
From-SVN: r221419
Robert Dewar [Fri, 13 Mar 2015 13:18:39 +0000 (13:18 +0000)]
exp_util.ads, [...] (Force_Evaluation): Add Related_Id and Is_Low/High_Bound params.
2015-03-13 Robert Dewar <dewar@adacore.com>
* exp_util.ads, exp_util.adb (Force_Evaluation): Add Related_Id and
Is_Low/High_Bound params.
* sem_ch3.adb (Constrain_Index): Use new Force_Evaluation calling
sequence to simplify generation of FIRST/LAST temps for bounds.
From-SVN: r221418
Jonathan Wakely [Fri, 13 Mar 2015 12:47:21 +0000 (12:47 +0000)]
* include/experimental/system_error: Fix include guard.
From-SVN: r221417
Sebastian Huber [Fri, 13 Mar 2015 10:57:07 +0000 (10:57 +0000)]
libgomp: Add RTEMS support
libgomp/ChangeLog
* configure.tgt (*-*-rtems*): Use local-exec TLS model.
* configure.ac (*-*-rtems*): Assume Pthread is supported.
(pthread.h): Check for this header file.
* configure: Regenerate.
From-SVN: r221415
Jonathan Wakely [Fri, 13 Mar 2015 10:49:08 +0000 (10:49 +0000)]
acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
* acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
* configure: Regenerate.
From-SVN: r221414
Kyrylo Tkachov [Fri, 13 Mar 2015 10:48:44 +0000 (10:48 +0000)]
[ARM] PR target/64600 Fix another ICE with -mtune=xscale: properly sign-extend mask during constant splitting
PR target/64600
* config/arm/arm.c (arm_gen_constant, AND case): Use
ARM_SIGN_EXTEND when constructing AND mask.
PR target/64600
* gcc.target/arm/pr64600_1.c: New test.
From-SVN: r221413
Thomas Preud'homme [Fri, 13 Mar 2015 09:45:48 +0000 (09:45 +0000)]
graph.c (print_graph_cfg): Make function names visible and append parenthesis to it.
2015-03-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* graph.c (print_graph_cfg): Make function names visible and append
parenthesis to it. Also make groups of basic blocks belonging to the
same function visible.
From-SVN: r221412
Richard Biener [Fri, 13 Mar 2015 08:52:51 +0000 (08:52 +0000)]
re PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)
2015-03-12 Richard Biener <rguenther@suse.de>
PR middle-end/44563
* tree-inline.c (gimple_expand_calls_inline): Walk BB backwards
to avoid quadratic behavior with inline expansion splitting blocks.
* tree-cfgcleanup.c (cleanup_tree_cfg_bb): Do not merge block
with the successor if the predecessor will be merged with it.
* tree-cfg.c (gimple_can_merge_blocks_p): We can't merge the
entry block with its successor.
From-SVN: r221410
Richard Biener [Fri, 13 Mar 2015 08:47:14 +0000 (08:47 +0000)]
re PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)
2015-03-10 Richard Biener <rguenther@suse.de>
PR middle-end/44563
* tree-cfgcleanup.c (split_bb_on_noreturn_calls): Remove.
(cleanup_tree_cfg_1): Do not call it.
(execute_cleanup_cfg_post_optimizing): Fixup the CFG here.
(fixup_noreturn_call): Mark the stmt as control altering.
* tree-cfg.c (execute_fixup_cfg): Do not dump the function
here.
(pass_data_fixup_cfg): Produce a dump file.
* tree-ssa-dom.c: Include tree-cfgcleanup.h.
(need_noreturn_fixup): New global.
(pass_dominator::execute): Fixup queued noreturn calls.
(optimize_stmt): Queue calls that became noreturn for fixup.
* tree-ssa-forwprop.c (pass_forwprop::execute): Likewise.
* tree-ssa-pre.c: Include tree-cfgcleanup.h.
(el_to_fixup): New global.
(eliminate_dom_walker::before_dom_childre): Queue calls that
became noreturn for fixup.
(eliminate): Fixup queued noreturn calls.
* tree-ssa-propagate.c: Include tree-cfgcleanup.h.
(substitute_and_fold_dom_walker): New member stmts_to_fixup.
(substitute_and_fold_dom_walker::before_dom_children): Queue
alls that became noreturn for fixup.
(substitute_and_fold): Fixup queued noreturn calls.
From-SVN: r221409
Uros Bizjak [Fri, 13 Mar 2015 07:33:51 +0000 (08:33 +0100)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
From-SVN: r221407
Jan Hubicka [Fri, 13 Mar 2015 06:30:04 +0000 (07:30 +0100)]
ipa-icf.c (sem_function::equals_wpa): Match CXX_CONSTRUCTOR_P and CXX_DESTURCTOR_P.
* ipa-icf.c (sem_function::equals_wpa): Match CXX_CONSTRUCTOR_P
and CXX_DESTURCTOR_P. For consutrctors match ODR type of class they
are building; for methods check ODR type of class they belong to if
they may lead to a polymorphic call.
(sem_function::compare_polymorphic_p): Be bit smarter about testing
when function may lead to a polymorphic call.
(sem_function::compare_type_list): Remove.
(sem_variable::equals): Update use of compatible_types_p.
(sem_variable::parse_tree_refs): Remove.
(sem_item_optimizer::filter_removed_items): Do not filter out CXX
cdtor.
* ipa-icf-gimple.c (func_checker::compare_decl): Do polymorphic
matching here.
(func_checker::compatible_polymorphic_types_p): Break out from ...
(unc_checker::compatible_types_p): ... here.
* ipa-icf-gimple.h (func_checker::compatible_polymorphic_types_p):
Declare.
(unc_checker::compatible_types_p): Update.
* ipa-icf.h (compare_type_list, parse_tree_refs, compare_sections):
Remove.
From-SVN: r221406
GCC Administrator [Fri, 13 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r221405
Paolo Carlini [Thu, 12 Mar 2015 23:55:49 +0000 (23:55 +0000)]
re PR c++/65323 (duplicate -Wzero-as-null-pointer-constant warnings)
2015-03-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/65323
* decl.c (check_default_argument): Don't call
maybe_warn_zero_as_null_pointer_constant.
From-SVN: r221402
Ian Lance Taylor [Thu, 12 Mar 2015 17:05:22 +0000 (17:05 +0000)]
go/build: cgo works on linux/arm64.
From-SVN: r221398
Ian Lance Taylor [Thu, 12 Mar 2015 16:44:36 +0000 (16:44 +0000)]
Makefile.am (GOLINK): Add GOCFLAGS.
* Makefile.am (GOLINK): Add GOCFLAGS.
* Makefile.in: Rebuild.
From-SVN: r221397
Ian Lance Taylor [Thu, 12 Mar 2015 16:41:28 +0000 (16:41 +0000)]
re PR go/65404 (cgo tool on powerpc-linux-gnu maybe incomplete)
PR go/65404
go/build: cgo works on linux/pcc.
From-SVN: r221396