gcc.git
11 years agore PR target/57615 (power8 support does not deal with -mquad-memory -mno-vsx)
Michael Meissner [Fri, 14 Jun 2013 20:52:44 +0000 (20:52 +0000)]
re PR target/57615 (power8 support does not deal with -mquad-memory -mno-vsx)

2013-06-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57615
* config/rs6000/rs6000.md (mov<mode>_ppc64): Call
rs6000_output_move_128bit to handle emitting quad memory
operations.  Set attribute length to 8 bytes.

From-SVN: r200107

11 years agogimple.h (gimple_can_coalesce_p): Prototype.
Jeff Law [Fri, 14 Jun 2013 18:52:32 +0000 (12:52 -0600)]
gimple.h (gimple_can_coalesce_p): Prototype.

* gimple.h (gimple_can_coalesce_p): Prototype.
* tree-ssa-coalesce.c (gimple_can_coalesce_p): New function.
(create_outofssa_var_map, coalesce_partitions): Use it.
* tree-ssa-uncprop.c (uncprop_into_successor_phis): Similarly.
* tree-ssa-live.c (var_map_base_init): Use TYPE_CANONICAL
if it's available.

* gcc.dg/tree-ssa/coalesce-1.c: New test.

From-SVN: r200103

11 years agocompiler: fix computation of Offsetof.
Ian Lance Taylor [Fri, 14 Jun 2013 17:59:48 +0000 (17:59 +0000)]
compiler: fix computation of Offsetof.

The implied offsets must be taken into account
when the selector involves anonymous fields.

From-SVN: r200098

11 years agoaarch64-simd.md (aarch64_<su>mlal_lo<mode>): New pattern.
Vidya Praveen [Fri, 14 Jun 2013 16:53:10 +0000 (17:53 +0100)]
aarch64-simd.md (aarch64_<su>mlal_lo<mode>): New pattern.

gcc/ChangeLog

2013-06-14  Vidya Praveen <vidyapraveen@arm.com>

* config/aarch64/aarch64-simd.md (aarch64_<su>mlal_lo<mode>):
New pattern.
(aarch64_<su>mlal_hi<mode>, aarch64_<su>mlsl_lo<mode>): Likewise.
(aarch64_<su>mlsl_hi<mode>, aarch64_<su>mlal<mode>): Likewise.
(aarch64_<su>mlsl<mode>): Likewise.

gcc/testsuite/ChangeLog

2013-06-14  Vidya Praveen <vidyapraveen@arm.com>

* gcc.target/aarch64/vect_smlal_1.c: New file.

From-SVN: r200096

11 years ago* Makefile.in (TARGET_H): Add insn-codes.h.
Mike Stump [Fri, 14 Jun 2013 16:27:43 +0000 (16:27 +0000)]
* Makefile.in (TARGET_H): Add insn-codes.h.

From-SVN: r200093

11 years agoMAINTAINERS (Write After Approval): Add myself.
Vidya Praveen [Fri, 14 Jun 2013 16:21:48 +0000 (17:21 +0100)]
MAINTAINERS (Write After Approval): Add myself.

2013-06-14  Vidya Praveen  <vidyapraveen@arm.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r200092

11 years agore PR fortran/57508 ([OOP] Intrinsic assignment+defined-assignment for comps: PROCEDU...
Tobias Burnus [Fri, 14 Jun 2013 11:24:27 +0000 (13:24 +0200)]
re PR fortran/57508 ([OOP] Intrinsic assignment+defined-assignment for comps: PROCEDURE attribute of '_F.DA0' conflicts with VARIABLE attribute)

2013-06-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57508
        * resolve.c (get_temp_from_expr): Don't copy function
        result attributes to temporary.

2013-06-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57508
        * gfortran.dg/defined_assignment_7.f90: New.

From-SVN: r200089

11 years agore PR c++/57599 (result of dynamic_cast<cv T> is just T)
Paolo Carlini [Fri, 14 Jun 2013 09:22:03 +0000 (09:22 +0000)]
re PR c++/57599 (result of dynamic_cast<cv T> is just T)

/cp
2013-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57599
* rtti.c (build_dynamic_cast_1): In case of cast to an unambiguous
accessible base simply forward to build_static_cast.

/testsuite
2013-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57599
* g++.dg/rtti/dyncast6.C: New.
* g++.dg/cpp0x/dyncast1.C: Likewise.

From-SVN: r200088

11 years agoconfigure.host (abi_baseline_pair): Match powerpc64*.
Alan Modra [Fri, 14 Jun 2013 08:40:47 +0000 (18:10 +0930)]
configure.host (abi_baseline_pair): Match powerpc64*.

* configure.host (abi_baseline_pair): Match powerpc64*.

From-SVN: r200087

11 years agore PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64)
Alan Modra [Fri, 14 Jun 2013 08:37:30 +0000 (18:07 +0930)]
re PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64)

PR middle-end/57134
PR middle-end/57586
* expr.c (expand_expr_real_1 <normal_inner_ref>): Pass
EXPAND_MEMORY and EXPAND_WRITE to recursive call.  Don't use
bitfield expansion when EXPAND_MEMORY.
(expand_expr_real_1 <VIEW_CONVERT_EXPR>): Pass modifier likewise.

* gcc.dg/pr57134.c: New.

From-SVN: r200086

11 years agore PR fortran/57596 (Wrong code for allocatable deferred-length strings)
Tobias Burnus [Fri, 14 Jun 2013 07:41:42 +0000 (09:41 +0200)]
re PR fortran/57596 (Wrong code for allocatable deferred-length strings)

2013-06-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57596
        * trans-decl.c (gfc_trans_deferred_vars): Honor OPTIONAL
        for nullify and deferred-strings' length variable.

2013-06-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57596
        * gfortran.dg/deferred_type_param_9.f90: New.

From-SVN: r200084

11 years agoDaily bump.
GCC Administrator [Fri, 14 Jun 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200083

11 years agotype_traits (is_function): Support ref-qualified functions.
Daniel Kruegler [Thu, 13 Jun 2013 23:18:27 +0000 (23:18 +0000)]
type_traits (is_function): Support ref-qualified functions.

2013-06-13  Daniel Krugler  <daniel.kruegler@gmail.com>

* include/std/type_traits (is_function): Support ref-qualified
functions.
(is_copy_constructible, is_move_constructible, is_copy_assignable,
is_move_assignable, is_nothrow_copy_constructible,
is_nothrow_move_constructible, is_nothrow_copy_assignable,
is_nothrow_move_assignable): Implement LWG 2196.
(add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
LWG 2101.
(__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
unused.
* testsuite/20_util/add_lvalue_reference/value.cc: Extend.
* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
* testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_assignable/value.cc: Likewise.
* testsuite/20_util/is_constructible/value-2.cc: Likewise.
* testsuite/20_util/is_copy_assignable/value.cc: Likewise.
* testsuite/20_util/is_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_function/value.cc: Likewise.
* testsuite/20_util/is_move_assignable/value.cc: Likewise.
* testsuite/20_util/is_move_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.

* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r200080

11 years agors6000.c (rs6000_option_override_internal): Move test for clearing quad memory on...
Michael Meissner [Thu, 13 Jun 2013 19:46:29 +0000 (19:46 +0000)]
rs6000.c (rs6000_option_override_internal): Move test for clearing quad memory on 32-bit later.

2013-06-13  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_option_override_internal): Move
test for clearing quad memory on 32-bit later.

From-SVN: r200074

11 years agofold-const.c (negate_expr_p): Handle VECTOR_CST.
Marc Glisse [Thu, 13 Jun 2013 19:39:19 +0000 (21:39 +0200)]
fold-const.c (negate_expr_p): Handle VECTOR_CST.

2013-06-13  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* fold-const.c (negate_expr_p): Handle VECTOR_CST.
(fold_negate_expr): Likewise.
(fold_real_zero_addition_p): Handle vectors.
(fold_binary_loc) <PLUS_EXPR, MINUS_EXPR>: Likewise.

gcc/testsuite/
* gcc.dg/fold-minus-1.c: New testcase.

From-SVN: r200073

11 years agovarasm.c (force_const_mem): Revert 2013-06-07 change.
Alan Modra [Thu, 13 Jun 2013 15:28:42 +0000 (00:58 +0930)]
varasm.c (force_const_mem): Revert 2013-06-07 change.

* varasm.c (force_const_mem): Revert 2013-06-07 change.

From-SVN: r200071

11 years agoCommit forgotten file
Mikael Morin [Thu, 13 Jun 2013 14:30:17 +0000 (14:30 +0000)]
Commit forgotten file

From-SVN: r200070

11 years agore PR fortran/49074 ([OOP] Defined assignment w/ CLASS arrays: Incomplete error message)
Mikael Morin [Thu, 13 Jun 2013 14:26:47 +0000 (14:26 +0000)]
re PR fortran/49074 ([OOP] Defined assignment w/ CLASS arrays: Incomplete error message)

fortran/
PR fortran/49074
* trans-expr.c (gfc_conv_variable): Don't walk the reference chain.
Handle NULL array references.
(gfc_conv_procedure_call): Remove code handling NULL array references.

testsuite/
PR fortran/49074
* gfortran.dg/typebound_assignment_5.f03: New.

From-SVN: r200069

11 years agoipa.c (cgraph_externally_visible_p, [...]): Local comdats are not externally visible.
Jan Hubicka [Thu, 13 Jun 2013 10:00:04 +0000 (12:00 +0200)]
ipa.c (cgraph_externally_visible_p, [...]): Local comdats are not externally visible.

* ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p):
Local comdats are not externally visible.
* symtab.c (dump_symtab_base): Dump externally visible.
(verify_symtab_base): Verify back links in the symtab hash.

From-SVN: r200064

11 years agofold-const.c (operand_equal_p): Consider NOP_EXPR and CONVERT_EXPR as equal nodes.
Bin Cheng [Thu, 13 Jun 2013 08:44:38 +0000 (08:44 +0000)]
fold-const.c (operand_equal_p): Consider NOP_EXPR and CONVERT_EXPR as equal nodes.

* fold-const.c (operand_equal_p): Consider NOP_EXPR and
CONVERT_EXPR as equal nodes.

From-SVN: r200062

11 years agortlanal.c (noop_move_p): Check the code to be executed for COND_EXEC.
Bin Cheng [Thu, 13 Jun 2013 08:33:39 +0000 (08:33 +0000)]
rtlanal.c (noop_move_p): Check the code to be executed for COND_EXEC.

* rtlanal.c (noop_move_p): Check the code to be executed for
COND_EXEC.

From-SVN: r200061

11 years agomodified_bessel_func.tcc (__gnu_cxx::__airy_ai(), [...]): Remove.
Paolo Carlini [Thu, 13 Jun 2013 08:25:36 +0000 (08:25 +0000)]
modified_bessel_func.tcc (__gnu_cxx::__airy_ai(), [...]): Remove.

2013-06-13  Paolo Carlini  <paolo.carlini@oracle.com>

* include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
__gnu_cxx::__airy_bi()): Remove.
* testsuite/tr1/5_numerical_facilities/special_functions/
10_cyl_bessel_k/airy.cc: Fix.

From-SVN: r200060

11 years agotree-ssa-forwprop.c (simplify_bitwise_binary, [...]): Generalize to complex and vector.
Marc Glisse [Thu, 13 Jun 2013 08:21:01 +0000 (10:21 +0200)]
tree-ssa-forwprop.c (simplify_bitwise_binary, [...]): Generalize to complex and vector.

2013-06-13  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* tree-ssa-forwprop.c (simplify_bitwise_binary, associate_plusminus):
Generalize to complex and vector.
* tree.c (build_all_ones_cst): New function.
* tree.h (build_all_ones_cst): Declare it.

gcc/testsuite/
* gcc.dg/tree-ssa/forwprop-27.c: New testcase.

From-SVN: r200059

11 years agoada-tree.h (DECL_BY_DOUBLE_REF_P): Delete.
Eric Botcazou [Thu, 13 Jun 2013 07:50:24 +0000 (07:50 +0000)]
ada-tree.h (DECL_BY_DOUBLE_REF_P): Delete.

* gcc-interface/ada-tree.h (DECL_BY_DOUBLE_REF_P): Delete.
* gcc-interface/gigi.h (annotate_object): Adjust prototype.
(convert_vms_descriptor): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_param): Do not pass fat pointer
types by double dereference.
(annotate_object): Remove BY_DOUBLE_REF parameter and adjust.
(gnat_to_gnu_entity): Adjust calls to annotate_object.
* gcc-interface/trans.c (Identifier_to_gnu): Do not deal with double
dereference.
(Call_to_gnu): Likewise.
(build_function_stub): Adjust call to convert_vms_descriptor.
(Subprogram_Body_to_gnu): Adjust call to annotate_object.
* gcc-interface/utils.c (convert_vms_descriptor): Remove BY_REF
parameter and adjust.

From-SVN: r200057

11 years agors6000.h (LONG_DOUBLE_LARGE_FIRST): Define.
Alan Modra [Thu, 13 Jun 2013 03:22:20 +0000 (12:52 +0930)]
rs6000.h (LONG_DOUBLE_LARGE_FIRST): Define.

* config/rs6000/rs6000.h (LONG_DOUBLE_LARGE_FIRST): Define.
* config/rs6000/rs6000.md (signbittf2): New insn.
(extenddftf2_internal): Use LONG_DOUBLE_LARGE_FIRST.
(abstf2_internal, cmptf_internal2): Likewise.
* config/rs6000/spe.md (spe_abstf2_cmp, spe_abstf2_tst): Likewise.

From-SVN: r200055

11 years agore PR libstdc++/56430 (In __airy: return-statement with a value, in function returnin...
Ed Smith-Rowland [Thu, 13 Jun 2013 03:04:58 +0000 (03:04 +0000)]
re PR libstdc++/56430 (In __airy: return-statement with a value, in function returning 'void'.)

2013-06-12  Ed Smith-Rowland  <3dw4rd@verizon.net>

PR libstdc++/56430
* include/tr1/modified_bessel_func.tcc (__airy): Remove return
from void function.
(__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
* testsuite/tr1/5_numerical_facilities/special_functions/
10_cyl_bessel_k/airy.cc: New.

From-SVN: r200054

11 years agoDaily bump.
GCC Administrator [Thu, 13 Jun 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200052

11 years agocompiler: implement Go 1.1 spec of terminating statements.
Ian Lance Taylor [Wed, 12 Jun 2013 23:49:32 +0000 (23:49 +0000)]
compiler: implement Go 1.1 spec of terminating statements.

From-SVN: r200047

11 years agors6000.c (emit_load_locked): Add support for power8 byte, half-word, and quad-word...
Michael Meissner [Wed, 12 Jun 2013 22:41:38 +0000 (22:41 +0000)]
rs6000.c (emit_load_locked): Add support for power8 byte, half-word, and quad-word atomic instructions.

[gcc]
2013-06-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* config/rs6000/rs6000.c (emit_load_locked): Add support for
power8 byte, half-word, and quad-word atomic instructions.
(emit_store_conditional): Likewise.
(rs6000_expand_atomic_compare_and_swap): Likewise.
(rs6000_expand_atomic_op): Likewise.

* config/rs6000/sync.md (larx): Add new modes for power8.
(stcx): Likewise.
(AINT): New mode iterator to include TImode as well as normal
integer modes on power8.
(fetchop_pred): Use int_reg_operand instead of gpc_reg_operand so
that VSX registers are not considered.  Use AINT mode iterator
instead of INT1 to allow inclusion of quad word atomic operations
on power8.
(load_locked<mode>): Likewise.
(store_conditional<mode>): Likewise.
(atomic_compare_and_swap<mode>): Likewise.
(atomic_exchange<mode>): Likewise.
(atomic_nand<mode>): Likewise.
(atomic_fetch_<fetchop_name><mode>): Likewise.
(atomic_nand_fetch<mode>): Likewise.
(mem_thread_fence): Use gen_loadsync_<mode> instead of enumerating
each type.
(ATOMIC): On power8, add QImode, HImode modes.
(load_locked<QHI:mode>_si): Varients of load_locked for QI/HI
modes that promote to SImode.
(load_lockedti): Convert TImode arguments to PTImode, so that we
get a guaranteed even/odd register pair.
(load_lockedpti): Likewise.
(store_conditionalti): Likewise.
(store_conditionalpti): Likewise.

* config/rs6000/rs6000.md (QHI): New mode iterator for power8
atomic load/store instructions.
(HSI): Likewise.

[gcc/testsuite]
2013-06-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* gcc.target/powerpc/atomic-p7.c: New file, add tests for atomic
load/store instructions on power7, power8.
* gcc.target/powerpc/atomic-p8.c: Likewise.

Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r200044

11 years agofix pr c/57577
Balaji V. Iyer [Wed, 12 Jun 2013 22:03:20 +0000 (22:03 +0000)]
fix pr c/57577

fix pr c/57577
gcc/c/ChangeLog
+2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (build_array_notation_expr): Reject array notation
+       mismatch between LHS and RHS even inside a call_expr.  Also, removed
+       a couple while statements that were dead code.
+

gcc/testsuite/ChangeLog
+2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57577
+       * c-c++-common/cilk-plus/AN/pr57577.c: New testcase.
+

From-SVN: r200043

11 years agore PR c++/38958 ('unused variable' warning emitted when extending the lifetime of...
Paolo Carlini [Wed, 12 Jun 2013 21:36:36 +0000 (21:36 +0000)]
re PR c++/38958 ('unused variable' warning emitted when extending the lifetime of a returned RAII type by holding a reference to const despite delayed destructor side-effects. [dtor])

/cp
2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/38958
* decl.c (poplevel): For the benefit of -Wunused-variable see
through references.

/testsuite
2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/38958
* g++.dg/warn/Wunused-var-20.C: New.

From-SVN: r200042

11 years agomips.exp: Handle -f{no-,}common.
Richard Sandiford [Wed, 12 Jun 2013 21:31:52 +0000 (21:31 +0000)]
mips.exp: Handle -f{no-,}common.

gcc/testsuite/
* gcc.target/mips/mips.exp: Handle -f{no-,}common.
* gcc.target/mips/memcpy-1.c: Remove redundant dg-do.
Run with -fno-common.

From-SVN: r200041

11 years agosec_implicit_ex.c (main): Replaced abort and exit function calls with return 1 and...
Balaji V. Iyer [Wed, 12 Jun 2013 20:02:37 +0000 (20:02 +0000)]
sec_implicit_ex.c (main): Replaced abort and exit function calls with return 1 and return 0, respectively.

2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-c++-common/cilk-plus/AN/sec_implicit_ex.c (main): Replaced abort
and exit function calls with return 1 and return 0, respectively.

From-SVN: r200038

11 years agomips.md (extended_mips16): Include GOT and constant-pool loads.
Richard Sandiford [Wed, 12 Jun 2013 18:57:00 +0000 (18:57 +0000)]
mips.md (extended_mips16): Include GOT and constant-pool loads.

gcc/
* config/mips/mips.md (extended_mips16): Include GOT and constant-pool
loads.
(insn_count): New attribute, with most cases extracted from...
(length): ...here.  Redefine most cases in terms of insn_count.
(single_insn): Delete.
(can_delay): Use insn_count to check for single instructions.
(*mul<mode>3_r4300, mul<mode>3_r4000, *mul_acc_si, *mul_acc_si_r3900)
(*msac_using_macc, *mul_sub_si, <u>mulsidi3_32bit_r4000)
(<u>mulsidi3_64bit_r4000, <su>muldi3_highpart_internal)
(<su>mulsi3_highpart_split, <su>muldi3_highpart_internal)
(<u>mulditi3_r4000, *div<mode>3, *recip<mode>3, divmod<mode>4)
(udivmod<mode>4, sqrt<mode>2, *rsqrt<mode>a, *rsqrt<mode>b)
(fix_truncdfsi2_macro, fix_truncsfsi2_macro, *lea_high64)
(*lea64, cprestore_<mode>, clear_hazard_<mode>, <unnamed insn>)
(casesi_internal_mips16_<mode>, *tls_get_tp_<mode>_split)
(tls_get_tp_mips16, *tls_get_tp_mips16_call_<mode>): Use "insn_count"
rather than "length".
(tls_get_tp_<mode>): Likewise.  Remove redundant "no_delay" attribute.
* config/mips/mips-ps-3d.md (mips_c_cond_4s, mips_cabs_cond_4s):
Use "insn_count" rather than "length".
* config/mips/mips-dsp.md
(mips_l<SHORT:size><u>x_ext<GPR:mode>_<P:mode>)
(mips_l<GPR:size>x_<P:mode>, *mips_lw<u>x_<P:mode>_ext): Remove
length attributes.

gcc/testsuite/
* gcc.target/mips/umips-branch-1.c, gcc.target/mips/umips-branch-2.c:
New tests.

From-SVN: r200037

11 years agore PR tree-optimization/57361 (Remove self memory assignment)
Marc Glisse [Wed, 12 Jun 2013 17:56:30 +0000 (19:56 +0200)]
re PR tree-optimization/57361 (Remove self memory assignment)

2013-06-12  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/57361
gcc/
* tree-ssa-dse.c (dse_possible_dead_store_p): Handle self-assignment.

gcc/testsuite/
* gcc.dg/tree-ssa/pr57361.c: New file.

From-SVN: r200034

11 years agoaarch64-simd.md (aarch64_combine<mode>): convert to split.
Sofiane Naci [Wed, 12 Jun 2013 15:34:06 +0000 (15:34 +0000)]
aarch64-simd.md (aarch64_combine<mode>): convert to split.

* config/aarch64/aarch64-simd.md (aarch64_combine<mode>): convert to split.
(aarch64_simd_combine<mode>): New instruction expansion.
* config/aarch64/aarch64-protos.h (aarch64_split_simd_combine): New
function prototype.
* config/aarch64/aarch64.c (aarch64_split_combine): New function.
* config/aarch64/iterators.md (Vdbl): Add entry for DF.

From-SVN: r200020

11 years agoFix DATA_ALIGNMENT vs DATA_ABI_ALIGNMENT fallout for aarch32.
Ramana Radhakrishnan [Wed, 12 Jun 2013 14:48:51 +0000 (14:48 +0000)]
Fix DATA_ALIGNMENT vs DATA_ABI_ALIGNMENT fallout for aarch32.

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

* gcc.target/arm/unaligned-memcpy-4.c (src, dst): Initialize
to ensure alignment.
* gcc.target/arm/unaligned-memcpy-3.c (src): Likewise.

From-SVN: r200019

11 years agocgraph.c (verify_edge_corresponds_to_fndecl): Be lax about decl has when in streaming...
Jan Hubicka [Wed, 12 Jun 2013 14:41:12 +0000 (16:41 +0200)]
cgraph.c (verify_edge_corresponds_to_fndecl): Be lax about decl has when in streaming stage.

* cgraph.c (verify_edge_corresponds_to_fndecl): Be lax about
decl has when in streaming stage.
* lto-symtab.c (lto_symtab_merge_symbols): Likewise.
* cgraph.h (cgraph_state): Add CGRAPH_LTO_STREAMING.

* lto.c (read_cgraph_and_symbols): Set cgraph into streaming state.

From-SVN: r200018

11 years agoparser.c (cp_parser_nested_name_specifier_opt): Fix typo in comment.
Paolo Carlini [Wed, 12 Jun 2013 14:38:18 +0000 (14:38 +0000)]
parser.c (cp_parser_nested_name_specifier_opt): Fix typo in comment.

2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_nested_name_specifier_opt): Fix typo in comment.

From-SVN: r200017

11 years agoRevert accidental commit.
Jan Hubicka [Wed, 12 Jun 2013 14:29:10 +0000 (14:29 +0000)]
Revert accidental commit.

From-SVN: r200016

11 years agore PR c++/42021 (Misleading error message when inherited typedefs cause ambiguity)
Paolo Carlini [Wed, 12 Jun 2013 14:03:28 +0000 (14:03 +0000)]
re PR c++/42021 (Misleading error message when inherited typedefs cause ambiguity)

2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/42021
* parser.c (cp_parser_nested_name_specifier_opt): Avoid emitting
again diagnostic already emitted by cp_parser_lookup_name.

From-SVN: r200013

11 years agore PR target/57578 (SPE detection broken on Linux (bits/predefs.h: No such file or...
Roland Stigge [Wed, 12 Jun 2013 13:56:16 +0000 (13:56 +0000)]
re PR target/57578 (SPE detection broken on Linux (bits/predefs.h: No such file or directory))

2013-06-12  Roland Stigge <stigge@antcom.de>

        PR target/57578
        * config/rs6000/t-linux (MULTIARCH_DIRNAME): Fix SPE version detection.

From-SVN: r200012

11 years ago* g++.dg/ext/visibility/anon6.C: Change "C" to "A" consistently.
Jason Merrill [Wed, 12 Jun 2013 13:28:18 +0000 (09:28 -0400)]
* g++.dg/ext/visibility/anon6.C: Change "C" to "A" consistently.

From-SVN: r200008

11 years agofinalize_10.f90: Update scan-tree-dump.
Tobias Burnus [Wed, 12 Jun 2013 13:26:49 +0000 (15:26 +0200)]
finalize_10.f90: Update scan-tree-dump.

2013-06-12  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/finalize_10.f90: Update scan-tree-dump.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r200006

11 years agofinalize_10.f90: Update dg-dump.
Tobias Burnus [Wed, 12 Jun 2013 13:15:23 +0000 (15:15 +0200)]
finalize_10.f90: Update dg-dump.

2013-06-12  Tobias Burnus  <burnus@net-b.de>
            Dominique d'Humieres  <dominiq@lps.ens.fr>

        * gfortran.dg/finalize_10.f90: Update dg-dump.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r200003

11 years agore PR tree-optimization/57537 (gcc.dg/vect/slp-widen-mult-half.c generating wrong...
Jakub Jelinek [Wed, 12 Jun 2013 13:01:49 +0000 (15:01 +0200)]
re PR tree-optimization/57537 (gcc.dg/vect/slp-widen-mult-half.c generating wrong code on PowerPC64)

PR tree-optimization/57537
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): If
vect_handle_widen_op_by_const, convert oprnd1 to half_type1.

From-SVN: r200000

11 years agodata-streamer.h (streamer_write_char_stream): CSE obs->current_pointer.
Richard Biener [Wed, 12 Jun 2013 11:09:50 +0000 (11:09 +0000)]
data-streamer.h (streamer_write_char_stream): CSE obs->current_pointer.

2013-06-12  Richard Biener  <rguenther@suse.de>

* data-streamer.h (streamer_write_char_stream): CSE
obs->current_pointer.
* data-streamer-out.c (streamer_write_uhwi_stream): Inline
streamer_write_char_stream manually and optimize the resulting loop.
(streamer_write_hwi_stream): Likewise.

From-SVN: r199992

11 years agolto-symtab.c (lto_symtab_merge_symbols): Populate symtab hashtable.
Jan Hubicka [Wed, 12 Jun 2013 09:12:47 +0000 (11:12 +0200)]
lto-symtab.c (lto_symtab_merge_symbols): Populate symtab hashtable.

* lto-symtab.c (lto_symtab_merge_symbols): Populate symtab hashtable.
* cgraph.h (varpool_create_empty_node): Declare.
* lto-cgraph.c (input_node, input_varpool_node): Forcingly create
duplicated nodes.
* symtab.c (symtab_unregister_node): Be lax about missin entries
in node hash.
(symtab_get_node): Update comment.
* varpool.c (varpool_create_empty_node): Break out from ...
(varpool_node_for_decl): ... here.
* lto-streamer.h (lto_file_decl_data): Add RESOLUTION_MAP.

* lto.c (register_resolution): Take lto_file_data argument.
(lto_register_var_decl_in_symtab,
lto_register_function_decl_in_symtab): Update.
(read_cgraph_and_symbols): Update resolution_map handling.

From-SVN: r199990

11 years agoexpr.c (expand_expr_real_1): Use straight-line flow.
Eric Botcazou [Wed, 12 Jun 2013 08:17:58 +0000 (08:17 +0000)]
expr.c (expand_expr_real_1): Use straight-line flow.

* expr.c (expand_expr_real_1) <TARGET_MEM_REF>: Use straight-line flow.
<MEM_REF>: Use 'type' instead of TREE_TYPE (exp) and tidy up the first
part.  Use straight-line flow at the end.
<COMPONENT_REF>: Remove superfluous else.
<VIEW_CONVERT_EXPR>: Use 'type' instead of TREE_TYPE (exp).

From-SVN: r199986

11 years agore PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)
Jakub Jelinek [Wed, 12 Jun 2013 06:46:53 +0000 (08:46 +0200)]
re PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)

PR target/56564
* gcc.target/i386/pr56564-1.c: Skip on darwin, mingw and cygwin.
* gcc.target/i386/pr56564-3.c: Likewise.

From-SVN: r199985

11 years agore PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)
Jakub Jelinek [Wed, 12 Jun 2013 06:43:05 +0000 (08:43 +0200)]
re PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)

PR target/56564
* varasm.c (decl_binds_to_current_def_p): Call binds_local_p
target hook even for !TREE_PUBLIC decls.  If no resolution info
is available, return false for common and external decls.

From-SVN: r199984

11 years agoconstraints.md (U): New constraint.
Kaushik Phatak [Wed, 12 Jun 2013 04:38:37 +0000 (04:38 +0000)]
constraints.md (U): New constraint.

* config/rl78/constraints.md (U): New constraint.
* config/rl78/rl78.md (mulqi3_rl78,mulhi3_rl78,mulhi3_g13): Add
valloc attribute.

From-SVN: r199976

11 years agoDaily bump.
GCC Administrator [Wed, 12 Jun 2013 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r199975

11 years agore PR target/57589 (Linux powerpc -mcpu=native returns pointer to variable on stack...
Michael Meissner [Tue, 11 Jun 2013 23:22:49 +0000 (23:22 +0000)]
re PR target/57589 (Linux powerpc -mcpu=native returns pointer to variable on stack in driver-rs6000.c)

2013-06-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57589
* config/rs6000/driver-rs6000.c (elf_platform): Make buffer static
to allow returning address to AT_PLATFORM name.

From-SVN: r199972

11 years agoc-common.c (handle_alias_ifunc_attribute): Do not set DECL_EXTERNAL for weakref varia...
Jan Hubicka [Tue, 11 Jun 2013 22:41:54 +0000 (00:41 +0200)]
c-common.c (handle_alias_ifunc_attribute): Do not set DECL_EXTERNAL for weakref variables.

* c-family/c-common.c (handle_alias_ifunc_attribute): Do not set
DECL_EXTERNAL for weakref variables.
* c-family/c-pragma.c (handle_pragma_weak): Make sure aliases
are not declared as external.
* cgraph.c (cgraph_create_function_alias): Set weakref flag.
* cgraph.h (symtab_node_base): Add weakref flag.
* cgraphunit.c (cgraph_reset_node): Clear weakref flag.
(handle_alias_pairs): Set weakref flag, do not set DECL_EXTERNAL.
(output_weakrefs): Use weakref flag.
* fold-const.c (simple_operand_p): Handle WEAK.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Drop weakref.
* ipa.c (varpool_externally_visible_p): Drop weakref.
(function_and_variable_visibility): Update comment; fix weakref
sanity checks; do not clear DECL_WEAK on them.
* lto-cgraph.c (lto_output_node): update.
(lto_output_varpool_node): Update.
(input_overwrite_node): Update.
(input_node): Update.
(input_varpool_node): Update.
* lto-symtab.c (lto_symtab_symbol_p): Do not special case weakrefs.
(lto_symtab_merge_symbols): Add sanity check.
(lto_symtab_prevailing_decl): Do not special case weakrefs.
* passes.c (rest_of_decl_compilation): Set static flag, too.
* symtab.c (dump_symtab_base): Dump weakref.
(verify_symtab_base): Sanity check weakrefs.
(symtab_make_decl_local): Remove duplicated code.
(symtab_alias_ultimate_target): Simplify.
* varpool.c (varpool_create_variable_alias): Set weakref flag.

* lto-partition.c (get_symbol_class): Simplify weakref handling.
(add_symbol_to_partition_1): Likewise.
(contained_in_symbol): Likewise.
(lto_balanced_map): Likewise.
(rename_statics): Drop weakref.

From-SVN: r199971

11 years agoAdd error message for mismatched parentheses in reservation string
Tom de Vries [Tue, 11 Jun 2013 22:23:18 +0000 (22:23 +0000)]
Add error message for mismatched parentheses in reservation string

2013-06-11  Tom de Vries  <tom@codesourcery.com>

* genautomata.c (gen_regexp_sequence): Handle els_num == -1.  Handle
sequence_vect == NULL.

From-SVN: r199969

11 years agorl78.c (TARGET_UNWIND_WORD_MODE): Define.
DJ Delorie [Tue, 11 Jun 2013 18:44:56 +0000 (14:44 -0400)]
rl78.c (TARGET_UNWIND_WORD_MODE): Define.

* config/rl78/rl78.c (TARGET_UNWIND_WORD_MODE): Define.
(rl78_unwind_word_mode): New.

From-SVN: r199964

11 years agofinal.c (debug_prefix_maps): Make static.
David Malcolm [Tue, 11 Jun 2013 17:15:52 +0000 (17:15 +0000)]
final.c (debug_prefix_maps): Make static.

* final.c (debug_prefix_maps): Make static.

From-SVN: r199963

11 years agofunction.c (initial_trampoline): Remove stray copy.
David Malcolm [Tue, 11 Jun 2013 17:07:05 +0000 (17:07 +0000)]
function.c (initial_trampoline): Remove stray copy.

* function.c (initial_trampoline): Remove stray copy.

From-SVN: r199962

11 years agoOk, I've removed what you previously asked me to include!
Sofiane Naci [Tue, 11 Jun 2013 15:02:47 +0000 (15:02 +0000)]
Ok, I've removed what you previously asked me to include!

Happy?

-----
Thanks
Sofiane

ChangeLog:

testsuite/
* gcc.target/aarch64/scalar_intrinsics.c: Update.

gcc/
* config/aarch64/aarch64-simd.md (aarch64_dup_lane<mode>): Add r<-w
alternative and update.
(aarch64_dup_lanedi): Delete.
* config/aarch64/arm_neon.h (vdup<bhsd>_lane_*): Update.
* config/aarch64/aarch64-simd-builtins.def: Update.

From-SVN: r199959

11 years agore PR fortran/57535 ([OOP] ICE when allocating a CLASS function-result variable)
Tobias Burnus [Tue, 11 Jun 2013 14:58:55 +0000 (16:58 +0200)]
re PR fortran/57535 ([OOP] ICE when allocating a CLASS function-result variable)

2013-06-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57535
        * trans-array.c (build_class_array_ref): Fix ICE for
        function result variables.

2013-06-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57535
        * gfortran.dg/class_array_18.f90: New.

From-SVN: r199958

11 years agore PR regression/57551 (g++.dg/ext/visibility/anon6.C scan-assembler 1BIiE1cE)
Jan Hubicka [Tue, 11 Jun 2013 14:23:24 +0000 (16:23 +0200)]
re PR regression/57551 (g++.dg/ext/visibility/anon6.C scan-assembler 1BIiE1cE)

PR c++/57551
* g++.dg/ext/visibility/anon6.C: Update testcase.
* cp/pt.c (mark_decl_instantiated): Do not export explicit instantiations
of anonymous namespace templates.

From-SVN: r199956

11 years agoipa-cp.c (ipa_get_indirect_edge_target_1): Check that param_index is within bounds...
Martin Jambor [Tue, 11 Jun 2013 12:50:13 +0000 (14:50 +0200)]
ipa-cp.c (ipa_get_indirect_edge_target_1): Check that param_index is within bounds at the beginning of the function.

2013-06-11  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipa_get_indirect_edge_target_1): Check that param_index is
within bounds at the beginning of the function.

From-SVN: r199953

11 years agovarasm.c (get_section): Don't die on !DECL_P decl.
Alan Modra [Tue, 11 Jun 2013 11:13:59 +0000 (20:43 +0930)]
varasm.c (get_section): Don't die on !DECL_P decl.

* varasm.c (get_section): Don't die on !DECL_P decl.  Tidy error
reporting.
(get_named_section): Don't NULL !DECL_P decl.

From-SVN: r199949

11 years agoFix library literals error involving namespace __detail.
Ed Smith-Rowland [Tue, 11 Jun 2013 11:00:38 +0000 (11:00 +0000)]
Fix library literals error involving namespace __detail.

2013-06-11  Ed Smith-Rowland  <3dw4rd@verizon.net>

Fix library literals error involving namespace __detail.
* include/std/chrono: Rename __detail to __select_type. Reformat.
* include/bits/basic_string.h: Reformat.
* testsuite/20_util/duration/literals/ns_detail.cc: New.

From-SVN: r199948

11 years agore PR libstdc++/56019 (max_align_t should be in std namespace)
Paolo Carlini [Tue, 11 Jun 2013 09:50:55 +0000 (09:50 +0000)]
re PR libstdc++/56019 (max_align_t should be in std namespace)

2013-06-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/56019
* include/c_global/cstddef (max_align_t): Add to namespace std.
* include/c_std/cstddef: Likewise.
* testsuite/18_support/max_align_t/requirements/1.cc: New.
* testsuite/18_support/max_align_t/requirements/2.cc: Likewise.

From-SVN: r199945

11 years agoinvoke.texi (core-avx2): Document.
Igor Zamyatin [Tue, 11 Jun 2013 09:40:26 +0000 (09:40 +0000)]
invoke.texi (core-avx2): Document.

        * doc/invoke.texi (core-avx2): Document.
        (slm): Likewise.
        (atom): Updated with MOVBE.

From-SVN: r199943

11 years agocollect2.c (main): Do not redirect ld stdout/stderr when debugging.
Richard Biener [Tue, 11 Jun 2013 08:21:22 +0000 (08:21 +0000)]
collect2.c (main): Do not redirect ld stdout/stderr when debugging.

2013-06-11  Richard Biener  <rguenther@suse.de>

* collect2.c (main): Do not redirect ld stdout/stderr when
debugging.

From-SVN: r199936

11 years agors6000.c (rs6000_adjust_atomic_subword): Calculate correct shift value in little...
Anton Blanchard [Tue, 11 Jun 2013 06:17:50 +0000 (06:17 +0000)]
rs6000.c (rs6000_adjust_atomic_subword): Calculate correct shift value in little-endian mode.

* config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Calculate
correct shift value in little-endian mode.

From-SVN: r199935

11 years agore PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)
Jakub Jelinek [Tue, 11 Jun 2013 06:03:46 +0000 (08:03 +0200)]
re PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)

PR target/56564
* varasm.c (get_variable_align): Move #endif to the right place.

From-SVN: r199934

11 years agoDaily bump.
GCC Administrator [Tue, 11 Jun 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r199930

11 years agodwarf2out.c (hash_external_ref): Use die_symbol or signature for hash so that hash...
Cary Coutant [Mon, 10 Jun 2013 23:48:41 +0000 (23:48 +0000)]
dwarf2out.c (hash_external_ref): Use die_symbol or signature for hash so that hash table traversal order is...

2013-06-10  Cary Coutant  <ccoutant@google.com>

gcc/
* dwarf2out.c (hash_external_ref): Use die_symbol or signature
for hash so that hash table traversal order is deterministic.

From-SVN: r199927

11 years agore PR c/57563 (Lots of Cilk+ failures on i686-linux)
Balaji V. Iyer [Mon, 10 Jun 2013 23:14:12 +0000 (23:14 +0000)]
re PR c/57563 (Lots of Cilk+ failures on i686-linux)

Fix for PR c/57563
gcc/c/ChangeLog
+2013-06-10  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
+       excessive precision expressions in function parameters.  Also removed
+       couple unwanted while statements.
+

gcc/testsuite/ChangeLog
+2013-06-10  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57563
+       * c-c++-common/cilk-plus/AN/builtin_fn_mutating.c (main): Fixed a bug
+       in how we check __sec_reduce_mutating function's result.
+

From-SVN: r199925

11 years agoc++config (_GLIBCXX_ABI_TAG_CXX11): Add.
Benjamin Kosnik [Mon, 10 Jun 2013 23:11:05 +0000 (23:11 +0000)]
c++config (_GLIBCXX_ABI_TAG_CXX11): Add.

2013-06-10  Benjamin Kosnik  <bkoz@redhat.com>

* include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
* include/bits/stl_map.h (erase): Use abi_tag when C++11.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_tree.h: Same.
* include/std/complex (real, imag): Use macro for abi_tag.

* testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
* testsuite/util/testsuite_containers.h (erase_external): New
declarations.
(erase_external_iterators): Same.
(linkage_check_cxx98_cxx11_erase): Same.
(linkage_check_cxx98_cxx11_erase_iterators): Same.
* testsuite/util/testsuite_shared.cc: Define.
* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
* testsuite/23_containers/map/modifiers/erase/
dr130-linkage-check.cc: New.
* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
* testsuite/23_containers/multimap/modifiers/erase/
dr130-linkage-check.cc: New.
* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
* testsuite/23_containers/multiset/modifiers/erase/
dr130-linkage-check.cc: New.
* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
* testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
New.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.

* testsuite/23_containers/map/dr130.cc: Move...
* testsuite/23_containers/map/modifiers/dr130.cc: ...here.
* testsuite/23_containers/multimap/dr130.cc: Move ...
* testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
* testsuite/23_containers/multiset/dr130.cc: Move...
* testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
* testsuite/23_containers/set/dr130.cc: Move...
* testsuite/23_containers/set/modifiers/dr130.cc: ...here.

From-SVN: r199924

11 years agovector.md (GPR move splitter): Do not split moves of vectors in GPRS if they are...
Michael Meissner [Mon, 10 Jun 2013 21:42:14 +0000 (21:42 +0000)]
vector.md (GPR move splitter): Do not split moves of vectors in GPRS if they are direct moves or quad word...

[gcc]
2013-06-10  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* config/rs6000/vector.md (GPR move splitter): Do not split moves
of vectors in GPRS if they are direct moves or quad word load or
store moves.

* config/rs6000/rs6000-protos.h (rs6000_output_move_128bit): Add
declaration.
(direct_move_p): Likewise.
(quad_load_store_p): Likewise.

* config/rs6000/rs6000.c (enum rs6000_reg_type): Simplify register
classes into bins based on the physical register type.
(reg_class_to_reg_type): Likewise.
(IS_STD_REG_TYPE): Likewise.
(IS_FP_VECT_REG_TYPE): Likewise.
(reload_fpr_gpr): Arrays to determine what insn to use if we can
use direct move instructions.
(reload_gpr_vsx): Likewise.
(reload_vsx_gpr): Likewise.
(rs6000_init_hard_regno_mode_ok): Precalculate the register type
information that is a simplification of register classes.  Also
precalculate direct move reload helpers.
(direct_move_p): New function to return true if the operation can
be done as a direct move instruciton.
(quad_load_store_p): New function to return true if the operation
is a quad memory operation.
(rs6000_legitimize_address): If quad memory, only allow register
indirect for TImode addresses.
(rs6000_legitimate_address_p): Likewise.
(enum reload_reg_type): Delete, replace with rs6000_reg_type.
(rs6000_reload_register_type): Likewise.
(register_to_reg_type): Return register type.
(rs6000_secondary_reload_simple_move): New helper function for
secondary reload and secondary memory needed to identify anything
that is a simple move, and does not need reloading.
(rs6000_secondary_reload_direct_move): New helper function for
secondary reload to identify cases that can be done with several
instructions via the direct move instructions.
(rs6000_secondary_reload_move): New helper function for secondary
reload to identify moves between register types that can be done.
(rs6000_secondary_reload): Add support for quad memory operations
and for direct move.
(rs6000_secondary_memory_needed): Likewise.
(rs6000_debug_secondary_memory_needed): Change argument names.
(rs6000_output_move_128bit): New function to return the move to
use for 128-bit moves, including knowing about the various
limitations of quad memory operations.

* config/rs6000/vsx.md (vsx_mov<mode>): Add support for quad
memory operations.  call rs6000_output_move_128bit for the actual
instruciton(s) to generate.
(vsx_movti_64bit): Likewise.

* config/rs6000/rs6000.md (UNSPEC_P8V_FMRGOW): New unspec values.
(UNSPEC_P8V_MTVSRWZ): Likewise.
(UNSPEC_P8V_RELOAD_FROM_GPR): Likewise.
(UNSPEC_P8V_MTVSRD): Likewise.
(UNSPEC_P8V_XXPERMDI): Likewise.
(UNSPEC_P8V_RELOAD_FROM_VSX): Likewise.
(UNSPEC_FUSION_GPR): Likewise.
(FMOVE128_GPR): New iterator for direct move.
(f32_lv): New mode attribute for load/store of SFmode/SDmode
values.
(f32_sv): Likewise.
(f32_dm): Likewise.
(zero_extend<mode>di2_internal1): Add support for power8 32-bit
loads and direct move instructions.
(zero_extendsidi2_lfiwzx): Likewise.
(extendsidi2_lfiwax): Likewise.
(extendsidi2_nocell): Likewise.
(floatsi<mode>2_lfiwax): Likewise.
(lfiwax): Likewise.
(floatunssi<mode>2_lfiwzx): Likewise.
(lfiwzx): Likewise.
(fix_trunc<mode>_stfiwx): Likewise.
(fixuns_trunc<mode>_stfiwx): Likewise.
(mov<mode>_hardfloat, 32-bit floating point): Likewise.
(mov<move>_hardfloat64, 64-bit floating point): Likewise.
(parity<mode>2_cmpb): Set length/type attr.
(unnamed shift right patterns, mov<mode>_internal2): Change type attr
for 'mr.' to fast_compare.
(bpermd_<mode>): Change type attr to popcnt.
(p8_fmrgow_<mode>): New insns for power8 direct move support.
(p8_mtvsrwz_1): Likewise.
(p8_mtvsrwz_2): Likewise.
(reload_fpr_from_gpr<mode>): Likewise.
(p8_mtvsrd_1): Likewise.
(p8_mtvsrd_2): Likewise.
(p8_xxpermdi_<mode>): Likewise.
(reload_vsx_from_gpr<mode>): Likewise.
(reload_vsx_from_gprsf): Likewise.
(p8_mfvsrd_3_<mode>): LIkewise.
(reload_gpr_from_vsx<mode>): Likewise.
(reload_gpr_from_vsxsf): Likewise.
(p8_mfvsrd_4_disf): Likewise.
(multi-word GPR splits): Do not split direct moves or quad memory
operations.

[gcc/testsuite]
2013-06-10  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* gcc.target/powerpc/direct-move-vint1.c: New tests for power8
direct move instructions.
* gcc.target/powerpc/direct-move-vint2.c: Likewise.
* gcc.target/powerpc/direct-move.h: Likewise.
* gcc.target/powerpc/direct-move-float1.c: Likewise.
* gcc.target/powerpc/direct-move-float2.c: Likewise.
* gcc.target/powerpc/direct-move-double1.c: Likewise.
* gcc.target/powerpc/direct-move-double2.c: Likewise.
* gcc.target/powerpc/direct-move-long1.c: Likewise.
* gcc.target/powerpc/direct-move-long2.c: Likewise.

Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r199918

11 years agotree-into-ssa.c (interesting_blocks): Make static.
David Malcolm [Mon, 10 Jun 2013 20:25:14 +0000 (20:25 +0000)]
tree-into-ssa.c (interesting_blocks): Make static.

* tree-into-ssa.c (interesting_blocks): Make static.

From-SVN: r199911

11 years agoname-lookup.c (add_decl_to_level): Add decls in an anonymous namespace to static_decls.
Jason Merrill [Mon, 10 Jun 2013 19:38:42 +0000 (15:38 -0400)]
name-lookup.c (add_decl_to_level): Add decls in an anonymous namespace to static_decls.

* name-lookup.c (add_decl_to_level): Add decls in an anonymous
namespace to static_decls.

From-SVN: r199906

11 years agoFixing ChangeLog entries.
Sriraman Tallam [Mon, 10 Jun 2013 17:49:48 +0000 (17:49 +0000)]
Fixing ChangeLog entries.

Fixing ChangeLog entries.  Moving cp/call.c change description to
cp/ChangeLog file.

From-SVN: r199900

11 years agore PR c++/52440 ([C++11] Wrong template argument deduction/substitution failures)
Paolo Carlini [Mon, 10 Jun 2013 16:07:29 +0000 (16:07 +0000)]
re PR c++/52440 ([C++11] Wrong template argument deduction/substitution failures)

2013-06-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52440
* g++.dg/cpp0x/pr52440.C: New.

From-SVN: r199899

11 years agore PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)
Jakub Jelinek [Mon, 10 Jun 2013 15:41:52 +0000 (17:41 +0200)]
re PR target/56564 (movdqa on possibly-8-byte-aligned struct with -O3)

PR target/56564
* varasm.c (align_variable): Don't use DATA_ALIGNMENT or
CONSTANT_ALIGNMENT if !decl_binds_to_current_def_p (decl).
Use DATA_ABI_ALIGNMENT for that case instead if defined.
(get_variable_align): New function.
(get_variable_section, emit_bss, emit_common,
assemble_variable_contents, place_block_symbol): Use
get_variable_align instead of DECL_ALIGN.
(assemble_noswitch_variable): Add align argument, use it
instead of DECL_ALIGN.
(assemble_variable): Adjust caller.  Use get_variable_align
instead of DECL_ALIGN.
* config/i386/i386.h (DATA_ALIGNMENT): Adjust x86_data_alignment
caller.
(DATA_ABI_ALIGNMENT): Define.
* config/i386/i386-protos.h (x86_data_alignment): Adjust prototype.
* config/i386/i386.c (x86_data_alignment): Add opt argument.  If
opt is false, only return the psABI mandated alignment increase.
* config/c6x/c6x.h (DATA_ALIGNMENT): Renamed to...
(DATA_ABI_ALIGNMENT): ... this.
* config/mmix/mmix.h (DATA_ALIGNMENT): Renamed to...
(DATA_ABI_ALIGNMENT): ... this.
* config/mmix/mmix.c (mmix_data_alignment): Adjust function comment.
* config/s390/s390.h (DATA_ALIGNMENT): Renamed to...
(DATA_ABI_ALIGNMENT): ... this.
* doc/tm.texi.in (DATA_ABI_ALIGNMENT): Document.
* doc/tm.texi: Regenerated.

* gcc.target/i386/pr56564-1.c: New test.
* gcc.target/i386/pr56564-2.c: New test.
* gcc.target/i386/pr56564-3.c: New test.
* gcc.target/i386/pr56564-4.c: New test.
* gcc.target/i386/avx256-unaligned-load-4.c: Add -fno-common.
* gcc.target/i386/avx256-unaligned-store-1.c: Likewise.
* gcc.target/i386/avx256-unaligned-store-3.c: Likewise.
* gcc.target/i386/avx256-unaligned-store-4.c: Likewise.
* gcc.target/i386/vect-sizes-1.c: Likewise.
* gcc.target/i386/memcpy-1.c: Likewise.
* gcc.dg/vect/costmodel/i386/costmodel-vect-31.c (tmp): Initialize.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c (tmp): Likewise.

From-SVN: r199898

11 years agoalpha.c (alpha_emit_xfloating_compare): Also use cmp_code to construct REG_EQUAL...
Uros Bizjak [Mon, 10 Jun 2013 13:54:30 +0000 (15:54 +0200)]
alpha.c (alpha_emit_xfloating_compare): Also use cmp_code to construct REG_EQUAL note.

* config/alpha/alpha.c (alpha_emit_xfloating_compare): Also use
cmp_code to construct REG_EQUAL note.

From-SVN: r199897

11 years agoforced.C: Extend current handling of Linux-based x86 systems to cover all GNU systems.
Thomas Schwinge [Mon, 10 Jun 2013 07:21:29 +0000 (09:21 +0200)]
forced.C: Extend current handling of Linux-based x86 systems to cover all GNU systems.

gcc/testsuite/
* g++.dg/abi/forced.C: Extend current handling of Linux-based x86
systems to cover all GNU systems.
* g++.dg/abi/guard2.C: Likewise.
* g++.dg/cpp0x/constexpr-rom.C: Likewise.
* g++.dg/eh/sighandle.C: Likewise.
* g++.dg/ext/cleanup-10.C: Likewise.
* g++.dg/ext/cleanup-11.C: Likewise.
* g++.dg/ext/cleanup-8.C: Likewise.
* g++.dg/ext/cleanup-9.C: Likewise.
* g++.dg/opt/const5.C: Likewise.
* g++.dg/opt/life1.C: Likewise.
* g++.dg/other/pr39496.C: Likewise.
* g++.old-deja/g++.abi/aggregates.C: Likewise.
* g++.old-deja/g++.abi/align.C: Likewise.
* g++.old-deja/g++.abi/bitfields.C: Likewise.
* g++.old-deja/g++.law/weak.C: Likewise.
* g++.old-deja/g++.pt/asm1.C: Likewise.
* gcc.c-torture/execute/20030125-1.x: Likewise.
* gcc.c-torture/execute/990127-2.x: Likewise.
* gcc.dg/20041106-1.c: Likewise.
* gcc.dg/20050503-1.c: Likewise.
* gcc.dg/builtin-object-size-5.c: Likewise.
* gcc.dg/cleanup-10.c: Likewise.
* gcc.dg/cleanup-11.c: Likewise.
* gcc.dg/cleanup-8.c: Likewise.
* gcc.dg/cleanup-9.c: Likewise.
* gcc.dg/complex-5.c: Likewise.
* gcc.dg/debug/dwarf2/asm-line1.c: Likewise.
* gcc.dg/debug/dwarf2/discriminator.c: Likewise.
* gcc.dg/dfp/convert-dfp-round-thread.c: Likewise.
* gcc.dg/dfp/pr35739.c: Likewise.
* gcc.dg/fdata-sections-1.c: Likewise.
* gcc.dg/lto/20090206-1_0.c: Likewise.
* gcc.dg/lto/20090206-2_0.c: Likewise.
* gcc.dg/pr30360.c: Likewise.
* gcc.dg/pr37303.c: Likewise.
* gcc.dg/pr39323-1.c: Likewise.
* gcc.dg/pr39323-2.c: Likewise.
* gcc.dg/pr39323-3.c: Likewise.
* gcc.dg/pr45416.c: Likewise.
* gcc.dg/setjmp-2.c: Likewise.
* gcc.dg/split-1.c: Likewise.
* gcc.dg/split-3.c: Likewise.
* gcc.dg/split-4.c: Likewise.
* gcc.dg/strlenopt-12g.c: Likewise.
* gcc.dg/strlenopt-14g.c: Likewise.
* gcc.dg/strlenopt-14gf.c: Likewise.
* gcc.dg/strlenopt-16g.c: Likewise.
* gcc.dg/strlenopt-17g.c: Likewise.
* gcc.dg/strlenopt-18g.c: Likewise.
* gcc.dg/strlenopt-1f.c: Likewise.
* gcc.dg/strlenopt-22g.c: Likewise.
* gcc.dg/strlenopt-2f.c: Likewise.
* gcc.dg/strlenopt-4g.c: Likewise.
* gcc.dg/strlenopt-4gf.c: Likewise.
* gcc.dg/struct-ret-3.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-2.c: Likewise.
* gcc.misc-tests/linkage.exp: Likewise.
* gcc.target/i386/20000724-1.c: Likewise.
* gcc.target/i386/align-main-3.c: Likewise.
* gcc.target/i386/cleanup-1.c: Likewise.
* gcc.target/i386/inline-mcpy.c: Likewise.
* gcc.target/i386/pr32268.c: Likewise.
* gcc.target/i386/pr36613.c: Likewise.
* gcc.target/i386/pr39013-1.c: Likewise.
* gcc.target/i386/pr39013-2.c: Likewise.
* gcc.target/i386/pr39496.c: Likewise.
* gcc.target/i386/pr40906-3.c: Likewise.
* gcc.target/i386/pr46084.c: Likewise.
* lib/target-supports.exp (check_effective_target_pie): Likewise.

libgomp/
* testsuite/libgomp.c/icv-2.c: Extend current handling of
Linux-based x86 systems to cover all GNU systems.
* testsuite/libgomp.c/lock-3.c: Likewise.
* testsuite/libgomp.c/pr48591.c: Likewise.

libstdc++-v3/
* testsuite/17_intro/headers/c++1998/49745.cc: Extend current
handling of Linux-based x86 systems to cover all GNU systems.
* testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
* testsuite/18_support/pthread_guard.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.
* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/pthread5.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc:
Likewise.
* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.
* testsuite/30_threads/async/49668.cc: Likewise.
* testsuite/30_threads/async/54297.cc: Likewise.
* testsuite/30_threads/async/any.cc: Likewise.
* testsuite/30_threads/async/async.cc: Likewise.
* testsuite/30_threads/async/launch.cc: Likewise.
* testsuite/30_threads/async/sync.cc: Likewise.
* testsuite/30_threads/call_once/39909.cc: Likewise.
* testsuite/30_threads/call_once/49668.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/54185.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/members/53841.cc:
Likewise.
* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/members/2.cc:
Likewise.
* testsuite/30_threads/future/cons/move.cc: Likewise.
* testsuite/30_threads/future/members/45133.cc: Likewise.
* testsuite/30_threads/future/members/get.cc: Likewise.
* testsuite/30_threads/future/members/get2.cc: Likewise.
* testsuite/30_threads/future/members/share.cc: Likewise.
* testsuite/30_threads/future/members/valid.cc: Likewise.
* testsuite/30_threads/future/members/wait.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/lock/1.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/lock/3.cc: Likewise.
* testsuite/30_threads/lock/4.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move_assign.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/get_future.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/get_future2.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
* testsuite/30_threads/promise/cons/1.cc: Likewise.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
* testsuite/30_threads/promise/cons/move.cc: Likewise.
* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
* testsuite/30_threads/promise/members/get_future.cc: Likewise.
* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception2.cc:
Likewise.
* testsuite/30_threads/promise/members/set_value.cc: Likewise.
* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
Likewise.
* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
* testsuite/30_threads/shared_future/members/get.cc: Likewise.
* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc:
Likewise.
* testsuite/30_threads/shared_future/members/wait_until.cc:
Likewise.
* testsuite/30_threads/this_thread/1.cc: Likewise.
* testsuite/30_threads/this_thread/2.cc: Likewise.
* testsuite/30_threads/this_thread/3.cc: Likewise.
* testsuite/30_threads/this_thread/4.cc: Likewise.
* testsuite/30_threads/thread/cons/1.cc: Likewise.
* testsuite/30_threads/thread/cons/2.cc: Likewise.
* testsuite/30_threads/thread/cons/3.cc: Likewise.
* testsuite/30_threads/thread/cons/4.cc: Likewise.
* testsuite/30_threads/thread/cons/49668.cc: Likewise.
* testsuite/30_threads/thread/cons/5.cc: Likewise.
* testsuite/30_threads/thread/cons/6.cc: Likewise.
* testsuite/30_threads/thread/cons/7.cc: Likewise.
* testsuite/30_threads/thread/cons/8.cc: Likewise.
* testsuite/30_threads/thread/cons/9.cc: Likewise.
* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* testsuite/30_threads/thread/members/1.cc: Likewise.
* testsuite/30_threads/thread/members/2.cc: Likewise.
* testsuite/30_threads/thread/members/3.cc: Likewise.
* testsuite/30_threads/thread/members/4.cc: Likewise.
* testsuite/30_threads/thread/members/5.cc: Likewise.
* testsuite/30_threads/thread/members/hardware_concurrency.cc:
Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/30_threads/thread/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/thread/swap/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/try_lock/1.cc: Likewise.
* testsuite/30_threads/try_lock/2.cc: Likewise.
* testsuite/30_threads/try_lock/3.cc: Likewise.
* testsuite/30_threads/try_lock/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
* testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
* testsuite/ext/profile/mh.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.
* testsuite/util/testsuite_performance.h: Extend current handling
of Linux-based systems to cover all glibc-based systems.

From-SVN: r199880

11 years agoDaily bump.
GCC Administrator [Mon, 10 Jun 2013 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r199878

11 years agomutex (call_once): Remove parentheses to fix error in c++1y and gnu++1y mode.
Jonathan Wakely [Sun, 9 Jun 2013 23:54:07 +0000 (23:54 +0000)]
mutex (call_once): Remove parentheses to fix error in c++1y and gnu++1y mode.

* include/std/mutex (call_once): Remove parentheses to fix error in
c++1y and gnu++1y mode.
* testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
thread to avoid undefined behaviour.

From-SVN: r199875

11 years agore PR target/6526 ([SH4] sdivsi3_i4 can clobber xd0/xd2)
Oleg Endo [Sun, 9 Jun 2013 21:32:37 +0000 (21:32 +0000)]
re PR target/6526 ([SH4] sdivsi3_i4 can clobber xd0/xd2)

PR target/6526
* config/sh/lib1funcs.S (sdivsi3_i4, udivsi3_i4): Do not change bits
other than FPSCR.PR and FPSCR.SZ.  Add SH4A implementation.

PR target/6526
* gcc.target/sh/pr6526.c: New.

From-SVN: r199873

11 years agore PR rtl-optimization/57568 (wrong code for assignment in conditional at -Os)
Jakub Jelinek [Sun, 9 Jun 2013 18:30:01 +0000 (20:30 +0200)]
re PR rtl-optimization/57568 (wrong code for assignment in conditional at -Os)

PR target/57568
* config/i386/i386.md (TARGET_READ_MODIFY_WRITE peepholes): Ensure
that operands[2] doesn't overlap with operands[0].

* gcc.c-torture/execute/pr57568.c: New test.

From-SVN: r199870

11 years agore PR c++/37404 (ICE on va_arg and template deduction)
Paolo Carlini [Sun, 9 Jun 2013 18:24:39 +0000 (18:24 +0000)]
re PR c++/37404 (ICE on va_arg and template deduction)

2013-06-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/37404
* g++.dg/other/vararg-4.C: New.

From-SVN: r199869

11 years agors6000.c (print_operand, 'z'): Remove historical hack to mark symbols as used.
David Edelsohn [Sun, 9 Jun 2013 00:47:13 +0000 (00:47 +0000)]
rs6000.c (print_operand, 'z'): Remove historical hack to mark symbols as used.

2013-06-09  David Edelsohn  <dje.gcc@gmail.com>
            Jan Hubicka  <jh@suse.cz>

        * config/rs6000/rs6000.c (print_operand, 'z'): Remove historical
        hack to mark symbols as used.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r199865

11 years agoDaily bump.
GCC Administrator [Sun, 9 Jun 2013 00:16:49 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r199864

11 years agoSimplify and clean up library literals.
Ed Smith-Rowland [Sat, 8 Jun 2013 22:43:18 +0000 (22:43 +0000)]
Simplify and clean up library literals.

2013-06-07  Ed Smith-Rowland  <3dw4rd@verizon.net>

Simplify and clean up library literals.
* include/std/chrono: Simplify namespace and versioning management.
* include/bits/basic_string.h: Ditto.
* testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
* testsuite/20_util/duration/literals/values.cc: Ditto.
* testsuite/21_strings/basic_string/literals/types.cc: Ditto.
* testsuite/21_strings/basic_string/literals/values.cc: Ditto.

From-SVN: r199861

11 years agoImplement N3654 - Quoted Strings Library Proposal
Ed Smith-Rowland [Sat, 8 Jun 2013 22:37:50 +0000 (22:37 +0000)]
Implement N3654 - Quoted Strings Library Proposal

2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>

Implement N3654 - Quoted Strings Library Proposal
* include/std/iomanip: Add quoted(String, Char delim, Char escape)
manipulators and supporting machinery in c++1y mode.
* testsuite/27_io/manipulators/standard/char/quoted.cc: New.
* testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.

From-SVN: r199860

11 years agore PR rtl-optimization/57559 (S/390: ICE with lra)
Vladimir Makarov [Sat, 8 Jun 2013 18:37:40 +0000 (18:37 +0000)]
re PR rtl-optimization/57559 (S/390: ICE with lra)

2013-06-08  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/57559
* lra-constraints.c (process_alt_operands): Don't discourage
memory with known offset for offsetable memory constraint.
* lra.c (lra_emit_add): Exchange y and z for 2-op add insn.

2013-06-08  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/57559
* gcc.target/s390/pr57559.c : New test.

From-SVN: r199859

11 years agoalloc_traits.h (allocator_traits::max_size()): LWG 2162: Add noexcept.
Jonathan Wakely [Sat, 8 Jun 2013 17:31:40 +0000 (17:31 +0000)]
alloc_traits.h (allocator_traits::max_size()): LWG 2162: Add noexcept.

* include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
2162: Add noexcept.

From-SVN: r199858

11 years agoatomic.h: Don't include stdint.h or features.h.
Walter Lee [Sat, 8 Jun 2013 16:26:32 +0000 (16:26 +0000)]
atomic.h: Don't include stdint.h or features.h.

* config/tilepro/atomic.h: Don't include stdint.h or features.h.
Replace int64_t with long long.  Add __extension__ where
appropriate.
* config/tilepro/atomic.c: Include config.h.

From-SVN: r199855

11 years agostl_algo.h (is_permutation): Add overloads from N3671.
Jonathan Wakely [Sat, 8 Jun 2013 16:12:13 +0000 (16:12 +0000)]
stl_algo.h (is_permutation): Add overloads from N3671.

* include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
* include/bits/stl_algobase.h (equal, mismatch): Likewise.
* testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
* testsuite/25_algorithms/equal/2.cc: New.
* testsuite/25_algorithms/equal/check_type2.cc: New.
* testsuite/25_algorithms/is_permutationqual/2.cc: New.
* testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
* testsuite/25_algorithms/mismatch/2.cc: New.
* testsuite/25_algorithms/mismatch/check_type2.cc: New.
* testsuite/util/testsuite_iterators.h: Fix spelling.

From-SVN: r199854

11 years agotype-traits (integral_constant::operator()): Implement N3545.
Jonathan Wakely [Sat, 8 Jun 2013 16:12:07 +0000 (16:12 +0000)]
type-traits (integral_constant::operator()): Implement N3545.

* include/std/type-traits (integral_constant::operator()): Implement
N3545.
* testsuite/20_util/integral_constant/call_operator.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r199853

11 years agovarasm.c (struct oc_local_state): Reorder fields.
Eric Botcazou [Sat, 8 Jun 2013 15:24:15 +0000 (15:24 +0000)]
varasm.c (struct oc_local_state): Reorder fields.

* varasm.c (struct oc_local_state): Reorder fields.
(output_constructor_bitfield): Replace OUTER parameter with BIT_OFFSET
and adjust accordingly.
(output_constructor): Reorder initialization code and adjust call to
output_constructor_bitfield.

From-SVN: r199852

11 years agore PR fortran/37336 ([F03] Finish derived-type finalization)
Tobias Burnus [Sat, 8 Jun 2013 12:26:40 +0000 (14:26 +0200)]
re PR fortran/37336 ([F03] Finish derived-type finalization)

2013-06-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * trans-decl.c (init_intent_out_dt): Call finalizer
        when approriate.

2013-06-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.dg/finalize_10.f90: New.
        * gfortran.dg/auto_dealloc_2.f90: Update tree-dump.
        * gfortran.dg/finalize_15.f90: New.

From-SVN: r199851

11 years agore PR fortran/57553 ([F08] Valid use of STORAGE_SIZE rejected, bad error message...
Tobias Burnus [Sat, 8 Jun 2013 12:21:58 +0000 (14:21 +0200)]
re PR fortran/57553 ([F08] Valid use of STORAGE_SIZE rejected, bad error message for invalid use)

2013-06-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57553
        * simplify.c (gfc_simplify_storage_size): Handle literal
        strings.
        * trans-intrinsic.c (gfc_conv_intrinsic_storage_size):
        Add missing fold_convert.

2013-06-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57553
        * gfortran.dg/storage_size_4.f90: New.

From-SVN: r199850

11 years agore PR c++/57548 (calling gnu multiversioned function at file scope causes ICE)
Sriraman Tallam [Sat, 8 Jun 2013 00:38:09 +0000 (00:38 +0000)]
re PR c++/57548 (calling gnu multiversioned function at file scope causes ICE)

Fixes PR 57548.

2013-06-07  Sriraman Tallam  <tmsriram@google.com>

PR c++/57548
* cp/call.c (build_over_call):  Check if current_function_decl is
NULL.
* testsuite/g++.dg/ext/pr57548.C: New test.

From-SVN: r199842