gcc.git
9 years agoImplement TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook.
Robert Suchanek [Wed, 17 Jun 2015 09:55:59 +0000 (09:55 +0000)]
Implement TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook.

gcc/ChangeLog:

* config/mips/mips.c (mips_ira_change_pseudo_allocno_class): New
function.
(TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Define macro.

gcc/testsuite/ChangeLog:

* gcc.target/mips/pr65862-1.c: New test.
* gcc.target/mips/pr65862-2.c: Likewise.

From-SVN: r224549

9 years agopr54592.c: Remove dg-require-effective-target.
Uros Bizjak [Wed, 17 Jun 2015 09:34:46 +0000 (11:34 +0200)]
pr54592.c: Remove dg-require-effective-target.

        * gcc.target/i386/pr54592.c: Remove dg-require-effective-target.
        * gcc.target/i386/pr52252-atom.c: Ditto.
        * gcc.target/i386/vect-div-1.c: Ditto.
        * gcc.target/i386/rotate-5.c: Ditto.
        * gcc.target/i386/pr50202.c: Ditto.
        * gcc.target/i386/pr37843-3.c: Ditto.
        * gcc.target/i386/avx2-vect-aggressive-1.c: Ditto.
        * gcc.target/i386/pr53397-1.c: Ditto.
        * gcc.target/i386/pr55934.c: Ditto.
        * gcc.target/i386/pr37843-4.c: Ditto.
        * gcc.target/i386/pr60451.c: Ditto.
        * gcc.target/i386/pr53397-2.c: Ditto.
        * gcc.target/i386/vectorize1.c: Ditto.
        * gcc.target/i386/extract-insert-combining.c: Ditto.
        * gcc.target/i386/pr53759.c: Ditto.
        * gcc.target/i386/pr52252-core.c: Ditto.
        * gcc.target/i386/rotate-3.c: Ditto.
        * gcc.target/i386/sse-20.c: Ditto.
        * gcc.target/i386/rotate-4.c: Ditto.
        * gcc.target/i386/pr61403.c: Ditto.
        * gcc.target/i386/pr60205-2.c: Add dg-do compile directive.
        * gcc.target/i386/pr60901.c: Ditto.
        * gcc.target/i386/pr59794-7.c: Ditto.
        * gcc.target/i386/pr62208.c: Ditto.
        * gcc.target/i386/pr53416.c: Ditto.
        * gcc.target/i386/asm-dialect-1.c: Ditto.
        * gcc.target/i386/pr50038.c: Ditto.
        * gcc.target/i386/47698.c: Ditto.
        * gcc.target/i386/avx512vl-vpmuludq-1.c: Ditto.
        * gcc.target/i386/pr59794-2.c: Ditto.
        * gcc.target/i386/pr59794-3.c: Ditto.
        * gcc.target/i386/pr39058.c: Ditto.
        * gcc.target/i386/pr60205-1.c: Ditto.
        * gcc.target/i386/fma4-256-nmsubXX.c: Add dg-do run directive.
        * gcc.target/i386/sse2-movq-2.c: Ditto.

From-SVN: r224548

9 years agorevert: [multiple changes]
Richard Biener [Wed, 17 Jun 2015 07:37:40 +0000 (07:37 +0000)]
revert: [multiple changes]

2015-06-17  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66251
* tree-vect-stmts.c (vectorizable_store): Fix gathering of vectorized
stmts for SLP strided stores.

* gfortran.fortran-torture/compile/pr66251-2.f90: New testcase.

Revert
2015-05-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66251
* tree-vect-stmts.c (vectorizable_conversion): Properly
set STMT_VINFO_VEC_STMT even for the SLP case.

2015-05-26  Michael Matz  <matz@suse.de>

PR middle-end/66251
* tree-vect-stmts.c (vect_create_vectorized_demotion_stmts): Always set
STMT_VINFO_VEC_STMT, also with SLP.

From-SVN: r224545

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

From-SVN: r224544

9 years ago* include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof.
Jonathan Wakely [Tue, 16 Jun 2015 22:33:06 +0000 (23:33 +0100)]
* include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof.

From-SVN: r224540

9 years agolist.tcc (list::operator=(const list&), [...]): Use __addressof instead of operator&.
Jonathan Wakely [Tue, 16 Jun 2015 21:04:53 +0000 (22:04 +0100)]
list.tcc (list::operator=(const list&), [...]): Use __addressof instead of operator&.

* include/bits/list.tcc (list::operator=(const list&), list::merge):
Use __addressof instead of operator&.
(list::sort): Use array-to-pointer decay instead of operator&.
* include/bits/stl_list.h (list::splice): Use __addressof instead of
operator&.
* include/debug/formatter.h (_Error_formatter::_Parameter::_Parameter):
Likewise.
* include/debug/functions.h (__check_singular): Likewise.
* include/debug/list (list::splice, list::merge): Likewise.
* testsuite/23_containers/list/modifiers/addressof.cc: New.

From-SVN: r224539

9 years agore PR c++/59682 (Invalid syntax accepted: new-placement without expression-list)
Paolo Carlini [Tue, 16 Jun 2015 20:07:57 +0000 (20:07 +0000)]
re PR c++/59682 (Invalid syntax accepted: new-placement without expression-list)

/cp
2015-06-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/59682
* parser.c (cp_parser_new_placement): Reject an empty expression-list.

/testsuite
2015-06-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/59682
* g++.dg/parse/new-placement1.C: New.

From-SVN: r224537

9 years agojit: Add a test for compound assignment
David Malcolm [Tue, 16 Jun 2015 19:52:37 +0000 (19:52 +0000)]
jit: Add a test for compound assignment

gcc/testsuite/ChangeLog:
* jit.dg/all-non-failing-tests.h: Add test-compound-assignment.c.
* jit.dg/test-compound-assignment.c: New testcase.

From-SVN: r224536

9 years agoPR jit/66539: Properly add testcase
David Malcolm [Tue, 16 Jun 2015 19:44:05 +0000 (19:44 +0000)]
PR jit/66539: Properly add testcase

gcc/testsuite/ChangeLog:
PR jit/66539
* jit.dg/all-non-failing-tests.h: Add test-debug-strings.c
to "testcases" array.

From-SVN: r224535

9 years agore PR c++/66536 (ICE in build_ctor_subob_ref, at cp/tree.c:2534)
Jason Merrill [Tue, 16 Jun 2015 19:29:19 +0000 (15:29 -0400)]
re PR c++/66536 (ICE in build_ctor_subob_ref, at cp/tree.c:2534)

PR c++/66536
* tree.c (replace_placeholders_r) [CONSTRUCTOR]: Handle type
mismatch.

From-SVN: r224534

9 years agore PR c++/58063 (default arguments evaluated twice per call)
Jason Merrill [Tue, 16 Jun 2015 19:29:09 +0000 (15:29 -0400)]
re PR c++/58063 (default arguments evaluated twice per call)

PR c++/58063
* tree.c (bot_manip): Remap SAVE_EXPR.

From-SVN: r224533

9 years agoPR jit/66539: Add parentheses as needed to gcc_jit_object_get_debug_string
David Malcolm [Tue, 16 Jun 2015 18:13:44 +0000 (18:13 +0000)]
PR jit/66539: Add parentheses as needed to gcc_jit_object_get_debug_string

gcc/jit/ChangeLog:
PR jit/66539
* jit-recording.c: Within namespace gcc::jit::recording::
(rvalue::get_debug_string_parens): New function.
(binary_op::make_debug_string): Update to mimic C precedence
rules.
(binary_op_precedence): New array.
(binary_op::get_precedence): New function.
(comparison::make_debug_string): Update to mimic C precedence
rules.
(comparison_precedence): New array.
(comparison::get_precedence): New function.
(cast::make_debug_string): Update to mimic C precedence rules.
(call::make_debug_string): Likewise.
(call_through_ptr::make_debug_string): Likewise.
(array_access::make_debug_string): Likewise.
(access_field_of_lvalue::make_debug_string): Likewise.
(access_field_rvalue::make_debug_string): Likewise.
(dereference_field_rvalue::make_debug_string): Likewise.
(dereference_rvalue::make_debug_string): Likewise.
(get_address_of_lvalue::make_debug_string): Likewise.
* jit-recording.h: Within namespace gcc::jit::recording::
(precedence): New enum.
(rvalue::rvalue): Initialize field "m_parenthesized_string".
(rvalue::get_debug_string_parens): New method.
(rvalue::get_precedence): New pure virtual function.
(rvalue::m_parenthesized_string): New field.
(param::get_precedence): New function.
(global::get_precedence): New function.
(memento_of_new_rvalue_from_const::get_precedence): New function.
(memento_of_new_string_literal::get_precedence): New function.
(unary_op::get_precedence): New function.
(binary_op::get_precedence): New function.
(comparison::get_precedence): New function.
(cast::get_precedence): New function.
(call::get_precedence): New function.
(call_through_ptr::get_precedence): New function.
(array_access::get_precedence): New function.
(access_field_of_lvalue::get_precedence): New function.
(access_field_rvalue::get_precedence): New function.
(dereference_field_rvalue::get_precedence): New function.
(dereference_rvalue::get_precedence): New function.
(get_address_of_lvalue::get_precedence): New function.
(local::get_precedence): New function.

gcc/testsuite/ChangeLog:
PR jit/66539
* jit.dg/all-non-failing-tests.h: Add test-debug-strings.c.
* jit.dg/test-debug-strings.c: New test case.
* jit.dg/test-quadratic.c (make_calc_discriminant): Verify that
the discriminant has a sane debug string.

From-SVN: r224531

9 years agore PR libstdc++/65393 (std::thread shared_ptr inefficiency)
Jonathan Wakely [Tue, 16 Jun 2015 17:53:52 +0000 (18:53 +0100)]
re PR libstdc++/65393 (std::thread shared_ptr inefficiency)

PR libstdc++/65393
* src/c++11/thread.cc (thread::_M_make_thread): Replace shared_ptr
copies with moves.

From-SVN: r224530

9 years ago* ChangeLog: Fixup PR number.
Uros Bizjak [Tue, 16 Jun 2015 17:43:14 +0000 (19:43 +0200)]
* ChangeLog: Fixup PR number.

From-SVN: r224529

9 years ago* ChangeLog: Added missing ChangeLog entries.
Uros Bizjak [Tue, 16 Jun 2015 17:15:38 +0000 (19:15 +0200)]
* ChangeLog: Added missing ChangeLog entries.

From-SVN: r224528

9 years agore PR target/56766 (Fails to combine (vec_select (vec_concat ...)) to (vec_merge...
Uros Bizjak [Tue, 16 Jun 2015 17:14:00 +0000 (19:14 +0200)]
re PR target/56766 (Fails to combine (vec_select (vec_concat ...)) to (vec_merge ...))

PR target/56776
* config/i386/sse.md (*avx_addsubv4df3_1): New insn pattern.
(*avx_addsubv4df3_1s): Ditto.
(*sse3_addsubv2df3_1): Ditto.
(*sse3_addsubv2df3_1s): Ditto.
(*avx_addsubv8sf3_1): Ditto.
(*avx_addsubv8sf3_1s): Ditto.
(*sse3_addsubv4sf3_1): Ditto.
(*sse3_addsubv4sf3_1s): Ditto.

testsuite/ChangeLog:

PR target/56776
* gcc.target/i386/pr56776-1.c: New test.
* gcc.target/i386/pr56776-2.c: Ditto.

From-SVN: r224527

9 years agoloongson-shift-count-truncated-1.c: Skip on mips*-mti-linux* and mips*-img-linux...
Steve Ellcey [Tue, 16 Jun 2015 16:53:46 +0000 (16:53 +0000)]
loongson-shift-count-truncated-1.c: Skip on mips*-mti-linux* and mips*-img-linux* targets.

2015-06-16  Steve Ellcey  <sellcey@imgtec.com>

* gcc.target/mips/loongson-shift-count-truncated-1.c:
Skip on mips*-mti-linux* and mips*-img-linux* targets.
* gcc.target/mips/loongson-simd.c: Ditto.

From-SVN: r224526

9 years agomti-linux.h (MIPS_SYSVERSION_SPEC): New.
Steve Ellcey [Tue, 16 Jun 2015 16:49:06 +0000 (16:49 +0000)]
mti-linux.h (MIPS_SYSVERSION_SPEC): New.

2015-06-16  Steve Ellcey  <sellcey@imgtec.com>

* config/mips/mti-linux.h (MIPS_SYSVERSION_SPEC): New.
(SYSROOT_SUFFIX_SPEC): Update.
(SYSROOT_HEADERS_SUFFIX_SPEC): New.
(STARTFILE_PREFIX_SPEC): Update.
* config/mips/t-mti-linux (MULTILIB_EXCEPTIONS): Remove.
(MULTILIB_REQUIRED): New.
(MULTILIB_OSDIRNAMES): New.
* config/mips/t-img-linux (MULTILIB_EXCEPTIONS): Remove.
(MULTILIB_REQUIRED): New.
(MULTILIB_OSDIRNAMES): New.

From-SVN: r224525

9 years agore PR c++/66387 (ICE in make_decl_rtl with lambda)
Jason Merrill [Tue, 16 Jun 2015 14:48:56 +0000 (10:48 -0400)]
re PR c++/66387 (ICE in make_decl_rtl with lambda)

PR c++/66387
* pt.c (tsubst_copy) [VAR_DECL]: Use process_outer_var_ref.

From-SVN: r224521

9 years agoaarch64-arches.def: Add "armv8.1-a".
Matthew Wahab [Tue, 16 Jun 2015 13:38:37 +0000 (13:38 +0000)]
aarch64-arches.def: Add "armv8.1-a".

2015-06-16  Matthew Wahab  <matthew.wahab@arm.com>

* config/aarch64/aarch64-arches.def: Add "armv8.1-a".
* config/aarch64/aarch64-options-extensions.def: Update "fP",
"simd" and "crypto".  Add "lse", "pan", "lor" and "rdma".
* gcc/config/aarch64/aarch64.h (AARCH64_FL_LSE): New.
(AARCH64_FL_PAN): New.
(AARCH64_FL_LOR): New.
(AARCH64_FL_RDMA): New.
(AARCH64_FL_FOR_ARCH8_1): New.
* doc/invoke.texi (AArch64 Options): Add "armv8.1-a" to
-march. Add "lse", "pan", "lor", "rdma" to feature modifiers.

From-SVN: r224519

9 years agoFallout for new memory statistics infrastructure.
Martin Liska [Tue, 16 Jun 2015 13:24:54 +0000 (15:24 +0200)]
Fallout for new memory statistics infrastructure.

        * bitmap.c (dump_bitmap_statistics): Fix GNU coding style.
* hash-table.c (void dump_hash_table_loc_statistics): Add missing
guard.

From-SVN: r224518

9 years ago* ChangeLog: Remove duplicate entry.
Uros Bizjak [Tue, 16 Jun 2015 12:35:16 +0000 (14:35 +0200)]
* ChangeLog: Remove duplicate entry.

From-SVN: r224515

9 years agotree-vect-stmts.c (vectorizable_store): Adjust.
Richard Biener [Tue, 16 Jun 2015 11:42:28 +0000 (11:42 +0000)]
tree-vect-stmts.c (vectorizable_store): Adjust.

2015-06-16  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_store): Adjust.
(vectorizable_load): Likewise.
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Simplify.
(vect_create_data_ref_ptr): Likewise.
(bump_vector_ptr): Adjust.

* gcc.target/i386/recip-vec-sqrtf-avx.c: Disable unrolling.

From-SVN: r224514

9 years ago[Patch Testsuite obvious] gcc.target/arm/pr65647.c should not
James Greenhalgh [Tue, 16 Jun 2015 10:36:44 +0000 (10:36 +0000)]
[Patch Testsuite obvious] gcc.target/arm/pr65647.c should not
 unconditionally add -mfloat-abi=soft

gcc/testsuite/

* gcc.target/arm/pr65647.c: Do not override -mfloat-abi directives
passed by the testsuite driver.

From-SVN: r224512

9 years agotree-vect-stmts.c (vectorizable_load): Properly start loads with the first element...
Richard Biener [Tue, 16 Jun 2015 10:29:16 +0000 (10:29 +0000)]
tree-vect-stmts.c (vectorizable_load): Properly start loads with the first element if this is grouped loads.

2015-06-16  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_load): Properly start loads
with the first element if this is grouped loads.

* gcc.dg/vect/slp-perm-11.c: New testcase.

From-SVN: r224511

9 years agoARM][obvious] Fix gcc.target/arm/thumb-ifcvt.c
Christophe Lyon [Tue, 16 Jun 2015 10:19:59 +0000 (10:19 +0000)]
ARM][obvious] Fix gcc.target/arm/thumb-ifcvt.c

2015-06-16  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/thumb-ifcvt.c: Add -mno-restrict-it to
dg-options.

From-SVN: r224509

9 years ago[AArch64 Testsuite obvious] Reinstate torture-init and torture-finalize
James Greenhalgh [Tue, 16 Jun 2015 09:22:38 +0000 (09:22 +0000)]
[AArch64 Testsuite obvious] Reinstate torture-init and  torture-finalize
in advsimd-intrinsics.exp

gcc/testsuite/

* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp:
Reinstate calls to torture-init and torture-finalize.

From-SVN: r224507

9 years ago[ARM Churn] Rename LOGICAL_OP_NON_SC to LOGICAL_OP_NON_SHORT_CIRCUIT
James Greenhalgh [Tue, 16 Jun 2015 09:17:52 +0000 (09:17 +0000)]
[ARM Churn] Rename LOGICAL_OP_NON_SC to LOGICAL_OP_NON_SHORT_CIRCUIT

gcc/ChangeLog:

* config/arm/arm-protos.h (struct tune_params): Rename
log_op_non_sc to log_op_non_short_circuit, and rename enum
values to expand SC to SHORT_CIRCUIT.
* config/arm/arm.c (arm_slowmul_tune): Expand LOG_OP_NON_SC
to LOG_OP_NON_SHORT_CIRCUIT.
(arm_fastmul_tune):Likewise
(arm_strongarm_tune): Likewise.
(arm_xscale_tune): Likewise.
(arm_9e_tune): Likewise.
(arm_marvell_pj4_tune): Likewise.
(arm_v6t2_tune): Likewise.
(arm_cortex_tune): Likewise.
(arm_cortex_a8_tune): Likewise.
(arm_cortex_a7_tune): Likewise.
(arm_cortex_a15_tune): Likewise.
(arm_cortex_a53_tune): Likewise.
(arm_cortex_a57_tune): Likewise.
(arm_xgene1_tune): Likewise.
(arm_cortex_a5_tune): Likewise.
(arm_cortex_a9_tune): Likewise.
(arm_cortex_a12_tune): Likewise.
(arm_v7m_tune): Likewise.
(arm_cortex_m7_tune): Likewise.
(arm_v6m_tune): Likewise.
(arm_fa726te_tune): Likewise.

From-SVN: r224506

9 years ago[ARM][obvious] Fix gcc.target/arm/attr_thumb.c
Kyrylo Tkachov [Tue, 16 Jun 2015 08:41:09 +0000 (08:41 +0000)]
[ARM][obvious] Fix gcc.target/arm/attr_thumb.c

* gcc.target/arm/attr_thumb.c: Add -mno-restrict-it to dg-options.

From-SVN: r224504

9 years agore PR c++/58583 ([c++11] ICE with invalid non-static data member initialization in...
Nathan Sidwell [Tue, 16 Jun 2015 01:59:55 +0000 (01:59 +0000)]
re PR c++/58583 ([c++11] ICE with invalid non-static data member initialization in template)

cp/
PR c++/58583
* cp-tree.h (DECL_INSTANTIATING_NSDMI_P): New.
* init.c (get_nsdmi): Check for DEFAULT_ARG in template case and
protect it from recursive instantiation.

testsuite/
PR c++/58583
* g++.dg/cpp0x/nsdmi-template14.C: New test.

From-SVN: r224502

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

From-SVN: r224500

9 years agoescape: Analyze binary expressions.
Ian Lance Taylor [Mon, 15 Jun 2015 22:45:02 +0000 (22:45 +0000)]
escape: Analyze binary expressions.

Binary expressions might contain function calls that cause an object
to escape.  Previously, there were not analyzed.

Reviewed-on: https://go-review.googlesource.com/10660

From-SVN: r224496

9 years agoaltivec.md: Delete UNSPEC_VMLADDUHM.
David Edelsohn [Mon, 15 Jun 2015 22:17:47 +0000 (22:17 +0000)]
altivec.md: Delete UNSPEC_VMLADDUHM.

        * altivec.md: Delete UNSPEC_VMLADDUHM.
        (mulv4si3_p8): New pattern.
        (mulv4si3): Use it for POWER8.
        (mulv8hi3): Use vmladduhm with zero addend.
        (altivec_vmladduhm): Descriptive RTL.

From-SVN: r224494

9 years agoaarch64.md (mov<mode>_aarch64): Change alternative 2 to use neon_move instead of...
Jim Wilson [Mon, 15 Jun 2015 19:35:40 +0000 (19:35 +0000)]
aarch64.md (mov<mode>_aarch64): Change alternative 2 to use neon_move instead of mov_imm.

gcc/
* config/aarch64/aarch64.md (mov<mode>_aarch64): Change alternative 2
to use neon_move instead of mov_imm.
(movdi_aarch64): Change alternative 14 to use neon_move not fmov.
(movtf_aarch64): Change alternative 4 to use neon_move_q not fconstd.
* config/aarch64/aarch64.c (aarch64_valid_floating_const): Move
aarch64_float_const_zero_rtx_p check before TFmode check.
* config/aarch64/aarch64.md (movtf): Don't call force_reg if op1 is
an fp zero.
(movtf_aarch64): Separate ?rY alternative into two.  Adjust assembly
code and attributes to match.  Change condition from register_operand
to aarch64_reg_or_fp_zero for op1.  Change type for ldp from
neon_load1_2reg to load2.  Change type for stp from neon_store1_2reg
to store2.

From-SVN: r224493

9 years agore PR c++/51048 (Class template inheritance doesn't work well with function-local...
Paolo Carlini [Mon, 15 Jun 2015 19:26:27 +0000 (19:26 +0000)]
re PR c++/51048 (Class template inheritance doesn't work well with function-local types)

/cp
2015-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51048
* decl2.c (no_linkage_error): Do not issue a permerror if the DECL
using a local type is pure virtual.

/testsuite
2015-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51048
* g++.dg/cpp0x/local-type1.C: New.

From-SVN: r224492

9 years agoRemove dg-options -O2 in libgomp.c
Tom de Vries [Mon, 15 Jun 2015 18:10:51 +0000 (18:10 +0000)]
Remove dg-options -O2 in libgomp.c

2015-06-15  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2".  Use
dg-additional-options for any remaining options.
* testsuite/libgomp.c/atomic-2.c: Same.
* testsuite/libgomp.c/atomic-4.c: Same.
* testsuite/libgomp.c/atomic-5.c: Same.
* testsuite/libgomp.c/atomic-6.c: Same.
* testsuite/libgomp.c/autopar-1.c: Same.
* testsuite/libgomp.c/copyin-1.c: Same.
* testsuite/libgomp.c/copyin-2.c: Same.
* testsuite/libgomp.c/copyin-3.c: Same.
* testsuite/libgomp.c/examples-4/e.53.5.c: Same.
* testsuite/libgomp.c/nestedfn-5.c: Same.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
* testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
* testsuite/libgomp.c/pr32362-1.c: Same.
* testsuite/libgomp.c/pr32362-2.c: Same.
* testsuite/libgomp.c/pr32362-3.c: Same.
* testsuite/libgomp.c/pr39591-1.c: Same.
* testsuite/libgomp.c/pr39591-2.c: Same.
* testsuite/libgomp.c/pr39591-3.c: Same.
* testsuite/libgomp.c/pr58392.c: Same.
* testsuite/libgomp.c/pr58756.c: Same.
* testsuite/libgomp.c/simd-1.c: Same.
* testsuite/libgomp.c/simd-10.c: Same.
* testsuite/libgomp.c/simd-11.c: Same.
* testsuite/libgomp.c/simd-12.c: Same.
* testsuite/libgomp.c/simd-13.c: Same.
* testsuite/libgomp.c/simd-14.c: Same.
* testsuite/libgomp.c/simd-15.c: Same.
* testsuite/libgomp.c/simd-2.c: Same.
* testsuite/libgomp.c/simd-3.c: Same.
* testsuite/libgomp.c/simd-4.c: Same.
* testsuite/libgomp.c/simd-5.c: Same.
* testsuite/libgomp.c/simd-6.c: Same.
* testsuite/libgomp.c/simd-7.c: Same.
* testsuite/libgomp.c/simd-8.c: Same.
* testsuite/libgomp.c/simd-9.c: Same.

From-SVN: r224489

9 years agoAdd MERGE file to track the git revision of the most recent change in
Ian Lance Taylor [Mon, 15 Jun 2015 17:56:25 +0000 (17:56 +0000)]
Add MERGE file to track the git revision of the most recent change in
the master gofrontend repository.

From-SVN: r224488

9 years agocompiler: Don't crash when dumping ast of empty block.
Ian Lance Taylor [Mon, 15 Jun 2015 17:43:02 +0000 (17:43 +0000)]
compiler: Don't crash when dumping ast of empty block.

Fixes golang/go#10420.

From-SVN: r224487

9 years agore PR debug/66535 (segfault in gen_subprogram_die after debug-early merge)
Aldy Hernandez [Mon, 15 Jun 2015 16:34:53 +0000 (16:34 +0000)]
re PR debug/66535 (segfault in gen_subprogram_die after debug-early merge)

PR debug/66535
* dwarf2out.c (gen_subprogram_die): Do not check a parent's tag if
there is no parent.

From-SVN: r224486

9 years agoFix typo in libgomp/testsuite/libgomp.c/pr35625.c
Tom de Vries [Mon, 15 Jun 2015 13:57:04 +0000 (13:57 +0000)]
Fix typo in libgomp/testsuite/libgomp.c/pr35625.c

2015-06-15  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/pr35625.c: Fix typo.

From-SVN: r224483

9 years agoRemove -fopenmp in dg-options in libgomp.c
Tom de Vries [Mon, 15 Jun 2015 13:26:12 +0000 (13:26 +0000)]
Remove -fopenmp in dg-options in libgomp.c

2015-06-15  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
in dg-options.
* testsuite/libgomp.c/atomic-3.c: Same.
* testsuite/libgomp.c/debug-1.c: Same.
* testsuite/libgomp.c/nqueens-1.c: Same.
* testsuite/libgomp.c/pr26171.c: Same.
* testsuite/libgomp.c/pr48591.c: Same.
* testsuite/libgomp.c/pr64824.c: Same.
* testsuite/libgomp.c/pr64868.c: Same.
* testsuite/libgomp.c/pr66133.c: Same.
* testsuite/libgomp.c/pr66199-1.c: Same.
* testsuite/libgomp.c/pr66199-2.c: Same.
* testsuite/libgomp.c/target-8.c: Same.

From-SVN: r224480

9 years agoUse dg-additional-options for -std={gnu99,c99}
Tom de Vries [Mon, 15 Jun 2015 13:26:03 +0000 (13:26 +0000)]
Use dg-additional-options for -std={gnu99,c99}

2015-06-15  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
-std={gnu99,c99}.
* testsuite/libgomp.c/for-1.c: Same.
* testsuite/libgomp.c/for-2.c: Same.
* testsuite/libgomp.c/for-3.c: Same.
* testsuite/libgomp.c/pr35625.c: Same.
* testsuite/libgomp.c/pr39154.c: Same.
* testsuite/libgomp.c/simd-16.c: Same.
* testsuite/libgomp.c/simd-17.c: Same.

From-SVN: r224479

9 years agore PR fortran/44672 ([F08] ALLOCATE with SOURCE and no array-spec)
Andre Vehreschild [Mon, 15 Jun 2015 10:08:04 +0000 (12:08 +0200)]
re PR fortran/44672 ([F08] ALLOCATE with SOURCE and no array-spec)

gcc/testsuite/ChangeLog:

2015-06-15  Andre Vehreschild  <vehre@gmx.de>

PR fortran/44672
PR fortran/45440
PR fortran/57307
* gfortran.dg/allocate_with_source_3.f90: Removed check for
unimplemented error.
* gfortran.dg/allocate_with_source_7.f08: New test.
* gfortran.dg/allocate_with_source_8.f08: New test.

gcc/fortran/ChangeLog:

2015-06-15  Andre Vehreschild  <vehre@gmx.de>

PR fortran/44672
PR fortran/45440
PR fortran/57307
* gfortran.h: Extend gfc_code.ext.alloc to carry a
flag indicating that the array specification has to be
taken from expr3.
* resolve.c (resolve_allocate_expr): Add F2008 notify
and flag indicating source driven array spec.
(resolve_allocate_deallocate): Check for source driven
array spec, when array to allocate has no explicit
array spec.
* trans-array.c (gfc_array_init_size): Get lower and
upper bound from a tree array descriptor, except when
the source expression is an array-constructor which is
fixed to be one-based.
(retrieve_last_ref): Extracted from gfc_array_allocate().
(gfc_array_allocate): Enable allocate(array, source=
array_expression) as specified by F2008:C633.
(gfc_conv_expr_descriptor): Add class tree expression
into the saved descriptor for class arrays.
* trans-array.h: Add temporary array descriptor to
gfc_array_allocate ().
* trans-expr.c (gfc_conv_procedure_call): Special handling
for _copy() routine translation, that comes without an
interface. Third and fourth argument are now passed by value.
* trans-stmt.c (gfc_trans_allocate): Get expr3 array
descriptor for temporary arrays to allow allocate(array,
source = array_expression) for array without array
specification.

From-SVN: r224477

9 years ago[AArch64] Change %ld to %wd for HOST_WIDE_INT parameter.
Shiva Chen [Mon, 15 Jun 2015 09:58:42 +0000 (09:58 +0000)]
[AArch64] Change %ld to %wd for HOST_WIDE_INT parameter.

From-SVN: r224476

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

From-SVN: r224475

9 years agore PR ipa/66181 (/usr/include/bits/types.h:134:16: ICE: verify_type failed)
Jan Hubicka [Sun, 14 Jun 2015 23:40:12 +0000 (01:40 +0200)]
re PR ipa/66181 (/usr/include/bits/types.h:134:16: ICE: verify_type failed)

PR ipa/66181
* lto.c (compare_tree_sccs_1): Do not compare TYPE_NO_FORCE_BLK.
* lto-streamer-out.c (hash_tree): Do not hash TYPE_NO_FORCE_BLK.
* tree-streamer-out.c (pack_ts_type_common_value_fields): Do not stream
TYPE_NO_FORCE_BLK.
* tree-streamer-in.c (unpack_ts_type_common_value_fields): Likewise.

From-SVN: r224471

9 years agortl.h (classify_insn): Declare.
Richard Sandiford [Sun, 14 Jun 2015 20:25:40 +0000 (20:25 +0000)]
rtl.h (classify_insn): Declare.

gcc/
* rtl.h (classify_insn): Declare.
* emit-rtl.c (classify_insn): Move to...
* rtl.c: ...here and add generator support.
* gensupport.h (get_emit_function, needs_barrier_p): Declare.
* gensupport.c (get_emit_function, needs_barrier_p): New functions.
* genemit.c (gen_emit_seq): New function.
(gen_expand, gen_split): Use it.

From-SVN: r224470

9 years ago* sv.po: Update.
Joseph Myers [Sun, 14 Jun 2015 17:01:10 +0000 (18:01 +0100)]
* sv.po: Update.

From-SVN: r224468

9 years agocrontab: Disable snapshots from the 4.8 branch.
Richard Biener [Sun, 14 Jun 2015 10:21:05 +0000 (10:21 +0000)]
crontab: Disable snapshots from the 4.8 branch.

2015-06-14  Richard Biener  <rguenther@suse.de>

* crontab: Disable snapshots from the 4.8 branch.

From-SVN: r224466

9 years agore PR middle-end/66325 (ICE in gcc.c-torture/execute/930408-1.c, verify_type fails...
Jan Hubicka [Sun, 14 Jun 2015 07:05:03 +0000 (09:05 +0200)]
re PR middle-end/66325 (ICE in gcc.c-torture/execute/930408-1.c, verify_type fails with --enable-checking=yes on arm-none-eabi)

PR middle-end/66325
* c-decl.c (start_enum): Set TYPE_PACKED consistently among type
variants.

From-SVN: r224463

9 years agointrinsic.texi: Change \leq to < in descrition of imaginary part in argument to log.
Thomas Koenig [Sun, 14 Jun 2015 07:05:00 +0000 (07:05 +0000)]
intrinsic.texi: Change \leq to < in descrition of imaginary part in argument to log.

2015-06-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

* intrinsic.texi:  Change \leq to < in descrition of imaginary
part in argument to log.

From-SVN: r224462

9 years agoDaily bump.
GCC Administrator [Sun, 14 Jun 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r224461

9 years agoFix comment documenting make_vector_stat
Patrick Palka [Sat, 13 Jun 2015 16:29:47 +0000 (16:29 +0000)]
Fix comment documenting make_vector_stat

* tree.c (make_vector_stat): Fix comment to state that the
function returns a VECTOR_CST.

From-SVN: r224457

9 years agoRemove stale commentary in cp/call.c
Patrick Palka [Sat, 13 Jun 2015 16:22:19 +0000 (16:22 +0000)]
Remove stale commentary in cp/call.c

* call.c: Remove comment documenting the long-deleted
function build_method_call.

From-SVN: r224456

9 years agoEmit -Waddress warnings for comparing address of reference against NULL
Patrick Palka [Sat, 13 Jun 2015 16:11:15 +0000 (16:11 +0000)]
Emit -Waddress warnings for comparing address of reference against NULL

gcc/c-family/ChangeLog:

PR c++/65168
* c-common.c (c_common_truthvalue_conversion): Warn when
converting an address of a reference to a truth value.

gcc/cp/ChangeLog:

PR c++/65168
* typeck.c (cp_build_binary_op): Warn when comparing an address
of a reference against NULL.

gcc/testsuite/ChangeLog:

PR c++/65168
g++.dg/warn/Walways-true-3.C: New test.

From-SVN: r224455

9 years agogensupport.h (add_implicit_parallel): Declare.
Richard Sandiford [Sat, 13 Jun 2015 09:48:35 +0000 (09:48 +0000)]
gensupport.h (add_implicit_parallel): Declare.

gcc/
* gensupport.h (add_implicit_parallel): Declare.
* genrecog.c (add_implicit_parallel): Move to...
* gensupport.c (add_implicit_parallel): ...here.
(process_one_cond_exec): Use it.
* genemit.c (gen_insn): Likewise.

From-SVN: r224454

9 years agoAdd gcc.dg/parloops-exit-first-loop-alt-4.c
Tom de Vries [Sat, 13 Jun 2015 08:05:54 +0000 (08:05 +0000)]
Add gcc.dg/parloops-exit-first-loop-alt-4.c

2015-06-13  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/parloops-exit-first-loop-alt-4.c: New test.

* testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.

From-SVN: r224453

9 years agoUpdate parloops-exit-first-loop-alt{,-2,-3}.c
Tom de Vries [Sat, 13 Jun 2015 08:05:44 +0000 (08:05 +0000)]
Update parloops-exit-first-loop-alt{,-2,-3}.c

2015-06-13  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
* testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
(N): Define.
(main): Use N instead of hardcoded constants.

* gcc.dg/parloops-exit-first-loop-alt-2.c: Add comment.
(main): Remove superfluous attributes.
* gcc.dg/parloops-exit-first-loop-alt-3.c: Same.
* gcc.dg/parloops-exit-first-loop-alt.c: Same.

From-SVN: r224452

9 years agore PR bootstrap/66448 (Bootstrap fails on darwin after r224161)
Iain Sandoe [Sat, 13 Jun 2015 07:55:05 +0000 (07:55 +0000)]
re PR bootstrap/66448 (Bootstrap fails on darwin after r224161)

gcc:
PR bootstrap/66448
* passes.c (rest_of_decl_compilation): Do not register globals for
early debug if they are declared in built-ins.

From-SVN: r224451

9 years agoDaily bump.
GCC Administrator [Sat, 13 Jun 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r224450

9 years agore PR c++/65719 (Link error with constexpr variable template)
Jason Merrill [Fri, 12 Jun 2015 18:16:22 +0000 (14:16 -0400)]
re PR c++/65719 (Link error with constexpr variable template)

PR c++/65719
* pt.c (tsubst_decl) [VAR_DECL]: Mark namespace-scope
variables as DECL_NOT_REALLY_EXTERN.

From-SVN: r224442

9 years ago* dwarf2out.c (check_die): Protect with ENABLE_CHECKING.
Aldy Hernandez [Fri, 12 Jun 2015 13:44:15 +0000 (13:44 +0000)]
* dwarf2out.c (check_die): Protect with ENABLE_CHECKING.

From-SVN: r224431

9 years ago[ifcvt][obvious] Use std::swap instead of manually swapping
Kyrylo Tkachov [Fri, 12 Jun 2015 13:18:17 +0000 (13:18 +0000)]
[ifcvt][obvious] Use std::swap instead of manually swapping

* ifcvt.c (noce_try_store_flag_constants): Use std::swap instead of
manually swapping.
(noce_try_cmove_arith): Likewise.
(noce_get_alt_condition): Likewise.

From-SVN: r224429

9 years ago* include/precompiled/stdc++.h: Include <codecvt> and <shared_mutex>.
Jonathan Wakely [Fri, 12 Jun 2015 12:27:06 +0000 (13:27 +0100)]
* include/precompiled/stdc++.h: Include <codecvt> and <shared_mutex>.

From-SVN: r224425

9 years agoFix whitespace in changelog.
Jonathan Wakely [Fri, 12 Jun 2015 10:26:10 +0000 (11:26 +0100)]
Fix whitespace in changelog.

From-SVN: r224416

9 years agore PR libstdc++/66464 (codecvt_utf16 max_length returning incorrect value)
Jonathan Wakely [Fri, 12 Jun 2015 10:26:05 +0000 (11:26 +0100)]
re PR libstdc++/66464 (codecvt_utf16 max_length returning incorrect value)

PR libstdc++/66464
* src/c++11/codecvt.cc (codecvt_utf16_base<char32_t>::do_max_length):
Return 4 not 3.

From-SVN: r224415

9 years agogcc/
Venkataramanan Kumar [Fri, 12 Jun 2015 10:02:25 +0000 (10:02 +0000)]
gcc/
2015-06-12  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

        * common/config/i386/i386-common.c
        (OPTION_MASK_ISA_MWAITX_SET): New.
        (ix86_handle_option): Handle mwaitx.
        * config.gcc (i[34567]86-*-*): Add mwaitxintrin.h,
        (x86_64-*-*): Likewise.
        * config/i386/mwaitxintrin.h: New header.
        * config/i386/cpuid.h (bit_MWAITX):  Define.
        * config/i386/driver-i386.c (host_detect_local_cpu): Detect
        MWAITX support.
        * config/i386/i386.opt (mwaitx): New.
        * config/i386/i386-builtin-types.def
        (VOID_FTYPE_UNSIGNED_ UNSIGNED_UNSIGNED): New function type.
        * config/i386/i386-c.c: Define __MWAITX__ if needed.
        * config/i386/i386.c (ix86_target_string): Define -mmwaitx option.
        (PTA_MWAITX): New.
        (ix86_option_override_internal): Handle new option.
        (processor_alias_table): Added PTA_MWAITX.
        (ix86_valid_target_attribute_inner_p): Add OPT_mmwaitx.
        (ix86_builtins): Add IX86_BUILTIN_MWAITX, IX86_BUILTIN_MONITORX.
        (ix86_expand_builtin): Handle IX86_BUILTIN_MWAITX and
        IX86_BUILTIN_MONITORX  built-ins.
        * config/i386/i386.h (TARGET_MWAITX): New.
        * config/i386/i386.md (unspecv): Add UNSPEC_MWAITX and
        UNSPEC_MONITORX.
        (mwaitx):  New pattern.
        (monitorx_<mode>): New pattern.
        * config/i386/x86intrin.h: Include mwaitxintrin.h.
        * doc/extend.texi: Document monitorx and mwaitx builtins.
        * doc/invoke.texi: Document -mmwaitx option.

gcc/testsuite

2015-06-12  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

        * gcc.target/i386/monitorx.c: New.
        * gcc.target/i386/sse-12.c: Add -mmwaitx.
        * gcc.target/i386/sse-13.c: Ditto.
        * gcc.target/i386/sse-14.c: Ditto.
        * gcc.target/i386/sse-22.c: Ditto.
        * gcc.target/i386/sse-23.c: Ditto.
        * g++.dg/other/i386-2.C: Ditto.
        * g++.dg/other/i386-3.C: Ditto.

From-SVN: r224414

9 years agoUse atomics in guard.cc / remove special casing in targets.
Ramana Radhakrishnan [Fri, 12 Jun 2015 09:55:38 +0000 (09:55 +0000)]
Use atomics in guard.cc / remove special casing in targets.

The PowerPC, AIX, Alpha, IA64  implementations of atomic_word.h are in no
way different from what can be achieved with the generic rewrite in
Patch 1 of this series - delete these.

2015-06-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/cpu/alpha/atomic_word.h: Remove.
        * config/cpu/ia64/atomic_word.h: Remove.
        * config/cpu/powerpc/atomic_word.h: Remove.
        * config/os/aix/atomic_word.h: Remove.
        * configure.host (atomic_word_dir) [ia64, aix*, powerpc, alpha]:
        Use generic definition.

From-SVN: r224413

9 years agoUse atomics in guard.cc / remove special casing in targets.
Ramana Radhakrishnan [Fri, 12 Jun 2015 09:53:24 +0000 (09:53 +0000)]
Use atomics in guard.cc / remove special casing in targets.

The PowerPC, AIX, Alpha, IA64  implementations of atomic_word.h are in no
way different from what can be achieved with the generic rewrite in
Patch 1 of this series - delete these.

2015-06-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/cpu/alpha/atomic_word.h: Remove.
        * config/cpu/ia64/atomic_word.h: Remove.
        * config/cpu/powerpc/atomic_word.h: Remove.
        * config/os/aix/atomic_word.h: Remove.
        * configure.host (atomic_word_dir) [ia64, aix*, powerpc, alpha]:
        Use generic definition.

From-SVN: r224412

9 years agoUse atomics in guard.cc.
Ramana Radhakrishnan [Fri, 12 Jun 2015 09:49:41 +0000 (09:49 +0000)]
Use atomics in guard.cc.

This provides proper definitions for _GLIBCXX_READ_MEM_BARRIER and
_GLIBCXX_WRITE_MEM_BARRIER, rewrites the guards in terms of proper
atomic extensions and removes internal uses of
_GLIBCXX_READ_MEM_BARRIER and _GLIBCXX_WRITE_MEM_BARRIER and replaces
them with equivalent atomics.

2015-06-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/66200
PR c++/66192
* * config/cpu/generic/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER): Define
        (_GLIBCXX_WRITE_MEM_BARRIER): Likewise
        * include/bits/shared_ptr_base.h: Use ACQ_REL barrier.
        * include/ext/atomicity.h: Likewise.
        * include/tr1/shared_ptr.h: Likewise.
        * libsupc++/guard.cc (__test_and_acquire): Rewrite with atomics.
        Update comment.
        (__set_and_release): Likewise.
        * testsuite/20_util/shared_ptr/cons/43820_neg.cc (test01): Adjust for
line numbers.
        * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
        * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
Likewise.

From-SVN: r224411

9 years agoemit-rtl.c (need_atomic_barrier_p): Mask model with MEMMODEL_BASE_MASK.
Uros Bizjak [Fri, 12 Jun 2015 09:06:27 +0000 (11:06 +0200)]
emit-rtl.c (need_atomic_barrier_p): Mask model with MEMMODEL_BASE_MASK.

* emit-rtl.c (need_atomic_barrier_p): Mask model with
MEMMODEL_BASE_MASK.  Remove MEMMODEL_SYNC_* cases.

From-SVN: r224410

9 years agolto-lang.c (lto_type_for_size): Include intN types.
DJ Delorie [Fri, 12 Jun 2015 05:59:31 +0000 (01:59 -0400)]
lto-lang.c (lto_type_for_size): Include intN types.

* lto-lang.c (lto_type_for_size): Include intN types.
(lto_type_for_mode): Likewise.

From-SVN: r224408

9 years agodbxout.c (xcoff_debug_hooks): Provide a function for register_main_translation_unit...
David Edelsohn [Fri, 12 Jun 2015 00:32:08 +0000 (00:32 +0000)]
dbxout.c (xcoff_debug_hooks): Provide a function for register_main_translation_unit hook.

* dbxout.c (xcoff_debug_hooks): Provide a function for
register_main_translation_unit hook.

From-SVN: r224407

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

From-SVN: r224406

9 years agore PR sanitizer/65479 (sanitizer stack trace missing frames past #0 on powerpc64)
Martin Sebor [Fri, 12 Jun 2015 00:01:50 +0000 (00:01 +0000)]
re PR sanitizer/65479 (sanitizer stack trace missing frames past #0 on powerpc64)

2015-06-11  Martin Sebor  <msebor@redhat.com>

PR sanitizer/65479
* dwarf.c (struct line): Add new field idx.
(line_compare): Use it.
(add_line): Set it.
(read_line_info): Reset it.

From-SVN: r224402

9 years agors6000.c (rs6000_pre_atomic_barrier): Remove SYNC variants cases from switch.
David Edelsohn [Fri, 12 Jun 2015 00:00:53 +0000 (00:00 +0000)]
rs6000.c (rs6000_pre_atomic_barrier): Remove SYNC variants cases from switch.

       * config/rs6000/rs6000.c (rs6000_pre_atomic_barrier): Remove SYNC
        variants cases from switch.
        (rs6000_post_atomic_barrier): Same.
        (rs6000_expand_atomic_compare_and_swap): Use memmodel_base.
        (rs6000_expand_atomic_exchange): Same.
        (rs6000_expand_atomic_op): Same.
        * config/rs6000/sync.md (mem_thread_fence): Use memodel_base. Remove
        SYNC variants cases from switch.
        (atomic_load): Same.
        (atomic_store): Same.

From-SVN: r224401

9 years agotuple (__is_tuple_like_impl): Disambiguate array in debug and profile modes.
Jonathan Wakely [Thu, 11 Jun 2015 23:22:19 +0000 (00:22 +0100)]
tuple (__is_tuple_like_impl): Disambiguate array in debug and profile modes.

* include/std/tuple (__is_tuple_like_impl): Disambiguate array in
debug and profile modes.
* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adjust tests
for swap in C++11 and later.

From-SVN: r224397

9 years agopa.c (pa_output_global_address): Handle LABEL_REF plus CONST_INT for goto.
John David Anglin [Thu, 11 Jun 2015 23:20:33 +0000 (23:20 +0000)]
pa.c (pa_output_global_address): Handle LABEL_REF plus CONST_INT for goto.

* config/pa/pa.c (pa_output_global_address): Handle LABEL_REF plus
CONST_INT for goto.

From-SVN: r224396

9 years agostringop-2.c: Fix ifdef __mips.
Steve Ellcey [Thu, 11 Jun 2015 21:53:44 +0000 (21:53 +0000)]
stringop-2.c: Fix ifdef __mips.

2015-06-11  Steve Ellcey  <sellcey@imgtec.com>

* gcc.dg/tree-prof/stringop-2.c: Fix ifdef __mips.

From-SVN: r224394

9 years agore PR bootstrap/66448 (Bootstrap fails on darwin after r224161)
Aldy Hernandez [Thu, 11 Jun 2015 20:46:46 +0000 (20:46 +0000)]
re PR bootstrap/66448 (Bootstrap fails on darwin after r224161)

PR bootstrap/66448
* dwarf2out.c (check_die): Check for common duplicate attributes.
(add_location_or_const_value_attribute): Do not add duplicate
attributes.
(gen_formal_parameter_die): Do not add DW_AT_artificial the second
time around.
(gen_struct_or_union_type_die): Bail early if TREE_ASM_WRITTEN.
(gen_type_die_with_usage): Call check_die.
(dwarf2out_decl): Only call check_die() when ENABLE_CHECKING.

From-SVN: r224393

9 years agodwarf2out.c (prune_unused_types): Handle unused top-level limbo dies.
Jason Merrill [Thu, 11 Jun 2015 17:33:40 +0000 (13:33 -0400)]
dwarf2out.c (prune_unused_types): Handle unused top-level limbo dies.

* dwarf2out.c (prune_unused_types): Handle unused top-level limbo
dies.

From-SVN: r224391

9 years ago* match.pd ((x & y) ^ (x | y)): Don't check for single_use.
Marek Polacek [Thu, 11 Jun 2015 17:18:34 +0000 (17:18 +0000)]
* match.pd ((x & y) ^ (x | y)): Don't check for single_use.

From-SVN: r224390

9 years agoFix misplaced ChangeLog entries
Pierre-Marie de Rodat [Thu, 11 Jun 2015 16:03:47 +0000 (16:03 +0000)]
Fix misplaced ChangeLog entries

From-SVN: r224387

9 years agore PR bootstrap/66252 (bootstrap comparison failures on sparc-linux)
Eric Botcazou [Thu, 11 Jun 2015 15:56:30 +0000 (15:56 +0000)]
re PR bootstrap/66252 (bootstrap comparison failures on sparc-linux)

PR bootstrap/66252
* config/sparc/sparc.c (hard_regno_mode_classes): Add ??? comment.
* config/sparc/sparc.md (zero_extendsidi2_insn_sp32): Use single order.
(*addx_extend_sp32): Fix pasto.
(*subx_extend): Rename into...
(*subx_extend_sp32): ...this.
(*adddi3_extend_sp32): Add earlyclobber.
(*subdi3_insn_sp32): Likewise.
(*subdi3_extend_sp32): Likewise.
(*and_not_di_sp32): Likewise.
(*or_not_di_sp32): Likewise.
(*xor_not_di_sp32): Likewise.
(*negdi2_sp32): Likewise.
(*one_cmpldi2_sp32): Likewise.

From-SVN: r224384

9 years agore PR fortran/66079 (memory leak with source allocation in internal subprogram)
Paul Thomas [Thu, 11 Jun 2015 15:49:32 +0000 (15:49 +0000)]
re PR fortran/66079 (memory leak with source allocation in internal subprogram)

2015-06-11  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/66079
* trans-expr.c (gfc_conv_procedure_call): Allocatable scalar
function results must be freed and nullified after use. Create
a temporary to hold the result to prevent duplicate calls.
* trans-stmt.c (gfc_trans_allocate): Rename temporary variable
as 'source'. Deallocate allocatable components of non-variable
'source's.

2015-06-11  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/66079
* gfortran.dg/allocatable_scalar_13.f90: New test

From-SVN: r224383

9 years agore PR c++/66445 (ICE with lambda in stmt expression in a template)
Jason Merrill [Thu, 11 Jun 2015 15:45:08 +0000 (11:45 -0400)]
re PR c++/66445 (ICE with lambda in stmt expression in a template)

PR c++/66445
* constexpr.c (potential_constant_expression_1): Handle a
DECL_EXPR of TYPE_DECL.

From-SVN: r224382

9 years agore PR c++/66450 ([C++11][constexpr] Issues when delegating implicit copy constructor...
Jason Merrill [Thu, 11 Jun 2015 15:45:01 +0000 (11:45 -0400)]
re PR c++/66450 ([C++11][constexpr] Issues when delegating implicit copy constructor in constexpr function)

PR c++/66450
* constexpr.c (cxx_eval_store_expression): Avoid messing up outer
ctx->ctor.

From-SVN: r224381

9 years agoRestore DW_AT_abstract_origin for cross-unit call sites
Pierre-Marie de Rodat [Thu, 11 Jun 2015 12:40:10 +0000 (12:40 +0000)]
Restore DW_AT_abstract_origin for cross-unit call sites

PR debug/66503

gcc/ChangeLog:
* debug.h (struct gcc_debug_hooks): Add a
register_main_translation_unit hook.
* debug.c (do_nothing_debug_hooks): Provide a function for this
new hook.
* dbxout.c (dbx_debug_hooks): Likewise.
* sdbout.c (sdb_debug_hooks): Likewise.
* vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
* dwarf2out.c (main_translation_unit): New global variable.
(dwarf2out_register_main_translation_unit): New function
implementing the new hook.
(dwarf2_debug_hooks): Assign
dwarf2out_register_main_translation_unit to this new hook.
(dwarf2out_init): Associate any main translation unit to
comp_unit_die ().
* c/c-decl.c (pop_scope): Register the main translation unit
through the new debug hook.
* cp/decl.c (cxx_init_decl_processing): Likewise.

gcc/ada/ChangeLog:
* gcc-interface/utils.c (get_global_context): Register the main
translation unit through the new debug hook.

gcc/fortran/ChangeLog:
* f95-lang.c (gfc_create_decls): Register the main translation
unit through the new debug hook.

From-SVN: r224371

9 years agomatch.pd ((x & y) ^ (x | y) -> x ^ y): New pattern.
Marek Polacek [Thu, 11 Jun 2015 12:37:37 +0000 (12:37 +0000)]
match.pd ((x & y) ^ (x | y) -> x ^ y): New pattern.

* match.pd ((x & y) ^ (x | y) -> x ^ y): New pattern.

* gcc.dg/fold-xor-3.c: New test.

From-SVN: r224370

9 years ago* match.pd: Use single_use throughout.
Marek Polacek [Thu, 11 Jun 2015 10:42:44 +0000 (10:42 +0000)]
* match.pd: Use single_use throughout.

From-SVN: r224368

9 years ago[ARM] Restrict MAX_CONDITIONAL_EXECUTE when -mrestrict-it is in place
Kyrylo Tkachov [Thu, 11 Jun 2015 10:01:11 +0000 (10:01 +0000)]
[ARM] Restrict MAX_CONDITIONAL_EXECUTE when -mrestrict-it is in place

* config/arm/arm.c (arm_option_params_internal): When optimising
for speed set max_insns_skipped when arm_restrict_it.

* gcc.target/arm/short-it-ifcvt-1.c: New test.
* gcc.target/arm/short-it-ifcvt-2.c: Likewise.

From-SVN: r224367

9 years agos/recogniwed/recognized
Christian Bruel [Thu, 11 Jun 2015 09:06:26 +0000 (11:06 +0200)]
s/recogniwed/recognized

From-SVN: r224366

9 years agoAdd ARM/thumb pragma target
Christian Bruel [Thu, 11 Jun 2015 08:51:17 +0000 (10:51 +0200)]
Add ARM/thumb pragma target

PR target/52144
* config/arm/arm-c.c (arm_cpu_cpp_builtins): Conditionally define
 macros in ...
(arm_cpu_builtins): New function.
(arm_pragma_target_parse): Call arm_cpu_builtins.
* config/arm/arm-protos.h (arm_cpu_builtins): Declare.
(arm_register_target_pragmas): Likewise.
* config/arm/arm.h (REGISTER_TARGET_PRAGMAS):
 Call arm_register_target_pragmas.
* config/arm/arm-c.c (arm_register_target_pragmas): New function.
(arm_pragma_target_parse): Likewise.

PR target/52144
* gcc.target/arm/pragma_attribute.c: New test.

From-SVN: r224365

9 years agoDaily bump.
GCC Administrator [Thu, 11 Jun 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r224363

9 years agosh.md (tstsi_t): Add '?' modifier to 'r' alternative of the 2nd operand to fix failur...
Kaz Kojima [Wed, 10 Jun 2015 21:45:37 +0000 (21:45 +0000)]
sh.md (tstsi_t): Add '?' modifier to 'r' alternative of the 2nd operand to fix failures for...

* config/sh/sh.md (tstsi_t): Add '?' modifier to 'r' alternative of
  the 2nd operand to fix failures for gcc.target/sh/pr49263-2.c with -mlra.

From-SVN: r224349

9 years agomangle-regparm.C (dg-optiond): Add -save-temps.
Uros Bizjak [Wed, 10 Jun 2015 18:28:58 +0000 (20:28 +0200)]
mangle-regparm.C (dg-optiond): Add -save-temps.

* g++.dg/abi/mangle-regparm.C (dg-optiond): Add -save-temps.

From-SVN: r224341

9 years agore PR target/66473 (ICE: in extract_insn, at recog.c:2343 (unrecognizable insn) with...
Uros Bizjak [Wed, 10 Jun 2015 18:23:31 +0000 (20:23 +0200)]
re PR target/66473 (ICE: in extract_insn, at recog.c:2343 (unrecognizable insn) with -mavx512f)

PR target/66473
* config/i386/i386.c (ix86_expand_vector_set): Use gen_int_mode
to prepare mask operand for AVX512 modes.

testsuite/ChangeLog:

PR target/66473
* gcc.target/i386/pr66473.c: New test.

From-SVN: r224340

9 years agore PR target/66474 (Document the use of %x in powerpc asm statements)
Michael Meissner [Wed, 10 Jun 2015 16:51:49 +0000 (16:51 +0000)]
re PR target/66474 (Document the use of %x in powerpc asm statements)

2015-06-10  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/66474
* doc/md.texi (Machine Constraints): Document that on the PowerPC
if you use a constraint that targets a VSX register, you must use
%x<n> in the template.

From-SVN: r224332

9 years agore PR c++/66289 ("error: ambiguous template instantiation" with partial specializatio...
Jason Merrill [Wed, 10 Jun 2015 15:17:57 +0000 (11:17 -0400)]
re PR c++/66289 ("error: ambiguous template instantiation" with partial specialization defined in terms of alias template)

PR c++/66289
* cp-tree.h (TEMPLATE_DECL_COMPLEX_ALIAS_P): New.
* pt.c (push_template_decl_real): Set it.
(dependent_alias_template_spec_p): Use it.
(dependent_type_p_r): Use dependent_alias_template_spec_p.
(uses_all_template_parms_data, uses_all_template_parms_r)
(complex_alias_template_p): New.
(get_template_parm_index): Handle BOUND_TEMPLATE_TEMPLATE_PARM.

From-SVN: r224331

9 years agoxtensa: implement trap pattern
Max Filippov [Wed, 10 Jun 2015 15:07:40 +0000 (15:07 +0000)]
xtensa: implement trap pattern

2015-06-10  Max Filippov  <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.h (TARGET_DEBUG): New definition.
* config/xtensa/xtensa.md (define_attr "type"): New type "trap".
(define_insn "trap"): New definition.

From-SVN: r224330