gcc.git
9 years ago* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Deref>: New case.
Eric Botcazou [Thu, 26 Mar 2015 21:12:55 +0000 (21:12 +0000)]
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Deref>: New case.

From-SVN: r221711

9 years ago* cif-code.def (CILK_SPAWN): New code.
Jan Hubicka [Thu, 26 Mar 2015 21:10:28 +0000 (22:10 +0100)]
* cif-code.def (CILK_SPAWN): New code.

From-SVN: r221710

9 years agore PR target/65561 (avx512fintrin.h:5344:1: internal compiler error: in curr_insn_tra...
Uros Bizjak [Thu, 26 Mar 2015 20:37:53 +0000 (21:37 +0100)]
re PR target/65561 (avx512fintrin.h:5344:1: internal compiler error: in curr_insn_transform, at lra-constraints.c:3494)

PR target/65561
* config/i386/sse.md (avx512dq_vextract<shuffletype>64x2_1_maskm):
Check operand 4 and operand 0 for equality.
(avx512f_vextract<shuffletype>32x4_1_maskm):
Check operand 6 and operand 0 for equality.
(vec_extract_lo_<mode>_maskm): Check operand 2 and operand 0
for equality.
(vec_extract_hi_<mode>_maskm): Ditto.

From-SVN: r221709

9 years agore PR libstdc++/58038 (std::this_thread::sleep_until can cause inifinite sleep)
Jonathan Wakely [Thu, 26 Mar 2015 19:59:08 +0000 (19:59 +0000)]
re PR libstdc++/58038 (std::this_thread::sleep_until can cause inifinite sleep)

PR libstdc++/58038
PR libstdc++/60421
* include/std/thread (this_thread::sleep_for): Check for negative
durations.
(this_thread::sleep_until): Check for times in the past.
* testsuite/30_threads/this_thread/58038.cc: New.
* testsuite/30_threads/this_thread/60421.cc: New.

From-SVN: r221708

9 years agocgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring dead calls back to...
Jan Hubicka [Thu, 26 Mar 2015 19:56:25 +0000 (20:56 +0100)]
cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring dead calls back to live.

* cgraph.c (cgraph_update_edges_for_call_stmt_node): Do not bring
dead calls back to live.
(cgraph_edge::verify_count_and_frequency): Move cgraph/cfg frequency
cross check to ...
(cgraph_node::verify_node): ... here; verify only callee edges,
not caller.

From-SVN: r221707

9 years agoipa-inline-analysis.c (redirect_to_unreachable): New function.
Jan Hubicka [Thu, 26 Mar 2015 19:54:44 +0000 (20:54 +0100)]
ipa-inline-analysis.c (redirect_to_unreachable): New function.

* ipa-inline-analysis.c (redirect_to_unreachable): New function.
(edge_set_predicate): Use it to mark unreachable edges.
(inline_summary_t::duplicate): Remove unnecesary code.
(remap_edge_summaries): Likewise.
(dump_inline_summary): Report contains_cilk_spawn.
(compute_inline_parameters): Compute contains_cilk_spawn.
(inline_read_section, inline_write_summary): Stream
contains_cilk_spawn.
* ipa-inline.c (can_inline_edge_p): Do not tuch
DECL_STRUCT_FUNCTION that may not be available;
use CIF_CILK_SPAWN for cilk; fix optimization attribute checks;
remove check for callee_fun->can_throw_non_call_exceptions and
replace it by optimization attribute check; check for flag_exceptions.
* ipa-inline-transform.c (inline_call): Maintain
DECL_FUNCTION_PERSONALITY
* ipa-inline.h (inline_summary): Add contains_cilk_spawn.

From-SVN: r221706

9 years agore PR c++/65154 (ICE with {} initialized array with string)
Mikhail Maltsev [Thu, 26 Mar 2015 19:51:58 +0000 (19:51 +0000)]
re PR c++/65154 (ICE with {} initialized array with string)

PR c++/65154
* init.c (build_vec_init): Fix initializing aggregates
with empty init list.

From-SVN: r221704

9 years agore PR libstdc++/62259 (atomic class doesn't enforce required alignment on powerpc64)
Jonathan Wakely [Thu, 26 Mar 2015 19:27:02 +0000 (19:27 +0000)]
re PR libstdc++/62259 (atomic class doesn't enforce required alignment on powerpc64)

PR libstdc++/62259
PR libstdc++/65147
* include/std/atomic (atomic<T>): Increase alignment for types with
the same size as one of the integral types.
* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
* testsuite/29_atomics/atomic/62259.cc: New.

From-SVN: r221703

9 years agore PR tree-optimization/65551 (FAIL: 26_numerics/complex/50880.cc execution test)
Jakub Jelinek [Thu, 26 Mar 2015 19:17:44 +0000 (20:17 +0100)]
re PR tree-optimization/65551 (FAIL: 26_numerics/complex/50880.cc execution test)

PR tree-optimization/65551
* tree-ssa-sccvn.c (fully_constant_vn_reference_p): Use
TYPE_PRECISION only for INTEGRAL_TYPE_P types.

From-SVN: r221702

9 years agore PR libstdc++/65033 (C++11 atomics: is_lock_free result does not always match the...
Richard Henderson [Thu, 26 Mar 2015 18:31:11 +0000 (11:31 -0700)]
re PR libstdc++/65033 (C++11 atomics: is_lock_free result does not always match the real lock-free property)

PR libstdc++/65033

 * include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
 a fake pointer indicating type alignment.
 (__atomic_base<T *>::is_lock_free): Likewise.
 * include/std/atomic (atomic<T>::is_lock_free): Likewise.

From-SVN: r221701

9 years agore PR c++/65525 (ICE: sorry, unimplemented: unexpected AST of kind mem_ref (-std...
Jason Merrill [Thu, 26 Mar 2015 17:58:39 +0000 (13:58 -0400)]
re PR c++/65525 (ICE: sorry, unimplemented: unexpected AST of kind mem_ref (-std=c++14, ICE: in potential_constant_expression_1, at cp/constexpr.c:4432))

PR c++/65525
* constexpr.c (potential_constant_expression_1): Handle MEM_REF.

From-SVN: r221699

9 years agore PR go/65587 (C package incomplete/not working for powerpc-linux-gnu)
Ian Lance Taylor [Thu, 26 Mar 2015 17:51:57 +0000 (17:51 +0000)]
re PR go/65587 (C package incomplete/not working for powerpc-linux-gnu)

PR go/65587
debug/elf: apply relocations for SHT_RELA/EM_PPC

From-SVN: r221698

9 years agore PR middle-end/65555 (ICE: verify_gimple failed (LHS in noreturn call))
Richard Biener [Thu, 26 Mar 2015 14:22:57 +0000 (14:22 +0000)]
re PR middle-end/65555 (ICE: verify_gimple failed (LHS in noreturn call))

2015-03-26  Richard Biener  <rguenther@suse.de>

PR middle-end/65555
* tree-cfg.c (verify_gimple_call): Do not require a call to
have no LHS if it wasn't recognized as control altering yet.

* g++.dg/torture/pr65555.C: New testcase.

From-SVN: r221697

9 years agore PR tree-optimization/64715 (__builtin_object_size (..., 1) fails to locate subobject)
Jakub Jelinek [Thu, 26 Mar 2015 13:19:59 +0000 (14:19 +0100)]
re PR tree-optimization/64715 (__builtin_object_size (..., 1) fails to locate subobject)

PR tree-optimization/64715
* passes.def: Add another instance of pass_object_sizes before
ccp1.
* tree-object-size.c (pass_object_sizes::execute): In
first_pass_instance, only handle __bos (, 1) and __bos (, 3)
calls, and keep the call in the IL, as {MIN,MAX}_EXPR of the
__bos result and the computed constant.  Remove redundant
checks, obsoleted by gimple_call_builtin_p test.

* gcc.dg/builtin-object-size-15.c: New test.
* gcc.dg/pr64715-1.c: New test.
* gcc.dg/pr64715-2.c: New test.

From-SVN: r221694

9 years agovar-tracking.c (variable_tracking_main_1): Don't track variables for targetm.no_regis...
Jakub Jelinek [Thu, 26 Mar 2015 13:19:00 +0000 (14:19 +0100)]
var-tracking.c (variable_tracking_main_1): Don't track variables for targetm.no_register_allocation targets.

* var-tracking.c (variable_tracking_main_1): Don't track
variables for targetm.no_register_allocation targets.

From-SVN: r221693

9 years agore PR middle-end/65519 (unable to coalesce ssa_names 2 and 87 which are marked as...
Richard Biener [Thu, 26 Mar 2015 09:26:26 +0000 (09:26 +0000)]
re PR middle-end/65519 (unable to coalesce ssa_names 2 and 87 which are marked as MUST COALESCE)

2015-03-26  Richard Biener  <rguenther@suse.de>

PR middle-end/65519
* gnat.dg/specs/opt2.ads: Fix testcase.

From-SVN: r221690

9 years agoinstall.texi (Building a native compiler): Document new bootstrap-lto-noplugin config...
Uros Bizjak [Thu, 26 Mar 2015 08:18:56 +0000 (09:18 +0100)]
install.texi (Building a native compiler): Document new bootstrap-lto-noplugin configuration.

* doc/install.texi (Building a native compiler): Document new
bootstrap-lto-noplugin configuration.  Mention that bootstrap-lto
configuration assumes that the host supports the linker plugin.

From-SVN: r221688

9 years agot-linux (DEFAULT_ENDIAN, [...]): Remove.
Oleg Endo [Thu, 26 Mar 2015 07:40:44 +0000 (07:40 +0000)]
t-linux (DEFAULT_ENDIAN, [...]): Remove.

gcc/
* config/sh/t-linux (DEFAULT_ENDIAN, MULTILIB_EXCEPTIONS): Remove.
* config/sh/t-sh (MULTILIB_EXCEPTIONS): Handle default endian.

From-SVN: r221685

9 years agore PR target/65569 (Fix for PR target/65240 causes a regression in building Spec...
Michael Meissner [Thu, 26 Mar 2015 04:07:21 +0000 (04:07 +0000)]
re PR target/65569 (Fix for PR target/65240 causes a regression in building Spec for power4/power5/power6)

2015-03-25  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/65569
* config/rs6000/rs6000.md (extenddftf2_fprs): On VSX systems use
XXLXOR to create 0.0.  On pre-VSX systems make sure the constant
0.0 is correctly setup.
(extenddftf2_internal): Likewise.

From-SVN: r221683

9 years agore PR fortran/65541 (namelist regression)
Jerry DeLisle [Thu, 26 Mar 2015 02:44:34 +0000 (02:44 +0000)]
re PR fortran/65541 (namelist regression)

2015-03-25 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/65541
* io/write.c (nml_write_obj): Convert '+' to '%' before emitting
object names in namelists.

From-SVN: r221682

9 years agolibgo: Fix go/runtime test failure on S390.
Ian Lance Taylor [Thu, 26 Mar 2015 00:39:45 +0000 (00:39 +0000)]
libgo: Fix go/runtime test failure on S390.

The tests run out of memory on 31-bit S390 systems because
it does not have split stacks.

From-SVN: r221681

9 years agoDaily bump.
GCC Administrator [Thu, 26 Mar 2015 00:16:10 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221680

9 years agore PR testsuite/65526 (testsuite checks for arm vectorization support on non-arm...
Martin Sebor [Wed, 25 Mar 2015 23:35:54 +0000 (23:35 +0000)]
re PR testsuite/65526 (testsuite checks for arm vectorization support on non-arm targets)

PR testsuite/65526
* lib/target-supports.exp (check_effective_target_arm32): Fail early
when target isn't arm*-*-*-*.
(check_effective_target_arm_nothumb): Likewise.
(check_effective_target_arm_little_endian): Likewise.
(check_effective_target_arm_vect_no_misalign): Likewise.
(check_effective_target_aarch64_little_endian): Fail early if target
isn't aarch64*-*-*.

From-SVN: r221677

9 years agodiamonds are not valid execution threads for jump threading
Sebastian Pop [Wed, 25 Mar 2015 22:49:47 +0000 (22:49 +0000)]
diamonds are not valid execution threads for jump threading

PR tree-optimization/65177
* tree-ssa-threadupdate.c (verify_seme): Renamed verify_jump_thread.
(bb_in_bbs): New.
(duplicate_seme_region): Renamed duplicate_thread_path.  Redirect all
edges not adjacent on the path to the original code.

* gcc.dg/tree-ssa/ssa-dom-thread-10.c: New.

From-SVN: r221675

9 years agosse-13.c: Include x86intrin.h and adjust #defines.
Uros Bizjak [Wed, 25 Mar 2015 21:56:11 +0000 (22:56 +0100)]
sse-13.c: Include x86intrin.h and adjust #defines.

* gcc.target/i386/sse-13.c: Include x86intrin.h and adjust #defines.
* gcc.target/i386/sse-23.c: Do not explicitly include wmmintrin.h,
smmintrin.h and mm3dnow.h.

From-SVN: r221674

9 years agore PR go/65570 (cannot find package "runtime/cgo")
Ian Lance Taylor [Wed, 25 Mar 2015 21:19:01 +0000 (21:19 +0000)]
re PR go/65570 (cannot find package "runtime/cgo")

PR go/65570
libgo/Makefile.am: add runtime/cgo to list of standard packages

The runtime/cgo package is treated specially by the go tool.
It needs to know that it is always available for gccgo.

From-SVN: r221673

9 years agore PR c++/65558 (crash using __attribute__((__abi_tag__)) on anonymous inline namespace)
Marek Polacek [Wed, 25 Mar 2015 20:08:05 +0000 (20:08 +0000)]
re PR c++/65558 (crash using __attribute__((__abi_tag__)) on anonymous inline namespace)

PR c++/65558
* name-lookup.c (handle_namespace_attrs): Ignore abi_tag attribute
on an anonymous namespace.

* g++.dg/cpp0x/pr65558.C: New test.

From-SVN: r221672

9 years agore PR c++/61670 (ICE on invalid in tree_nop_conversion)
Marek Polacek [Wed, 25 Mar 2015 20:06:24 +0000 (20:06 +0000)]
re PR c++/61670 (ICE on invalid in tree_nop_conversion)

PR c++/61670
* class.c (remove_zero_width_bit_fields): Check for null DECL_SIZE.

* g++.dg/template/pr61670.C: New test.

From-SVN: r221671

9 years agore PR c++/54987 (missed ambiguity in template function call)
Paolo Carlini [Wed, 25 Mar 2015 17:14:40 +0000 (17:14 +0000)]
re PR c++/54987 (missed ambiguity in template function call)

2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54987
* g++.dg/template/pr54987.C: New.

From-SVN: r221668

9 years agore PR bootstrap/65537 (--with-build-config=bootstrap-lto fails on CentOS 5.11)
Uros Bizjak [Wed, 25 Mar 2015 16:01:36 +0000 (17:01 +0100)]
re PR bootstrap/65537 (--with-build-config=bootstrap-lto fails on CentOS 5.11)

config/ChangeLog:

PR bootstrap/65537
* bootstrap-lto-noplugin.mk: New build configuration.

gcc/ChangeLog:

PR bootstrap/65537
* doc/install.texi (Building a native compiler): Document new
bootstrap-lto-noplugin configuration.  Mention that bootstrap-lto
configuration assumes that the host supports the linker plugin.

From-SVN: r221667

9 years agore PR libstdc++/33394 (Add test case for Thread race segfault in std::string::append...
Alan Lawrence [Wed, 25 Mar 2015 15:46:58 +0000 (15:46 +0000)]
re PR libstdc++/33394 (Add test case for Thread race segfault in std::string::append with -O and -s)

PR libstdc++/33394
* testsuite/21_strings/basic_string/pthread33394.cc: Use
dg-additional-options.

From-SVN: r221666

9 years agore PR libgomp/64972 (Build failure in libgomp for i686-w64-mingw32 target after lates...
Kai Tietz [Wed, 25 Mar 2015 15:05:02 +0000 (16:05 +0100)]
re PR libgomp/64972 (Build failure in libgomp for i686-w64-mingw32 target after latest merge from gomp-4_0-branch)

PR libgomp/64972
* oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
(GOACC_data_start): Likewise.
* target.c (gomp_map_vars): Likewise.

From-SVN: r221665

9 years agore PR tree-optimization/62630 (gcc.dg/graphite/vect-pr43423.c XFAILed)
Richard Biener [Wed, 25 Mar 2015 12:54:12 +0000 (12:54 +0000)]
re PR tree-optimization/62630 (gcc.dg/graphite/vect-pr43423.c XFAILed)

2015-03-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62630
* gcc.dg/graphite/vect-pr43423.c: XFAIL.

From-SVN: r221662

9 years agore PR target/65508 (ICE: in initialize_inlined_parameters, at tree-inline.c:3305...
Ilya Enkovich [Wed, 25 Mar 2015 12:41:27 +0000 (12:41 +0000)]
re PR target/65508 (ICE: in initialize_inlined_parameters, at tree-inline.c:3305 with -fcheck-pointer-bounds -mmpx and nested function)

gcc/

PR target/65508
* tree-chkp.c (chkp_add_bounds_to_call_stmt): Set static
chain for generated call.

gcc/testsuite/

PR target/65508
* gcc.target/i386/mpx/pr65508.c: New.

From-SVN: r221661

9 years agopasses.c (pass_manager::execute_early_local_passes): Guard execution of pass_chkp_ins...
Richard Biener [Wed, 25 Mar 2015 12:07:10 +0000 (12:07 +0000)]
passes.c (pass_manager::execute_early_local_passes): Guard execution of pass_chkp_instrumentation_passes with flag_check_pointer_bounds.

2015-03-25  Richard Biener  <rguenther@suse.de>

* passes.c (pass_manager::execute_early_local_passes): Guard
execution of pass_chkp_instrumentation_passes with
flag_check_pointer_bounds.
(pass_chkp_instrumentation_passes::gate): Likewise.

From-SVN: r221660

9 years agoFix vimrc file link creation.
Martin Liska [Wed, 25 Mar 2015 12:05:22 +0000 (13:05 +0100)]
Fix vimrc file link creation.

* Makefile.in: Fix ln source location for vimrc file.
* Makefile.tpl: Likewise.

Co-Authored-By: Yury Gribov <y.gribov@samsung.com>
From-SVN: r221659

9 years agore PR tree-optimization/65538 (Memory leak of ipa_node_params_sum elements)
Martin Liska [Wed, 25 Mar 2015 11:47:04 +0000 (12:47 +0100)]
re PR tree-optimization/65538 (Memory leak of ipa_node_params_sum elements)

Fix PR65538.

PR tree-optimization/65538
* symbol-summary.h (function_summary::~function_summary):
Relese memory for allocated summaries.
(function_summary::release): New function.

From-SVN: r221658

9 years agoFix regression introduced at revision 221586.
Mikael Morin [Wed, 25 Mar 2015 10:15:46 +0000 (10:15 +0000)]
Fix regression introduced at revision 221586.

PR fortran/64952
PR fortran/65532
fortran/
* gfortran.h (struct gfc_namespace): New field 'types_resolved'.
* resolve.c (resolve_types): Return early if field 'types_resolved'
is set.  Set 'types_resolved' at the end.
testsuite/
* gfortran.dg/data_initialized_3.f90: New.

From-SVN: r221657

9 years agore PR lto/65515 (FAIL: gcc.c-torture/compile/limits-fndefn.c -O2 -flto -flto-partit...
Jakub Jelinek [Wed, 25 Mar 2015 09:58:18 +0000 (10:58 +0100)]
re PR lto/65515 (FAIL: gcc.c-torture/compile/limits-fndefn.c   -O2 -flto -flto-partition=none  (ICE) -- SIGSEGV for stack growth failure)

PR lto/65515
* lto-streamer-out.c (DFS::worklist): New struct.
(DFS::worklist_vec): New data member.
(DFS::next_dfs_num): Remove.
(DFS::DFS): Rewritten using worklist instead of recursion,
using most of code from DFS::DFS_write_tree.
(DFS::DFS_write_tree_body): Remove SINGLE_P argument, don't
pass it to DFS_write_tree calls.
(DFS::DFS_write_tree): Remove SINGLE_P argument, after
quick initial checks push it into worklist_vec and return.

From-SVN: r221656

9 years agore PR libstdc++/65543 (rvalue stream insertion and extraction operators incorrectly...
Paolo Carlini [Wed, 25 Mar 2015 09:57:06 +0000 (09:57 +0000)]
re PR libstdc++/65543 (rvalue stream insertion and extraction operators incorrectly implemented)

2015-03-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/65543
* include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
thinko in r150387.
* include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
Likewise.
* testsuite/27_io/rvalue_streams-2.cc: New.

From-SVN: r221655

9 years agore PR middle-end/65519 (unable to coalesce ssa_names 2 and 87 which are marked as...
Richard Biener [Wed, 25 Mar 2015 08:46:20 +0000 (08:46 +0000)]
re PR middle-end/65519 (unable to coalesce ssa_names 2 and 87 which are marked as MUST COALESCE)

2015-03-25  Richard Biener  <rguenther@suse.de>

PR middle-end/65519
* genmatch.c (expr::gen_transform): Re-write to avoid
using gimple_build.

* gnat.dg/specs/opt2.ads: New testcase.

From-SVN: r221654

9 years agoconfig.host (nios2-*-linux*): Remove 'extra_parts' setting.
Chung-Lin Tang [Wed, 25 Mar 2015 08:32:17 +0000 (08:32 +0000)]
config.host (nios2-*-linux*): Remove 'extra_parts' setting.

2015-03-25  Chung-Lin Tang  <cltang@codesourcery.com>

libgcc/
* config.host (nios2-*-linux*): Remove 'extra_parts' setting.

From-SVN: r221653

9 years agosourcebuild.texi (arm_tune_string_ops_prefer_neon): New.
Bin Cheng [Wed, 25 Mar 2015 05:58:19 +0000 (05:58 +0000)]
sourcebuild.texi (arm_tune_string_ops_prefer_neon): New.

* doc/sourcebuild.texi (arm_tune_string_ops_prefer_neon): New.

gcc/testsuite/ChangeLog
* lib/target-supports.exp (arm_tune_string_ops_prefer_neon): New.
* gcc.target/arm/memset-inline-4.c: Skip for
arm_tune_string_ops_prefer_neon.
* gcc.target/arm/memset-inline-5.c: Ditto.
* gcc.target/arm/memset-inline-6.c: Ditto.
* gcc.target/arm/memset-inline-8.c: Ditto.
* gcc.target/arm/memset-inline-9.c: Ditto.

From-SVN: r221651

9 years agoarm.opt (print_tune_info): New option.
Bin Cheng [Wed, 25 Mar 2015 05:53:55 +0000 (05:53 +0000)]
arm.opt (print_tune_info): New option.

* config/arm/arm.opt (print_tune_info): New option.
* config/arm/arm.c (arm_print_tune_info): New function.
(arm_file_start): Call arm_print_tune_info.
* config/arm/arm-protos.h (struct tune_params): Add comment.
* doc/invoke.texi (@item -mprint-tune-info): New item.
(-mtune): mention it in ARM Option Summary.

From-SVN: r221650

9 years agorl78.c (rl78_print_operand_1): Move 'p' test to correct clause.
DJ Delorie [Wed, 25 Mar 2015 05:00:15 +0000 (01:00 -0400)]
rl78.c (rl78_print_operand_1): Move 'p' test to correct clause.

* config/rl78/rl78.c (rl78_print_operand_1): Move 'p' test to
correct clause.

From-SVN: r221649

9 years agoDaily bump.
GCC Administrator [Wed, 25 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221648

9 years agoIPA ICF: enhance hash value calculated in TU
Jan Hubicka [Tue, 24 Mar 2015 21:51:08 +0000 (22:51 +0100)]
IPA ICF: enhance hash value calculated in TU

* ipa-icf-gimple.h (return_with_result): Add missing colon to dump.
* ipa-icf.c (sem_function::get_hash): Hash new declaration properties.
(sem_item::add_type): New function.
(sem_function::hash_stmt): Add TREE_TYPE of gimple_op.
(sem_function::compare_polymorphic_p): Do not consider indirect calls.
(sem_item_optimizer::update_hash_by_addr_refs): Add ODR type to hash.
(sem_function::equals_wpa): Fix typo.
* ipa-icf.h (sem_item::add_type): New function.
(symbol_compare_hashmap_traits): Replace hashing of pointer with symbol
order.

Co-Authored-By: Martin Liska <mliska@suse.cz>
From-SVN: r221645

9 years agore PR go/65417 (debug/elf: lacks support for PPC relocations)
Ian Lance Taylor [Tue, 24 Mar 2015 20:55:43 +0000 (20:55 +0000)]
re PR go/65417 (debug/elf: lacks support for PPC relocations)

PR go/65417
debug/elf: support reading debug info from 32-bit PPC objects

This is a backport of http://golang.org/7590 from the master
Go library.

From-SVN: r221644

9 years agore PR go/65462 (Use of 'go get' with gccgo is not finding dependencies correctly)
Ian Lance Taylor [Tue, 24 Mar 2015 19:50:31 +0000 (19:50 +0000)]
re PR go/65462 (Use of 'go get' with gccgo is not finding dependencies correctly)

PR go/65462
cmd: Fix dependencies for 'go get' with gccgo

Problem described in GCC BZ 65462.
Generate the list of the standard GO package names based on what was built into libgo in the libgo Makefile.
Change the var name from reqPkgSrc to reqStdPkgSrc to clarify it only affects standard GO packages.
Skip the attempted loading of a package only if it is a standard GO package and the flag is set indicating its source is not required to be available.
This requires a corresponding change to gotools to build and link in the new file containing the list of standard GO package names that was generated by the libgo Makefile.

gotools/:
PR go/65462
* Makefile.am (go_cmd_go_files): Add $(libgodir)/zstdpkglist.go.
* Makefile.in: Rebuild.

From-SVN: r221643

9 years agore PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)
Jason Merrill [Tue, 24 Mar 2015 19:40:44 +0000 (15:40 -0400)]
re PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)

PR c++/65046
* cp-tree.h (NAMESPACE_IS_INLINE): Remove.
* parser.c (cp_parser_namespace_definition): Don't set it.
* name-lookup.c (handle_namespace_attrs): Check
DECL_NAMESPACE_ASSOCIATIONS instead.

From-SVN: r221642

9 years agore PR c++/65498 (ICE in cxx_eval_call_expression when using __func__ inside dependent...
Jason Merrill [Tue, 24 Mar 2015 19:38:28 +0000 (15:38 -0400)]
re PR c++/65498 (ICE in cxx_eval_call_expression when using __func__ inside dependent context)

PR c++/65498
* pt.c (get_mostly_instantiated_function_type): Just return the
type of the partially instantiated template in DECL_TI_TEMPLATE.

From-SVN: r221641

9 years agore PR c++/58923 (g++ does not use provided conversion function for implicit conversio...
Paolo Carlini [Tue, 24 Mar 2015 17:22:27 +0000 (17:22 +0000)]
re PR c++/58923 (g++ does not use provided conversion function for implicit conversion to another type)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58923
* g++.dg/other/virtual3.C: New.

From-SVN: r221640

9 years ago* fr.po: Update.
Joseph Myers [Tue, 24 Mar 2015 16:47:21 +0000 (16:47 +0000)]
* fr.po: Update.

From-SVN: r221638

9 years agore PR c++/60130 (Sorry, unimplemented: mangling argument_pack_select)
Paolo Carlini [Tue, 24 Mar 2015 16:43:33 +0000 (16:43 +0000)]
re PR c++/60130 (Sorry, unimplemented: mangling argument_pack_select)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60130
* g++.dg/cpp0x/vt-60130.C: New.

From-SVN: r221637

9 years agore PR c++/61971 (array subscript is above array bounds [-Werror=array-bounds])
Paolo Carlini [Tue, 24 Mar 2015 15:58:05 +0000 (15:58 +0000)]
re PR c++/61971 (array subscript is above array bounds [-Werror=array-bounds])

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61971
* g++.dg/warn/Warray-bounds-7.C: New.

From-SVN: r221636

9 years agore PR libstdc++/33394 (Add test case for Thread race segfault in std::string::append...
Jonathan Wakely [Tue, 24 Mar 2015 14:47:32 +0000 (14:47 +0000)]
re PR libstdc++/33394 (Add test case for Thread race segfault in std::string::append with -O and -s)

PR libstdc++/33394
* testsuite/21_strings/basic_string/pthread33394.cc: Add test.

# Auto-generated commit message above this line, original below.
PR libstdc++/33394
* testsuite/21_strings/basic_string/pthread33394.cc: Add test.

From-SVN: r221635

9 years ago[multiple changes]
Arnaud Charlet [Tue, 24 Mar 2015 12:26:10 +0000 (13:26 +0100)]
[multiple changes]

2015-03-24  Gary Dismukes  <dismukes@adacore.com>

* sem_ch3.adb: Minor typo fix (missing paren).

2015-03-24  Robert Dewar  <dewar@adacore.com>

* sinfo.ads: Update comment.

2015-03-24  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb: Add entry for typ'Deref.
* sem_attr.adb (Deref): New GNAT attribute.
* sem_attr.ads: Add entry for new GNAT attribute Deref.
* snames.ads-tmpl: Add entries for new attribute Deref.

From-SVN: r221630

9 years ago[multiple changes]
Arnaud Charlet [Tue, 24 Mar 2015 12:21:37 +0000 (13:21 +0100)]
[multiple changes]

2015-03-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Rep_Item_Too_Early): allow pragma Convention
on generic type.

2015-03-24  Gary Dismukes  <dismukes@adacore.com>

* inline.adb: Minor typo fix.

From-SVN: r221629

9 years agobuilding_executable_programs_with_gnat.rst, [...]: Doc improvements.
Arnaud Charlet [Tue, 24 Mar 2015 11:49:20 +0000 (11:49 +0000)]
building_executable_programs_with_gnat.rst, [...]: Doc improvements.

* doc/gnat_ugn/building_executable_programs_with_gnat.rst,
doc/gnat_ugn/gnat_utility_programs.rst
doc/gnat_rm/implementation_defined_attributes.rst
doc/gnat_rm/implementation_defined_pragmas.rst
doc/gnat_rm/representation_clauses_and_pragmas.rst
doc/gnat_rm/about_this_guide.rst
doc/gnat_rm/implementation_of_ada_2012_features.rst: Doc improvements.
* gnat_rm.texi, gnat_ugn.texi: Regenerate.

From-SVN: r221628

9 years agore PR fortran/55901 ([OOP] type is (character(len=*)) misinterpreted as array)
Andre Vehreschild [Tue, 24 Mar 2015 11:47:45 +0000 (12:47 +0100)]
re PR fortran/55901 ([OOP] type is (character(len=*)) misinterpreted as array)

2015-03-24  Andre Vehreschild  <vehre@gmx.de>

PR fortran/55901
* trans-expr.c (gfc_conv_structure): Fixed indendation.
Using integer_zero_node now instead of explicitly
constructing a integer constant zero node.
(gfc_conv_derived_to_class): Add handling of _len component,
i.e., when the rhs has a string_length then assign that to
class' _len, else assign 0.
(gfc_conv_intrinsic_to_class): Likewise.

From-SVN: r221627

9 years agore PR c++/60067 (bogus error default template arguments may not be used in function...
Paolo Carlini [Tue, 24 Mar 2015 11:42:26 +0000 (11:42 +0000)]
re PR c++/60067 (bogus error default template arguments may not be used in function templates)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60067
* g++.dg/template/defarg18.C: New.

From-SVN: r221626

9 years agore PR c++/60067 (bogus error default template arguments may not be used in function...
Paolo Carlini [Tue, 24 Mar 2015 11:42:11 +0000 (11:42 +0000)]
re PR c++/60067 (bogus error default template arguments may not be used in function templates)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60067
* g++.dg/template/defarg18.C: New.

From-SVN: r221625

9 years agore PR c++/59988 (Failing to specialize template class)
Paolo Carlini [Tue, 24 Mar 2015 10:51:38 +0000 (10:51 +0000)]
re PR c++/59988 (Failing to specialize template class)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/59988
* g++.dg/cpp0x/vt-59988.C: New.

From-SVN: r221624

9 years agore PR c++/59988 (Failing to specialize template class)
Paolo Carlini [Tue, 24 Mar 2015 10:50:36 +0000 (10:50 +0000)]
re PR c++/59988 (Failing to specialize template class)

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/59988
* g++.dg/cpp0x/vt-59988.C: New.

From-SVN: r221623

9 years agore PR tree-optimization/65533 (252.eon in SPEC CPU 2000 failed to build)
Jakub Jelinek [Tue, 24 Mar 2015 10:45:09 +0000 (11:45 +0100)]
re PR tree-optimization/65533 (252.eon in SPEC CPU 2000 failed to build)

PR tree-optimization/65533
* tree-vect-slp.c (vect_build_slp_tree): Before re-trying
with swapped operands, call vect_free_slp_tree on
SLP_TREE_CHILDREN of child and truncate the SLP_TREE_CHILDREN
vector.

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

From-SVN: r221622

9 years agore PR fortran/64787 (Invalid code on sourced allocation of class(*) character string)
Andre Vehreschild [Tue, 24 Mar 2015 10:28:48 +0000 (11:28 +0100)]
re PR fortran/64787 (Invalid code on sourced allocation of class(*) character string)

gcc/fortran/ChangeLog

2015-03-24  Andre Vehreschild  <vehre@gmx.de>

PR fortran/64787
PR fortran/57456
PR fortran/63230
* class.c (gfc_add_component_ref):  Free no longer needed
ref-chains to prevent memory loss.
(find_intrinsic_vtab): For deferred length char arrays or
unlimited polymorphic objects, store the size in bytes of one
character in the size component of the vtab.
* gfortran.h: Added gfc_add_len_component () define.
* trans-array.c (gfc_trans_create_temp_array): Switched to new
function name for getting a class' vtab's field.
(build_class_array_ref): Likewise.
(gfc_array_init_size): Using the size information from allocate
more consequently now, i.e., the typespec of the entity to
allocate is no longer needed.  This is to address the last open
comment in PR fortran/57456.
(gfc_array_allocate): Likewise.
(structure_alloc_comps): gfc_copy_class_to_class () needs to
know whether the class is unlimited polymorphic.
* trans-array.h: Changed interface of gfc_array_allocate () to
reflect the no longer needed typespec.
* trans-expr.c (gfc_find_and_cut_at_last_class_ref): New.
(gfc_reset_len): New.
(gfc_get_class_array_ref): Switch to new function name for
getting a class' vtab's field.
(gfc_copy_class_to_class):  Added flag to know whether the class
to copy is unlimited polymorphic.  Adding _len dependent code
then, which calls ->vptr->copy () with four arguments adding
the length information ->vptr->copy(from, to, from_len, to_cap).
(gfc_conv_procedure_call): Switch to new function name for
getting a class' vtab's field.
(alloc_scalar_allocatable_for_assignment): Use the string_length
as computed by gfc_conv_expr and not the statically backend_decl
which may be incorrect when ref-ing.
(gfc_trans_assignment_1): Use the string_length variable and
not the rse.string_length.  The former has been computed more
generally.
* trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new
function name for getting a class' vtab's field.
(gfc_conv_intrinsic_storage_size): Likewise.
(gfc_conv_intrinsic_transfer): Likewise.
* trans-stmt.c (gfc_trans_allocate): Restructured to evaluate
source=expr3 only once before the loop over the objects to
allocate, when the objects are not arrays. Doing correct _len
initialization and calling of vptr->copy () fixing PR 64787.
(gfc_trans_deallocate): Reseting _len to 0, preventing future
errors.
* trans.c (gfc_build_array_ref): Switch to new function name
for getting a class' vtab's field.
(gfc_add_comp_finalizer_call): Likewise.
* trans.h: Define the prototypes for the gfc_class_vtab_*_get ()
and gfc_vptr_*_get () functions.
Added gfc_find_and_cut_at_last_class_ref () and
gfc_reset_len () routine prototype.  Added flag to
gfc_copy_class_to_class () prototype to signal an unlimited
polymorphic entity to copy.

gcc/testsuite/ChangeLog

2015-03-24  Andre Vehreschild  <vehre@gmx.de>

* gfortran.dg/allocate_alloc_opt_13.f90: Added tests for
source= and mold= expressions functionality.
* gfortran.dg/allocate_class_4.f90: New test.
* gfortran.dg/unlimited_polymorphic_20.f90: Added test whether
copying an unlimited polymorhpic object containing a char array
to another unlimited polymorphic object respects the _len
component.
* gfortran.dg/unlimited_polymorphic_22.f90: Extended to check
whether deferred length char array allocate works, unlimited
polymorphic object allocation from a string works and if
allocating an array of deferred length strings works.
* gfortran.dg/unlimited_polymorphic_24.f03: New test.

From-SVN: r221621

9 years agore PR c++/65513 (gcc stops with "internal compiler error")
Paolo Carlini [Tue, 24 Mar 2015 10:24:33 +0000 (10:24 +0000)]
re PR c++/65513 (gcc stops with "internal compiler error")

2015-03-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65513
* g++.dg/cpp0x/constexpr-array11.C: New.

From-SVN: r221620

9 years agore PR middle-end/65517 (ICE: in get_loop_body, at cfgloop.c:856)
Richard Biener [Tue, 24 Mar 2015 09:31:48 +0000 (09:31 +0000)]
re PR middle-end/65517 (ICE: in get_loop_body, at cfgloop.c:856)

2015-03-24  Richard Biener  <rguenther@suse.de>

PR middle-end/65517
* tree-cfg.c (remove_edge_and_dominated_blocks): Mark loops
for fixup if necessary.

* gcc.dg/torture/pr65517.c: New testcase.

From-SVN: r221619

9 years agocoindexed_1.f90: Moved from gfortran.dg/coarray/coindexed_3.f90; added dg-options.
Tobias Burnus [Tue, 24 Mar 2015 07:14:22 +0000 (08:14 +0100)]
coindexed_1.f90: Moved from gfortran.dg/coarray/coindexed_3.f90; added dg-options.

2015-03-24  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coindexed_1.f90: Moved from
        gfortran.dg/coarray/coindexed_3.f90; added dg-options.

From-SVN: r221618

9 years agogfortran.texi (_gfortran_caf_sync_memory): Improve wording.
Iain Sandoe [Tue, 24 Mar 2015 07:04:51 +0000 (07:04 +0000)]
gfortran.texi (_gfortran_caf_sync_memory): Improve wording.

2015-03-24  Iain Sandoe  <iain@codesourcery.com>
            Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (_gfortran_caf_sync_memory): Improve wording.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r221615

9 years agoextend.texi (Function Attributes): Add @cindex entries for all attributes and regular...
Sandra Loosemore [Tue, 24 Mar 2015 02:48:05 +0000 (22:48 -0400)]
extend.texi (Function Attributes): Add @cindex entries for all attributes and regularize their format.

2015-03-23  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi (Function Attributes): Add @cindex entries
for all attributes and regularize their format.  Delete text
about long-obsolete 68HC11 and 68HC12 targets.  Move misplaced
information about "eightbit_data", "tiny_data", and "model"
variable attributes to the Variable Attributes section.  Fix
some obvious typos and copy-editing issues.
(Variable Attributes, Type Attributes): Likewise add/fix
@cindex entries for all attributes.

From-SVN: r221614

9 years agoDaily bump.
GCC Administrator [Tue, 24 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221613

9 years agore PR testsuite/65506 (FAIL: gcc.dg/pr29215.c scan-tree-dump-not gimple "memcpy")
Jakub Jelinek [Mon, 23 Mar 2015 20:04:43 +0000 (21:04 +0100)]
re PR testsuite/65506 (FAIL: gcc.dg/pr29215.c scan-tree-dump-not gimple "memcpy")

2015-03-23  Jakub Jelinek  <jakub@redhat.com>

PR testsuite/65506
* gcc.dg/pr29215.c: Dump and analyze ccp1 dump instead of
gimple dump.

From-SVN: r221607

9 years agore PR target/65523 (ICE: in gimple_op, at gimple.h:2270 with -fcheck-pointer-bounds...
Jakub Jelinek [Mon, 23 Mar 2015 20:03:50 +0000 (21:03 +0100)]
re PR target/65523 (ICE: in gimple_op, at gimple.h:2270 with -fcheck-pointer-bounds -mmpx)

PR target/65523
* tree-chkp.c (chkp_build_returned_bound): Ignore
ERF_RETURNS_ARG calls if they have fewer than needed arguments.

* gcc.target/i386/pr65523.c: New test.

From-SVN: r221606

9 years agore PR lto/65475 (ICE in odr_vtable_hasher::equal (Segmentation fault))
Jakub Jelinek [Mon, 23 Mar 2015 19:51:51 +0000 (20:51 +0100)]
re PR lto/65475 (ICE in odr_vtable_hasher::equal (Segmentation fault))

PR ipa/65475
* g++.dg/lto/pr65475_0.C: Use dg-lto-options instead of
dg-options.
* g++.dg/lto/pr65475b_0.C: Likewise.

From-SVN: r221605

9 years agore PR target/65505 ([SH] ICE in sh_disp_addr_displacement)
Oleg Endo [Mon, 23 Mar 2015 18:57:58 +0000 (18:57 +0000)]
re PR target/65505 ([SH] ICE in sh_disp_addr_displacement)

gcc/
PR target/65505
* config/sh/predicates.md (simple_mem_operand,
displacement_mem_operand): Add test for reg.
(short_displacement_mem_operand): Test for displacement_mem_operand
before invoking sh_disp_addr_displacement.
* config/sh/constraints.md (Sdd, Sra): Simplify.
* config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1):
Remove redundant displacement_mem_operand tests.

gcc/testsuite/
PR target/65505
* gcc.target/sh/torture/pr65505.c: New.

From-SVN: r221604

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Georg-Johann Lay [Mon, 23 Mar 2015 18:19:01 +0000 (18:19 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

PR target/65296
* config/avr/driver-avr.c (avr_devicespecs_file): Allow to specify
the same -mmcu=MCU more than once.

From-SVN: r221602

9 years agore PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan...
Martin Sebor [Mon, 23 Mar 2015 17:37:25 +0000 (17:37 +0000)]
re PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan-tree-dump-times slp2" basic block vectorized using SLP" 1)

2015-03-23  Martin Sebor  <msebor@redhat.com>

PR testsuite/63175
* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: Scan
assembly for lvx in addition to lxv.

From-SVN: r221601

9 years agore PR libstdc++/64967 (Bootstrap fails due to errors in libstdc++ sources with `...
Jonathan Wakely [Mon, 23 Mar 2015 16:47:18 +0000 (16:47 +0000)]
re PR libstdc++/64967 (Bootstrap fails due to errors in libstdc++ sources with `--enable-symvers=gnu-versioned-namespace')

PR libstdc++/64967
* acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
* configure: Regenerate.
* src/c++11/compatibility-c++0x.cc (error_category), generic_category,
system_category): Use macros for versioned namespace.
* src/c++11/futex.cc: Add missing end macro for versioned namespace.

From-SVN: r221600

9 years agore PR bootstrap/65522 (Svn revision 221590 fails bootstrap - ../libiberty/libiberty...
Jakub Jelinek [Mon, 23 Mar 2015 15:49:02 +0000 (16:49 +0100)]
re PR bootstrap/65522 (Svn revision 221590 fails bootstrap - ../libiberty/libiberty.a(cplus-dem.o): In function `ada_demangle': cplus-dem.c:(.text+0xdb8): multiple definition of `ada_demangle' ada/adadecode.o:adadecode.c:(.text+0x863): first defined here)

PR bootstrap/65522
* ipa-devirt.c: Remove duplicate demangle.h include.

* adadecode.c (ada_demangle): Guard with IN_RTS instead of IN_GCC.

From-SVN: r221599

9 years ago* fr.po: Update.
Joseph Myers [Mon, 23 Mar 2015 15:34:57 +0000 (15:34 +0000)]
* fr.po: Update.

From-SVN: r221598

9 years agore PR target/65504 (select case with strings and -fgcse -O)
Jakub Jelinek [Mon, 23 Mar 2015 15:31:59 +0000 (16:31 +0100)]
re PR target/65504 (select case with strings and -fgcse -O)

PR target/65504
* config/i386/i386.c (ix86_copy_addr_to_reg): Set REG_POINTER
on the pseudo.
(expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Set
REG_POINTER on *destptr after adjusting it for prologue size.

* gfortran.dg/pr65504.f90: New test.

From-SVN: r221597

9 years agore PR ipa/65521 (nondeterministic -fcompare-debug failures)
Jakub Jelinek [Mon, 23 Mar 2015 15:17:20 +0000 (16:17 +0100)]
re PR ipa/65521 (nondeterministic -fcompare-debug failures)

PR ipa/65521
* ipa-icf.c (sem_item::update_hash_by_addr_refs): Hash
ultimate_alias_target ()->order ints instead of
ultimate_alias_target () pointers.

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

From-SVN: r221596

9 years agore PR tree-optimization/65518 (gcc consumes all memory with -O3)
Richard Biener [Mon, 23 Mar 2015 14:59:57 +0000 (14:59 +0000)]
re PR tree-optimization/65518 (gcc consumes all memory with -O3)

2015-03-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65518
* tree-vect-stmts.c (vectorizable_load): Reject single-element
interleaving cases we generate absymal code for.

* gcc.dg/vect/pr65518.c: New testcase.

From-SVN: r221595

9 years agore PR sanitizer/59009 (libsanitizer merge from upstream r191666 breaks bootstrap...
Christophe Lyon [Mon, 23 Mar 2015 13:43:22 +0000 (13:43 +0000)]
re PR sanitizer/59009 (libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux and aarch64-linux)

2015-03-23  Christophe Lyon  <christophe.lyon@linaro.org>

PR sanitizer/59009
* sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick
upstream r230324.
* sanitizer_common/sanitizer_platform.h: Likewise.
* sanitizer_common/sanitizer_common_syscalls.inc: Likewise.

From-SVN: r221593

9 years agore PR tree-optimization/65494 (Loop is not vectorized because of operand canonicaliza...
Richard Biener [Mon, 23 Mar 2015 12:47:54 +0000 (12:47 +0000)]
re PR tree-optimization/65494 (Loop is not vectorized because of operand canonicalization.)

2015-03-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65494
* tree-vect-slp.c (vect_build_slp_tree): Do not (re-)allocate
matches here.
(vect_analyze_slp_instance): But do that here, always and once.

* gcc.dg/vect/pr65494.c: New testcase.

From-SVN: r221592

9 years ago[expmed][trivial] Fix comment about multiplying by T-1 and adding T.
Kyrylo Tkachov [Mon, 23 Mar 2015 09:16:49 +0000 (09:16 +0000)]
[expmed][trivial] Fix comment about multiplying by T-1 and adding T.

* expmed.c (synth_mult): Fix comment about multiplying by T-1 and
adding T or multiplying by T+1 and subracting T.

From-SVN: r221588

9 years agore PR preprocessor/65238 (__has_attribute is not handled properly with -traditional...
Jakub Jelinek [Mon, 23 Mar 2015 08:02:39 +0000 (09:02 +0100)]
re PR preprocessor/65238 (__has_attribute is not handled properly with -traditional-cpp.)

PR preprocessor/65238
* internal.h (_cpp_scan_out_logical_line): Add third argument.
* directives.c (prepare_directive_trad): Pass false to it.
* traditional.c (_cpp_read_logical_line_trad,
_cpp_create_trad_definition): Likewise.
(struct fun_macro): Add paramc field.
(fun_like_macro): New function.
(maybe_start_funlike): Handle NODE_BUILTIN macros.  Initialize
macro->paramc field.
(save_argument): Use macro->paramc instead of
macro->node->value.macro->paramc.
(push_replacement_text): Formatting fix.
(recursive_macro): Use fun_like_macro helper.
(_cpp_scan_out_logical_line): Likewise.  Add BUILTIN_MACRO_ARG
argument.  Initialize fmacro.paramc field.  Handle builtin
function-like macros.

* c-c++-common/cpp/pr65238-1.c: New test.
* gcc.dg/cpp/pr65238-2.c: New test.
* gcc.dg/cpp/trad/pr65238-3.c: New test.
* gcc.dg/cpp/trad/pr65238-4.c: New test.

From-SVN: r221587

9 years agore PR fortran/64952 (Missing temporary in assignment from elemental function)
Paul Thomas [Mon, 23 Mar 2015 07:53:31 +0000 (07:53 +0000)]
re PR fortran/64952 (Missing temporary in assignment from elemental function)

2015-03-23  Paul Thomas  <pault@gcc.gnu.org>
    Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/64952
fortran/
* gfortran.h (struct symbol_attribute) : New field
'array_outer_dependency'.
* trans.h (struct gfc_ss_info): New field 'array_outer_dependency'.
* module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY.
(attr_bits): Append same value to initializer.
(mio_symbol_attribute): Handle 'array_outer_dependency' attr
in module read and write.
* resolve.c (update_current_proc_outer_array_dependency): New function.
(resolve_function, resolve_call): Add code to update current procedure's
'array_outer_dependency' attribute.
(resolve_variable): Mark current procedure with attribute
array_outer_dependency if the variable is an array coming from outside
the current namespace.
(resolve_fl_procedure): Mark a procedure without body with attribute
'array_outer_dependency'.
* trans-array.c (gfc_conv_resolve_dependencies): If any ss is
marked as 'array_outer_dependency' generate a temporary.
(gfc_walk_function_expr): If the function may reference external arrays,
mark the head gfc_ss with flag 'array_outer_dependency'.
testsuite/
* gfortran.dg/elemental_dependency_4.f90: New.
* gfortran.dg/elemental_dependency_5.f90: New.

Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r221586

9 years agore PR rtl-optimization/64317 (Ineffective allocation of PIC base register)
Jeff Law [Mon, 23 Mar 2015 05:21:04 +0000 (23:21 -0600)]
re PR rtl-optimization/64317 (Ineffective allocation of PIC base register)

       PR rtl-optimization/64317
        * Makefile.in (OBJS): Add gcse-common.c
        * gcse.c: Include gcse-common.h
        (struct modify_pair_s): Move structure definition to gcse-common.h
        (compute_transp): Move function to gcse-common.c.
        (canon_list_insert): Similarly.
        (record_last_mem_set_info): Break out some code and put it into
        gcse-common.c.  Call into the new common code.
        (compute_local_properties): Pass additional arguments to compute_transp.
        * postreload-gcse.c: Include gcse-common.h and df.h
        (modify_mem_list_set, blocks_with_calls): New variables.
        (modify_mem_list, canon_modify_mem_list, transp): Likewise.
        (get_bb_avail_insn): Pass in the expression index too.
        (alloc_mem): Allocate memory for the new bitmaps and lists.
        (free_mem): Free memory for the new bitmaps and lists.
        (insert_expr_in_table): Record a bitmap index for each entry we
        add to the table.
        (record_last_mem_set_info): Call into common code in gcse-common.c.
        (get_bb_avail_insn): If no available insn was found in the requested
        BB.  If BB has a single predecessor, see if the expression is
        transparent in BB and available in that single predecessor.
        (compute_expr_transp): New wrapper for compute_transp.
        (eliminate_partially_redundant_load): Pass expression's bitmap_index
        to get_bb_avail_insn.  Compute next_pred_bb_end a bit later.
        (gcse_after_reload_main): If there are elements in the hash table,
        then compute transparency for all the elements in the hash table.
        * gcse-common.h: New file.
        * gcse-common.c: New file.

From-SVN: r221585

9 years agocpp.texi (Search Path): Hyphenate "command-line" when used as an adjective.
Sandra Loosemore [Mon, 23 Mar 2015 01:12:06 +0000 (21:12 -0400)]
cpp.texi (Search Path): Hyphenate "command-line" when used as an adjective.

2015-03-22  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/cpp.texi (Search Path): Hyphenate "command-line" when used
as an adjective.
(System Headers): Likewise.
(Ifdef): Likewise.
(Traditional macros): Likewise.
(Invocation): Likewise.
(Option Index): Likewise.
* doc/cppopts.texi (-M): Likewise.
(-finput-charset): Likewise.
(--help): Likewise.
* doc.invoke.texi (AVR Options): Likewise.
(V850 Options): Likewise.

From-SVN: r221583

9 years agore PR lto/65475 (ICE in odr_vtable_hasher::equal (Segmentation fault))
Jan Hubicka [Mon, 23 Mar 2015 00:17:07 +0000 (01:17 +0100)]
re PR lto/65475 (ICE in odr_vtable_hasher::equal (Segmentation fault))

PR ipa/65475
* ipa-devirt.c: Include demangle.h
(odr_type_d): Add field rtti_broken.
(odr_subtypes_equivalent_p): Do not require name to match.
(compare_virtual_tables): Fix typo; if type already has ODR violation,
bypass the tests; be ready for function referneces in vtables that are
not DECL_VIRTUAL; make warnings to be OPT_Wodr.
(warn_odr): Give up for nameless types.
(warn_types_mismatch): Report mismatch in mangled names;
report mismatch in anonymous namespaces; look into component types to
give useful error; report when mismatch is dragged in from other ODR
type.
(odr_types_equivalent_p): Match types for being polymorphic; avoid
duplicated diagnostics.
(add_type_duplicate): Reorder checks so more informative ones come
first; fix typo; do not output "the extra base is defined here" when
we did not warn.
(BINFO_N_BASE_BINFOS): Relax sanity check.
* g++.dg/lto/pr65475b_0.C: New testcase.
* g++.dg/lto/pr65475b_1.C: New testcase.
* g++.dg/lto/pr65475c_0.C: New testcase.
* g++.dg/lto/pr65475c_1.C: New testcase.

From-SVN: r221582

9 years agoDaily bump.
GCC Administrator [Mon, 23 Mar 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221581

9 years agoSpeed-up def_builtin_const (ix86_valid_target_attribute).
Martin Liska [Sun, 22 Mar 2015 22:50:00 +0000 (23:50 +0100)]
Speed-up def_builtin_const (ix86_valid_target_attribute).

* config/i386/i386.c (def_builtin): Set deferred_isa_values for
masks that can potentially include a builtin.
(ix86_add_new_builtins): Introduce fast filter for isa values
that cannot trigger builtin inclusion.

From-SVN: r221577

9 years agoIPA ICF: include hash values of references.
Martin Liska [Sun, 22 Mar 2015 22:47:06 +0000 (23:47 +0100)]
IPA ICF: include hash values of references.

* ipa-icf.c (sem_item::update_hash_by_addr_refs): New function.
(sem_item::update_hash_by_local_refs): Likewise.
(sem_variable::get_hash): Empty line is fixed.
(sem_item_optimizer::execute): Include adding of hash references.
(sem_item_optimizer::update_hash_by_addr_refs): New function.
(sem_item_optimizer::build_hash_based_classes): Use local hash.
* ipa-icf.h (sem_item::update_hash_by_addr_refs): New function.
(sem_item::update_hash_by_local_refs): Likewise.

From-SVN: r221576

9 years agore PR libfortran/59513 (Fortran runtime error: Sequential READ or WRITE not allowed...
Jerry DeLisle [Sun, 22 Mar 2015 21:37:13 +0000 (21:37 +0000)]
re PR libfortran/59513 (Fortran runtime error: Sequential READ or WRITE not allowed after EOF marker, possibly use REWIND or BACKSPACE)

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

PR libgfortran/59513
* gfortran.texi (Read/Write after EOF marker): New information.

From-SVN: r221575

9 years agore PR ipa/65502 (pure-const should play well with clobbers.)
Jan Hubicka [Sun, 22 Mar 2015 21:10:24 +0000 (22:10 +0100)]
re PR ipa/65502 (pure-const should play well with clobbers.)

PR ipa/65502
* ipa-comdats.c (enqueue_references): Walk through thunks.
(ipa_comdats): Likewise.
(set_comdat_group_1): New function.

From-SVN: r221574

9 years agoadd forgoten entry.
Jan Hubicka [Sun, 22 Mar 2015 21:09:16 +0000 (21:09 +0000)]
add forgoten entry.

From-SVN: r221573

9 years agore PR libfortran/59513 (Fortran runtime error: Sequential READ or WRITE not allowed...
Jerry DeLisle [Sun, 22 Mar 2015 18:42:52 +0000 (18:42 +0000)]
re PR libfortran/59513 (Fortran runtime error: Sequential READ or WRITE not allowed after EOF marker, possibly use REWIND or BACKSPACE)

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

PR libgfortran/59513
* io/transfer.c (data_transfer_init): Do not error for
-std=legacy.

From-SVN: r221572

9 years agocontrib.texi (Contributors): Update entry for Danny Smith.
Dave Korn [Sun, 22 Mar 2015 17:08:00 +0000 (17:08 +0000)]
contrib.texi (Contributors): Update entry for Danny Smith.

* doc/contrib.texi (Contributors): Update entry for Danny Smith.

Co-Authored-By: Gerald Pfeifer <gerald@pfeifer.com>
From-SVN: r221570