gcc.git
11 years agoi386.md (*jcc<mode>_0_i387): Macroize insn from *fp_jcc_3_387 using X87MODEF mode...
Uros Bizjak [Thu, 22 Nov 2012 21:13:56 +0000 (22:13 +0100)]
i386.md (*jcc<mode>_0_i387): Macroize insn from *fp_jcc_3_387 using X87MODEF mode iterator.

* config/i386/i386.md (*jcc<mode>_0_i387): Macroize insn
from *fp_jcc_3_387 using X87MODEF mode iterator.
(*jcc<mode>_0_r_i387): New.
(*jccxf_i387): Ditto.
(*jccxf_r_i387): Ditto.
(*jcc<mode>_i387): Macroize insn from *fp_jcc_1_387 using
MODEF mode iterator.
(*jcc<mode>_r_i387): Macroize insn from *fp_jcc_1r_387 using
MODEF mode iterator.
(*jccu<mode>_i387): Macroize insn from *fp_jcc_2_387 using
X87MODEF mode iterator.
(*jccu<mode>_r_i387): Macroize insn from *fp_jcc_2r_387 using
X87MODEF mode iterator.
(*jcc{,u}<mode>_i387 splitters): Macroize splitters using
X87MODEF mode iterator.
(*jcc<X87MODEF:mode>_<SWI24:mode>_i387): Macroize insn
from *fp_jcc_4_<mode>_387 using X87MODEF mode iterator.
(*jcc<X87MODEF:mode>_<SWI24:mode>_r_i387): New.
(*jcc<X87MODEF:mode>_<SWI24:mode>_i387 splitters): Macroize
splitters using X87MODEF and SWI24 mode iterators.

From-SVN: r193734

11 years agoRemove documentation for AArch64 constraint 'Utf'.
Marcus Shawcroft [Thu, 22 Nov 2012 18:08:41 +0000 (18:08 +0000)]
Remove documentation for AArch64 constraint 'Utf'.

2012-11-22  Marcus Shawcroft  <marcus.shawcroft@arm.com>

* doc/md.texi (AArch64 family): Remove Utf.

From-SVN: r193732

11 years agoi386.md (FPCMP): New mode iterator.
Uros Bizjak [Thu, 22 Nov 2012 16:59:18 +0000 (17:59 +0100)]
i386.md (FPCMP): New mode iterator.

* config/i386/i386.md (FPCMP): New mode iterator.
(unord): New mode attribute.
(*cmp<mode>_0_i387): Macroize insn from *cmpfp_0
using X87MODEF mode iterator.
(*cmp<mode>_0_cc_i387): Macroize insn from *cmpfp_0_cc using
X87MODEF mode iterator.
(*cmpxf_i387): Rename from *cmpfp_xf.
(*cmpxf_cc_i387): Rename from *cmpfp_xf_cc.
(*cmp<mode>_i387): Rename from *cmpfp_<mode>.
(*cmp<mode>_cc_i387): Rename from *cmpfp_<mode>_cc.
(*cmpu<mode>_i387): Macroize insn from *cmpfp_u using X87MODEF
mode iterator.
(*cmpu<mode>_cc_i387): Macroize insn from *cmpfp_u_cc using X87MODEF
mode iterator.
(*cmp<X87MODEF:mode>_<SWI24:mode>_i387): Macroize_insn from
*cmpfp_<mode> using X87MODEF mode iterator.
(*cmp<X87MODEF:mode>_<SWI24:mode>_cc_i387): Macroize_insn from
*cmpfp_<mode>_cc using X87MODEF mode iterator.
(*cmpi<FPCMP:unord><MODEF:mode>_mixed): Macroize insn from
*cmpfp_i{,u}_mixed using FPCMP and MODEF mode iterators.
(*cmpi<FPCMP:unord><MODEF:mode>_mixed): Macroize insn from
*cmpfp_i{,u}_sse using FPCMP and MODEF mode iterators.
(*cmpi<CCFPCMP:unord><X87MODEF:mode>_i387): Macroize insn from
*cmpfp_i{,u}_387 using FPCMP and X87MODEF mode iterators.

From-SVN: r193731

11 years agoImplement bswaphi2 with rev16 (AArch64)
Ian Bolton [Thu, 22 Nov 2012 15:50:30 +0000 (15:50 +0000)]
Implement bswaphi2 with rev16 (AArch64)

From-SVN: r193729

11 years agoIssue an error for -static with fsanitize=address
H.J. Lu [Thu, 22 Nov 2012 15:17:21 +0000 (15:17 +0000)]
Issue an error for -static with fsanitize=address

PR sanitizer/55379
* gcc.c (LINK_COMMAND_SPEC): Issue an error for -static with
-fsanitize=address.

From-SVN: r193728

11 years agore PR c++/55137 (Unexpected static structure initialization)
Jason Merrill [Thu, 22 Nov 2012 14:42:00 +0000 (09:42 -0500)]
re PR c++/55137 (Unexpected static structure initialization)

PR c++/55137
* semantics.c (verify_constant): Track overflow separately.
(reduced_constant_expression_p): Don't check it here.
(cxx_eval_constant_expression): Check it on CSTs.
(cxx_eval_outermost_constant_expr): Treat overflows as non-constant
at this point, but still return the folded version.
(potential_constant_expression_1): Don't check overflow.

From-SVN: r193727

11 years agocall.c (extend_ref_init_temps_1): Recompute TREE_CONSTANT for the ADDR_EXPR.
Jason Merrill [Thu, 22 Nov 2012 14:41:52 +0000 (09:41 -0500)]
call.c (extend_ref_init_temps_1): Recompute TREE_CONSTANT for the ADDR_EXPR.

* call.c (extend_ref_init_temps_1): Recompute TREE_CONSTANT for
the ADDR_EXPR.

From-SVN: r193726

11 years agoAdd STATIC_LIBASAN_LIBS for -static-libasan
H.J. Lu [Thu, 22 Nov 2012 14:10:47 +0000 (14:10 +0000)]
Add STATIC_LIBASAN_LIBS for -static-libasan

* gcc.c (ADD_STATIC_LIBASAN_LIBS): New macro.  Defined
with STATIC_LIBASAN_LIBS.
(LIBASAN_SPEC): Add STATIC_LIBASAN_LIBS.
* config/gnu-user.h (STATIC_LIBASAN_LIBS): New macro.

From-SVN: r193725

11 years agoarm.md (*arm_abssi2): Define predicable attribute.
Kyrylo Tkachov [Thu, 22 Nov 2012 13:29:56 +0000 (13:29 +0000)]
arm.md (*arm_abssi2): Define predicable attribute.

2012-11-20  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (*arm_abssi2): Define predicable attribute.
(*arm_neg_abssi2): Likewise.
* config/arm/thumb2.md (*thumb2_abssi2): Likewise.
(*thumb2_neg_abssi2): Likewise.

From-SVN: r193724

11 years agore PR c++/55432 (Too much constexpr makes the compiler crash)
Paolo Carlini [Thu, 22 Nov 2012 10:23:03 +0000 (10:23 +0000)]
re PR c++/55432 (Too much constexpr makes the compiler crash)

2012-11-22  Paolo Carlini  <paolo.carlini@oracle.com>

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

From-SVN: r193723

11 years ago* ree.c (struct ext_modified): Add ATTRIBUTE_PACKED.
Jakub Jelinek [Thu, 22 Nov 2012 10:09:15 +0000 (11:09 +0100)]
* ree.c (struct ext_modified): Add ATTRIBUTE_PACKED.

From-SVN: r193722

11 years agoAdjust decimal point of signed accum mode to GCC default.
Georg-Johann Lay [Thu, 22 Nov 2012 10:00:13 +0000 (10:00 +0000)]
Adjust decimal point of signed accum mode to GCC default.

libgcc/
Adjust decimal point of signed accum mode to GCC default.

PR target/54222
* config/avr/t-avr (LIB1ASMFUNCS): Add _fractsfsq _fractsfusq,
_divqq_helper.
* config/avr/lib1funcs-fixed.S (__fractqqsf, __fracthqsf)
(__fractsasf, __fractsfha, __fractusqsf, __fractsfsa)
(__mulha3, __mulsa3)
(__divqq3, __divha3, __divsa3): Adjust to new position of
decimal point of signed accum types.

(__mulusa3_round): New function.
(__mulusa3): Use it.
(__divqq_helper): New function.
(__udivuqq3): Use it.

gcc/
Adjust decimal point of signed accum mode to GCC default.

PR target/54222
* config/avr/avr-modes.def (HA, SA, DA): Remove mode adjustments.
(TA): Move decimal point one bit to the right.
* config/avr/avr.c (avr_out_fract): Rewrite.

From-SVN: r193721

11 years agoconfigure.tgt (i[3456]86): Handle -mx32 like -m64.
Matthias Klose [Thu, 22 Nov 2012 00:47:58 +0000 (00:47 +0000)]
configure.tgt (i[3456]86): Handle -mx32 like -m64.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * configure.tgt (i[3456]86): Handle -mx32 like -m64.

From-SVN: r193720

11 years agoDaily bump.
GCC Administrator [Thu, 22 Nov 2012 00:18:15 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193719

11 years agoatanq.c (atanq): Update from GLIBC.
David S. Miller [Wed, 21 Nov 2012 23:55:29 +0000 (23:55 +0000)]
atanq.c (atanq): Update from GLIBC.

2012-11-22  David S. Miller  <davem@davemloft.net>
            Tobias Burnus  <burnus@net-b.de>
            Joseph Myers  <joseph@codesourcery.com>

        * math/atanq.c (atanq): Update from GLIBC. Handle tiny and
        very large arguments properly.
        * math/j0q.c (y0q): Update from GLIBC. Avoid arithmetic
        underflow when 'x' is very small.
        * math/j1q.c (y1q): Ditto.
        * math/log1pq.c (log1pq): Update from GLIBC. Saturate
        nonzero exponents with absolute value below 0x1p-128 to
        +/- 0x1p-128.
        * math/powq.c (powq): Update from GLIBC. If xm1 is
        smaller than LDBL_EPSILON/2.0L, just return xm1.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r193716

11 years agot-linux: New file; define MULTIARCH_DIRNAME.
Matthias Klose [Wed, 21 Nov 2012 23:33:40 +0000 (23:33 +0000)]
t-linux: New file; define MULTIARCH_DIRNAME.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/alpha/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <alpha*-*-linux*> (tmake_file): Include alpha/t-linux.

From-SVN: r193715

11 years agot-linux: Define MULTIARCH_DIRNAME.
Matthias Klose [Wed, 21 Nov 2012 23:01:30 +0000 (23:01 +0000)]
t-linux: Define MULTIARCH_DIRNAME.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/m68k/t-linux: Define MULTIARCH_DIRNAME.

From-SVN: r193714

11 years agot-linux: New file; define MULTIARCH_DIRNAME.
Matthias Klose [Wed, 21 Nov 2012 22:57:54 +0000 (22:57 +0000)]
t-linux: New file; define MULTIARCH_DIRNAME.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/ia64/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <ia64*-*-linux*> (tmake_file): Include ia64/t-linux.

From-SVN: r193713

11 years agore PR rtl-optimization/55414 (spec2006 416.gamess compilation fails on LRA)
Vladimir Makarov [Wed, 21 Nov 2012 22:22:11 +0000 (22:22 +0000)]
re PR rtl-optimization/55414 (spec2006 416.gamess compilation fails on LRA)

2012-11-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55414
* lra-constraints.c (Index): New function.
(lra_constraints): Check dead equiv init insns.

From-SVN: r193712

11 years agore PR fortran/55352 (Erroneous gfortran warning of unused module variable when variab...
Janus Weil [Wed, 21 Nov 2012 22:19:51 +0000 (23:19 +0100)]
re PR fortran/55352 (Erroneous gfortran warning of unused module variable when variable is only used in namelist)

2012-11-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55352
* trans-decl.c (generate_local_decl): Don't warn for explicitly imported
but unused module variables which are in a namelist or common block.

2012-11-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55352
* gfortran.dg/namelist_76.f90: New.

From-SVN: r193711

11 years agoalpha: Update to new extv/insv patterns
Richard Henderson [Wed, 21 Nov 2012 22:10:01 +0000 (14:10 -0800)]
alpha: Update to new extv/insv patterns

        * config/alpha/alpha.md (extvmisaligndi): Rename from extv; update
        mode of operand 1; remove ancient extract_bit_field workaround.
        (insvmisaligndi): Rename from insv and update similarly.
        (extzvmisaligndi): Rename from extzv and update similarly; split out...
        (extzvdi): New expander.

From-SVN: r193710

11 years agore PR pch/55399 (pch tests fail on mips-mti-linux-gnu target)
Steve Ellcey [Wed, 21 Nov 2012 21:28:30 +0000 (21:28 +0000)]
re PR pch/55399 (pch tests fail on mips-mti-linux-gnu target)

2012-11-21  Steve Ellcey  <sellcey@mips.com>

PR pch/55399
* files.c (pch_open_file): Fix check for implicit_preinclude.

From-SVN: r193709

11 years agore PR libgomp/55411 (OMP threads lose their OMP_WAIT_POLICY when another OMP thread...
Jakub Jelinek [Wed, 21 Nov 2012 20:29:14 +0000 (21:29 +0100)]
re PR libgomp/55411 (OMP threads lose their OMP_WAIT_POLICY when another OMP thread gets destructed)

PR libgomp/55411
* team.c (gomp_free_thread): Decrease gomp_managed_threads
if pool had any threads_used.

From-SVN: r193706

11 years agoDocument __SANITIZE_ADDRESS__
H.J. Lu [Wed, 21 Nov 2012 20:28:29 +0000 (20:28 +0000)]
Document __SANITIZE_ADDRESS__

* doc/cpp.texi: Document __SANITIZE_ADDRESS__.

From-SVN: r193705

11 years agoDefine __SANITIZE_ADDRESS__ for -fsanitize=address
H.J. Lu [Wed, 21 Nov 2012 20:20:42 +0000 (20:20 +0000)]
Define __SANITIZE_ADDRESS__ for -fsanitize=address

PR c/55397
* cppbuiltin.c (define_builtin_macros_for_compilation_flags):
Define __SANITIZE_ADDRESS__ for flag_asan.

From-SVN: r193704

11 years agocommon.opt: Change faddress-sanitizer to fsanitize=address.
Wei Mi [Wed, 21 Nov 2012 17:46:00 +0000 (17:46 +0000)]
common.opt: Change faddress-sanitizer to fsanitize=address.

* common.opt: Change faddress-sanitizer to fsanitize=address.
* toplev.c (process_options): Likewise.
* gcc.c (LINK_COMMAND_SPEC): Likewise.
* testsuite/lib/asan-dg.exp
(check_effective_target_faddress_sanitizer): Likewise.
(asan_init): Likewise.
* doc/invoke.texi (-fsanitize=address): Document.

From-SVN: r193702

11 years agoipa-prop.h (struct ipa_node_params): Rename clone_for_all_contexts to do_clone_for_al...
Martin Jambor [Wed, 21 Nov 2012 17:13:48 +0000 (18:13 +0100)]
ipa-prop.h (struct ipa_node_params): Rename clone_for_all_contexts to do_clone_for_all_contexts.

2012-11-21  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (struct ipa_node_params): Rename clone_for_all_contexts to
do_clone_for_all_contexts.  Update all uses.  New flag
is_all_contexts_clone.
* ipa-cp.c (cgraph_edge_brings_value_p): Also consider the case when cs
leads to the clone for all contexts.
(perhaps_add_new_callers): Likewise.
(decide_whether_version_node): Remove bogus !plats->aggs test.  Set
is_all_contexts_clone when cloning for all contexts.

* testsuite/gcc.dg/ipa/ipcp-agg-7.c: New test.
* testsuite/gcc.dg/ipa/ipcp-agg-8.c: Likewise.

From-SVN: r193701

11 years agore PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with...
Martin Jambor [Wed, 21 Nov 2012 17:04:45 +0000 (18:04 +0100)]
re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with -O2 -fno-inline -fipa-cp-clone)

2012-11-21  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/55260
* ipa-cp.c (intersect_aggregates_with_edge): New function.
(find_aggregate_values_for_callers_subset): Part moved to the function
above.  Call it.
(cgraph_edge_brings_all_agg_vals_for_node): Reimplemented using
intersect_aggregates_with_edge.

* testsuite/g++.dg/torture/pr55260-2.C: New test.

From-SVN: r193700

11 years agot-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
Matthias Klose [Wed, 21 Nov 2012 16:13:28 +0000 (16:13 +0000)]
t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/s390/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

From-SVN: r193699

11 years agoextend libsanitizer/README.gcc
Kostya Serebryany [Wed, 21 Nov 2012 15:07:31 +0000 (15:07 +0000)]
extend libsanitizer/README.gcc

From-SVN: r193698

11 years agore PR gcov-profile/55417 (AddressSanitizer reports stack-buffer-overflow in profiling...
Teresa Johnson [Wed, 21 Nov 2012 15:04:45 +0000 (16:04 +0100)]
re PR gcov-profile/55417 (AddressSanitizer reports stack-buffer-overflow in profiling code)

PR gcov-profile/55417
* profile.c (compute_working_sets): Check index first
to avoid out-of-bounds array access.

From-SVN: r193697

11 years agore PR libquadmath/55225 (Fail to build lgammaq.c from trunk with mingw-w64)
Tobias Burnus [Wed, 21 Nov 2012 13:46:34 +0000 (14:46 +0100)]
re PR libquadmath/55225 (Fail to build lgammaq.c from trunk with mingw-w64)

2012-11-21  Tobias Burnus  <burnus@net-b.de>

        PR libquadmath/55225
        * math/lgammaq.c (lgammaq): Use local variable if
        math.h does not provide signgam.
        * acinclude.m4 (LIBQUAD_CHECK_MATH_H_SIGNGAM): New check.
        * configure.ac: Use it.
        * configure: Regenerate.
        * config.h.in: Regenerate.

From-SVN: r193695

11 years agot-aarch64-linux: Define MULTIARCH_DIRNAME for linux target.
Matthias Klose [Wed, 21 Nov 2012 13:39:27 +0000 (13:39 +0000)]
t-aarch64-linux: Define MULTIARCH_DIRNAME for linux target.

2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/aarch64/t-aarch64-linux: Define MULTIARCH_DIRNAME for
        linux target.

From-SVN: r193694

11 years ago* config/i386/i386.md
Uros Bizjak [Wed, 21 Nov 2012 13:20:37 +0000 (14:20 +0100)]
* config/i386/i386.md
(*float<SWI48x:mode><MODEF:mode>2_mixed_with_temp): Use SWI48 mode
iterator instead of SWI48x.  Update insn constraint.
(*float<SWI48x:mode><MODEF:mode>2_mixed_interunit): Ditto.
(*float<SWI48x:mode><MODEF:mode>2_mixed_nointerunit): Ditto.
(*float<SWI48x:mode><MODEF:mode>2_sse_with_temp): Ditto.
(*float<SWI48x:mode><MODEF:mode>2_sse_interunit): Ditto.
(*float<SWI48x:mode><MODEF:mode>2_sse_nointerunit): Ditto.
(*float<SWI48x:mode><MODEF:mode>2 splitters): Ditto.
(lrint<MODEF:mode><SWI48x:mode>2): Ditto.

From-SVN: r193692

11 years agoFix parallel build race.
Marcus Shawcroft [Wed, 21 Nov 2012 13:15:12 +0000 (13:15 +0000)]
Fix parallel build race.

gengtype-lex.c is built twice, once for BUILD and once for HOST, but
the BUILD flavour is missing a dependency on $(BCONFIG_H).

2012-11-21  Marcus Shawcroft  <marcus.shawcroft@arm.com>

* Makefile.in (gengtype-lex.o): Add dependency on $(BCONFIG_H).

From-SVN: r193691

11 years agopr55238.c: Remove hidden attribute.
Martin Jambor [Wed, 21 Nov 2012 12:27:33 +0000 (13:27 +0100)]
pr55238.c: Remove hidden attribute.

2012-11-21  Martin Jambor  <mjambor@suse.cz>

* gcc.dg/torture/pr55238.c: Remove hidden attribute.

From-SVN: r193690

11 years agolibgo: Update to current version of master library.
Ian Lance Taylor [Wed, 21 Nov 2012 07:03:38 +0000 (07:03 +0000)]
libgo: Update to current version of master library.

From-SVN: r193688

11 years ago* config/arm/arm-cores.def (cortex-m1, cortex-m0)
Bin Cheng [Wed, 21 Nov 2012 03:44:21 +0000 (03:44 +0000)]
* config/arm/arm-cores.def (cortex-m1, cortex-m0)
(cortex-m0plus): Use v6m.
* config/arm/arm-protos.h (tune_params): Add
logical_op_non_short_circuit.
* config/arm/arm.c (arm_slowmul_tune, arm_fastmul_tune)
(arm_strongarm_tune, arm_xscale_tune, arm_9e_tune, arm_v6t2_tune)
(arm_cortex_tune, arm_cortex_a15_tune, arm_cortex_a5_tune)
(arm_cortex_a9_tune, arm_fa726te_tune): Set
logical_op_non_short_circuit field.
(arm_v6m_tune): New tune_params struct.
* config/arm/arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define.

* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Skip on ARM Cortex-M0.
* gcc.dg/tree-ssa/vrp47.c: Ditto.

From-SVN: r193687

11 years agoconfigure.ac: Substitute `with_cpu'.
Matthias Klose [Wed, 21 Nov 2012 03:20:12 +0000 (03:20 +0000)]
configure.ac: Substitute `with_cpu'.

2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Substitute `with_cpu'.
        * configure: Regenerate.
        * Makefile.in: Define `with_cpu'.
        * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
        * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME.
        * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. Add e300c2
        to the list.
        (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS.
        * config/rs6000/t-spe: Define MULTIARCH_DIRNAME.
        * config.gcc <powerpc-*-linux* | powerpc64-*-linux*> (tmake_file):
        Include rs6000/t-linux for 32bit non-biarch configurations.

From-SVN: r193686

11 years agoinstall.texi: Move multiarch paragraph out of multilib documentation.
Matthias Klose [Wed, 21 Nov 2012 00:53:45 +0000 (00:53 +0000)]
install.texi: Move multiarch paragraph out of multilib documentation.

2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * doc/install.texi: Move multiarch paragraph out of multilib
        documentation.

From-SVN: r193685

11 years agoDaily bump.
GCC Administrator [Wed, 21 Nov 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193684

11 years agot-linux-eabi: Define MULTIARCH_DIRNAME for linux target.
Matthias Klose [Tue, 20 Nov 2012 23:10:31 +0000 (23:10 +0000)]
t-linux-eabi: Define MULTIARCH_DIRNAME for linux target.

2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * config/arm/t-linux-eabi: Define MULTIARCH_DIRNAME for linux target.

From-SVN: r193681

11 years agostor-layout.c (bit_field_mode_iterator::next_mode): Fix signedness.
Richard Sandiford [Tue, 20 Nov 2012 22:49:41 +0000 (22:49 +0000)]
stor-layout.c (bit_field_mode_iterator::next_mode): Fix signedness.

gcc/
* stor-layout.c (bit_field_mode_iterator::next_mode): Fix signedness.

From-SVN: r193680

11 years agore PR rtl-optimization/55396 (-O2 -m32 -fno-omit-frame-pointer: internal compiler...
Vladimir Makarov [Tue, 20 Nov 2012 21:32:59 +0000 (21:32 +0000)]
re PR rtl-optimization/55396 (-O2 -m32 -fno-omit-frame-pointer: internal compiler error: in check_rtl, at lra.c:2007)

2012-11-20  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55396
* lra-constraints.c (get_reload_reg): Change class if it is
different from reg class.

From-SVN: r193678

11 years agoIntroduce vNULL to use as a nil initializer for vec<>.
Diego Novillo [Tue, 20 Nov 2012 21:21:30 +0000 (16:21 -0500)]
Introduce vNULL to use as a nil initializer for vec<>.

This patch implements Jakub's idea of adding an empty struct with
a typecast operator that returns nil vectors.  This is useful to
shorten all the initializers when declaring vec instances or passing
nil vectors as function arguments.

2012-11-20  Diego Novillo  <dnovillo@google.com>
    Jakub Jelinek  <jakub@redhat.com>

ChangeLog
* vec.h (struct vnull): Declare.
(vNULL): Declare.
* vec.c (vNULL): Define.
* bb-reorder.c: Replace all vec<T, A>() initializers with vNULL.
* cfgexpand.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/i386/i386.c: Likewise.
* df-core.c: Likewise.
* dominance.c: Likewise.
* dwarf2out.c: Likewise.
* except.c: Likewise.
* function.c: Likewise.
* gcse.c: Likewise.
* genautomata.c: Likewise.
* graphds.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ira-build.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-symtab.c: Likewise.
* opts-global.c: Likewise.
* passes.c: Likewise.
* ree.c: Likewise.
* sched-deps.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* sel-sched.c: Likewise.
* stor-layout.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-eh.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-predcom.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* value-prof.c: Likewise.
* varasm.c: Likewise.

ada/ChangeLog
* gcc-interface/decl.c: Replace all vec<T,A>()
initializers with vNULL.

cp/ChangeLog
* name-lookup.c: Replace all vec<T, A>() initializers
with vNULL.
* semantics.c: Likewise.

fortran/ChangeLog
* trans-openmp.c: Replace all vec<T, A>() initializers
with vNULL.

lto/ChangeLog
* lto.c: Replace all vec<T, A>() initializers with vNULL.

objc/ChangeLog
* objc-act.c: Replace all vec<T, A>() initializers with vNULL.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r193677

11 years agoFix sanitizer build on sparc64.
Konstantin Serebryany [Tue, 20 Nov 2012 20:54:49 +0000 (20:54 +0000)]
Fix sanitizer build on sparc64.

* sanitizer_common/sanitizer_linux.cc
(SANITIZER_LINUX_USES_64BIT_SYSCALLS): Define.
(internal_mmap): Use it.
(internal_filesize): Likewise.

From-SVN: r193676

11 years agovec.h (class vec_prefix): Change into struct.
Jakub Jelinek [Tue, 20 Nov 2012 19:51:53 +0000 (20:51 +0100)]
vec.h (class vec_prefix): Change into struct.

* vec.h (class vec_prefix): Change into struct.
Rename field alloc_PRIVATE_ back to alloc_.
Rename field num_PRIVATE_ to num_.
Update all users.
(class vec<T, A, vl_embed>): Rename field pfx_PRIVATE_ to vecpfx_.
Rename field data_PRIVATE_ to vecdata_.
Update all users.
(class vec<T, A, vl_ptr>): Make every field public.
Rename field vec_PRIVATE_ back to vec_.
Update all users.

From-SVN: r193675

11 years agore PR middle-end/55403 (ICE building libitm)
Richard Sandiford [Tue, 20 Nov 2012 19:49:26 +0000 (19:49 +0000)]
re PR middle-end/55403 (ICE building libitm)

gcc/
PR middle-end/55403
PR middle-end/55391
* expmed.c (store_bit_field_1): Use adjust_bitfield_address_size
rather than adjust_bitfield_address to change the mode of a reference.
(extract_bit_field_1): Likewise.

From-SVN: r193674

11 years agors6000.md (movdf_hardfloat32): Add a comment explaining the register ordering prefere...
Michael Meissner [Tue, 20 Nov 2012 19:29:02 +0000 (19:29 +0000)]
rs6000.md (movdf_hardfloat32): Add a comment explaining the register ordering preferences.

2012-11-20  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.md (movdf_hardfloat32): Add a comment
explaining the register ordering preferences.

From-SVN: r193673

11 years agore PR tree-optimization/55350 (verify_gimple failed with invalid (pointer) operands...
Aldy Hernandez [Tue, 20 Nov 2012 18:28:09 +0000 (18:28 +0000)]
re PR tree-optimization/55350 (verify_gimple failed with invalid (pointer) operands to plus/minus)

PR tree-optimization/55350
* gimple-ssa-strength-reduction.c (replace_dependent): Handle
POINTER_{PLUS,MINUS}_EXPR correctly.

From-SVN: r193672

11 years ago[multiple changes]
Uros Bizjak [Tue, 20 Nov 2012 18:02:36 +0000 (19:02 +0100)]
[multiple changes]

2012-11-20  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (fix_trunc<MODEF:mode><SWI48:mode>_sse): Macroize
insn from fix_trunc<mode>{si,di}_sse using SWI48 mode iterator.
(peephole2 to avoid vector decoded forms): Macroize peephole2
using MODEF mode iterator.  Use SWI48 mode iterator instead of SWI48x.

2012-11-20  Uros Bizjak  <ubizjak@gmail.com>

PR target/19398
* config/i386/i386.md
(peephole2 to shorten x87->SSE reload sequences): Remove peephole2.
* config/i386/i386.h (enum ix86_tune_indices)
<IX86_TUNE_SHORTEN_X87_SSE>: Remove.
* config/i386/i386.h (initial_ix86_tune_features): Update.

2012-11-20  Vladimir Makarov  <vmakarov@redhat.com>

PR target/19398
* lra-constraints.c (process_alt_operands): Discourage reloads
through secodnary memory.

testsuite/ChangeLog:

2012-11-20  Uros Bizjak  <ubizjak@gmail.com>

PR target/19398
* gcc.target/i386/pr19398.c: New test.

From-SVN: r193671

11 years ago* dwarf.c (read_attribute): Always clear val.
Ian Lance Taylor [Tue, 20 Nov 2012 17:28:05 +0000 (17:28 +0000)]
* dwarf.c (read_attribute): Always clear val.

From-SVN: r193670

11 years agors6000.md (largetoc_low): Revert.
David Edelsohn [Tue, 20 Nov 2012 16:27:57 +0000 (16:27 +0000)]
rs6000.md (largetoc_low): Revert.

        * config/rs6000/rs6000.md (largetoc_low): Revert.
        (largetoc_low_aix<mode>): New.

From-SVN: r193669

11 years agoFix dependencies for tlink.o.
Diego Novillo [Tue, 20 Nov 2012 16:26:24 +0000 (11:26 -0500)]
Fix dependencies for tlink.o.

Found while changing code in vec.h and doing incremental builds.

2012-11-20  Diego Novillo  <dnovillo@google.com>

* Makefile.in (tlink.o): Add dependency on VEC_H.

From-SVN: r193668

11 years agoConvert vec<> into a POD.
Diego Novillo [Tue, 20 Nov 2012 16:26:09 +0000 (11:26 -0500)]
Convert vec<> into a POD.

This fixes PR 55398 by making vec<> a true POD.  I thought we could get
away with having private fields, but we can't.  We fail to pass vec<>
instances through varargs.

The patch makes every field public and mangles the field names in the
hope that no future patch will try to make use of them directly.  It's
horrible, but I could not think of anything better.

Tested with clang++ as the host compiler.

2012-11-20  Diego Novillo  <dnovillo@google.com>

    PR middle-end/55398
    * vec.h (class vec_prefix): Make every field public.
    Rename field alloc_ to alloc_PRIVATE_.
    Rename field num_ to num_PRIVATE_.
    Update all users.
    (class vec<T, A, vl_embed>): Make every field public.
    Rename field pfx_ to pfx_PRIVATE_.
    Rename field data_ to data_PRIVATE_.
    Update all users.
    (class vec<T, A, vl_ptr>): Make every field public.
    Rename field vec_ to vec_PRIVATE_.
    Update all users.

From-SVN: r193667

11 years agore PR target/55268 (gcc4.8 mingw-w64 wrong stdcall import symbols generated after...
Kai Tietz [Tue, 20 Nov 2012 16:17:16 +0000 (17:17 +0100)]
re PR target/55268 (gcc4.8 mingw-w64 wrong stdcall import symbols generated after rev 193204)

        PR target/55268
        * i386.c (ix86_mangle_decl_assembler_name): Use
        SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME if defined.
        * cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Rename
        to SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME.

From-SVN: r193666

11 years agore PR libstdc++/55413 ([LTO] hashtable.h:1648 '__bbegin_bkt' may be used uninitialize...
Paolo Carlini [Tue, 20 Nov 2012 14:54:11 +0000 (14:54 +0000)]
re PR libstdc++/55413 ([LTO] hashtable.h:1648 '__bbegin_bkt' may be used uninitialized in this function [-Werror=maybe-uninitialized])

2012-11-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/55413
* include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Initialize
__bbegin_bkt and __prev_bkt to avoid uninitialized warnings.
* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
dg-error line number.

From-SVN: r193663

11 years ago2012-11-20 Matthias Klose <doko@ubuntu.com>
Matthias Klose [Tue, 20 Nov 2012 13:48:28 +0000 (13:48 +0000)]
2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * doc/doxygen/user.cfg.in (ALIASES). Escape sharp braces.
        * include/bits/allocator.h: Escape sharp braces in comment.
        * include/profile/impl/profiler_algos.h: Likewise.

From-SVN: r193662

11 years agov850.c (F): New function.
Nick Clifton [Tue, 20 Nov 2012 13:12:16 +0000 (13:12 +0000)]
v850.c (F): New function.

* config/v850/v850.c (F): New function.  Mark the given insn as
being frame related.
(v850_all_frame_related): New function.  Mark the given push insn
as being frame related.
(v850_pass_by_reference): When using the RH850 ABI do not pass
arguments by reference.
(v850_strict_argument_naming): Delete function.
(v850_function_arg): Use word alignment with the RH850 ABI.
(v850_arg_partial_bytes): Likewise.
(v850_function_arg_advance): Likewise.
(v850_print_operand): Handle CONST_INT and CONST_DOUBLE.
(compute_register_save_size): Use df_regs_ever_live_p.
(increment_stack): Mark prologue adjustments as being frame
related.
(expand_prologue): Handle pretend args.  Mark insns generated as
being frame related.
(expand_epilogue): Likewise.
(v850_return_in_memory): When using the RH850 ABI return
aggregates in memory.
(v850_setup_incoming_varargs): Delete function.
(v850_option_override): New function.
(TARGET_DEBUG_UNWIND_INFO): Delete definition.
(TARGET_SETUP_INCOMING_VARARGS): Likewise.
(TARGET_STRICT_ARGUMENT_NAMING): Likewise.
(TARGET_OPTION_OVERRIDE): Define.
* config/v850/v850.h (ASM_SPEC): Pass 8byte-align and gcc-abi
options on to assembler.
(LINK_SPEC): Likewise.
(TARGET_CPU_CPP_BUILTINS): Define __V850_8BYTE_ALIGN__ and
__V850_GCC_ABI__.
(STACK_BOUNDARY): Set to BIGGEST_ALIGNMENT.
(FUNCTION_BOUNDARY): With the RH850 ABI always 32-bit alignment.
(BIGGEST_ALIGNMENT): With -8byte-align set to 64-bits.
(BIGGEST_FIELD_ALIGNMENT): Likewise.
(enum reg_class): Swap EVEN_REGS and GENERAL_REGS.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(struct cum_arg): Delete anonymous_args field.
(INIT_CUMULATIVE_ARGS): Update.
(PREFERRED_DEBUG): Set to DWARF2_DEBUG.
(DWARF2_FRAME_INFO): Define.
(DWARF2_UNWIND_INFO): Define.
(INCOMING_RETURN_ADDR_RTX): Define.
(DWARF_FRAME_RETURN_COLUMN): Define.
(TARGET_USE_FPU): Define.
* config/v850/v850.md: Replace TARGET_V850E2V3 in floating point
insns with TARGET_USE_FPU.
(fixuns_truncsfsi2): New pattern.
(fixuns_truncdfsi2): New pattern.
(fix_truncsfdi2): New pattern.
(fixuns_truncsfdi2): New pattern.
(fix_truncdfdi2): New pattern.
(fixuns_truncdfdi2): New pattern.
(unsfloatsisf2): New pattern.
(unsfloatsidf2): New pattern.
(floatdisf2): New pattern.
(unsfloatdisf2): New pattern.
(floatdidf2): New pattern.
(unsfloatdidf2): New pattern.
(fnmasf4): Fix RTl description.
(fnmssf4): Likewise.
* config/v850/v850.opt (mrelax): New option.
(mlong-jumps): Likewise.
(msoft-float): Likewise.
(mhard-float): Likewise.
(mrh850-abi): Likewise.
(mgcc-abi): Likewise.
(m8byte-align): Likewise.
* config/v850/t-v850 (MULTILIB_OPTIONS): Update multilib options.
(MULTILIB_DIRNAMES): Likewise.

From-SVN: r193661

11 years agoi386.c (ix86_expand_call): Emit CLOBBERs in VOIDmode.
Uros Bizjak [Tue, 20 Nov 2012 12:54:23 +0000 (13:54 +0100)]
i386.c (ix86_expand_call): Emit CLOBBERs in VOIDmode.

* config/i386/i386.c (ix86_expand_call): Emit CLOBBERs in VOIDmode.

From-SVN: r193660

11 years agorx.c (rx_function_arg_boundary): When using the RX ABI align stack arguments to their...
Nick Clifton [Tue, 20 Nov 2012 12:22:44 +0000 (12:22 +0000)]
rx.c (rx_function_arg_boundary): When using the RX ABI align stack arguments to their natural alignment.

* config/rx/rx.c (rx_function_arg_boundary): When using the RX ABI
align stack arguments to their natural alignment.
(rx_narrow_volatile_bitfield): New function.  Allows narrow
volatile bitfields.
(rx_ok_to_inline): New function.  Do not inline functions with
local variables into a naked caller.
(TARGET_NARROW_VOLATILE_BITFIELD): Define.
(TARGET_CAN_INLINE_P): Define.
* config/rx/rx.c (TARGET_CPU_CPP_BUILTINS): Define __RX_ABI__ or
__RX_GC_ABI__.
(ASM_SPEC): Pass -mgcc-abi on to the assembler.
(STRICT_ALIGNMENT): Set to false.
(CTORS_SECTION_ASM_OP): Add executable attribute.
(DTORS_SECTION_ASM_OP): Add executable attribute.
(INIT_ARRAY_SECTION_ASM_OP): Add executable attribute.
(FINI_ARRAY_SECTION_ASM_OP): Add executable attribute.
* config/rx/rx.md (subdi3): Don't allow MEMs as the third operand,
as it causes too much reload pressure.
* config/rx/rx.opt (mgcc-abi): New option.
(mrx-abi): New option.
* config/rx/t-rx (MULTILIB_OPTIONS): Show how to add an ABI
multilib.
(MULTILIB_DIRNAMES): Likewise.

From-SVN: r193659

11 years agogcc/
James Greenhalgh [Tue, 20 Nov 2012 12:10:37 +0000 (12:10 +0000)]
gcc/
* config/aarch64/aarch64-builtins.c
(aarch64_simd_builtin_type_bits): Rename to...
(aarch64_simd_builtin_type_mode): ...this, make sequential.
(aarch64_simd_builtin_datum): Refactor members.
(VAR1, VAR2, ..., VAR12): Update accordingly.
(aarch64_simd_builtin_data): Include from aarch64-simd-builtins.def.
(aarch64_builtins): Update accordingly.
(init_aarch64_simd_builtins): Refactor, rename to...
(aarch64_init_simd_builtins): ...this.
(aarch64_simd_builtin_compare): Remove.
(locate_simd_builtin_icode): Likewise.
* config/aarch64/aarch64-protos.h (aarch64_init_builtins): New.
(aarch64_expand_builtin): New.
* config/aarch64/aarch64-simd-builtins.def: New file.
* config/aarch64/aarch64.c (aarch64_init_builtins):
Move to aarch64-builtins.c.
(aarch64_expand_builtin): Likewise.
* config/aarch64/aarch64.h
(aarch64_builtins): Move to aarch64-builtins.c.

Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
From-SVN: r193658

11 years agore PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with...
Martin Jambor [Tue, 20 Nov 2012 11:20:41 +0000 (12:20 +0100)]
re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with -O2 -fno-inline -fipa-cp-clone)

2012-11-20  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/55260
* ipa-cp.c (find_aggregate_values_for_callers_subset): Rename info to
dest_info, use caller_info instead of info when determining whether
callee is a clone.

* testsuite/g++.dg/torture/pr55260-1.C: New test.

From-SVN: r193657

11 years agosse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge *avx2_pmulhrswv16hi3 and...
Andrey Turetskiy [Tue, 20 Nov 2012 11:05:10 +0000 (11:05 +0000)]
sse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge *avx2_pmulhrswv16hi3 and...

        * config/i386/sse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge
        *avx2_pmulhrswv16hi3 and *ssse3_pmulhrswv8hi3 into one pattern.

From-SVN: r193656

11 years agoFix to commit 193651.
James Greenhalgh [Tue, 20 Nov 2012 10:56:52 +0000 (10:56 +0000)]
Fix to commit 193651.

gcc/testsuite/
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c:
Actually add this file.
* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
* gcc.target/aarch64/atomic-op-char.c: Likewise.
* gcc.target/aarch64/atomic-op-consume.c: Likewise.
* gcc.target/aarch64/atomic-op-imm.c: Likewise.
* gcc.target/aarch64/atomic-op-int.c: Likewise.
* gcc.target/aarch64/atomic-op-long.c: Likewise.
* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
* gcc.target/aarch64/atomic-op-release.c: Likewise.
* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
* gcc.target/aarch64/atomic-op-short.c: Likewise.

From-SVN: r193654

11 years agoFix revision 193651.
James Greenhalgh [Tue, 20 Nov 2012 10:51:02 +0000 (10:51 +0000)]
Fix revision 193651.

gcc/
* config/aarch64/atomics.md: Actually add this file.

From-SVN: r193653

11 years agoaarch64.md (define_attr "sync_*"): Remove.
Sofiane Naci [Tue, 20 Nov 2012 10:07:34 +0000 (10:07 +0000)]
aarch64.md (define_attr "sync_*"): Remove.

gcc/
* config/aarch64/aarch64.md
(define_attr "sync_*"): Remove.
(define_attr "length"): Update.
Include atomics.md.
* config/aarch64/aarch64-protos.h
(aarch64_expand_compare_and_swap): Add function prototype.
(aarch64_split_compare_and_swap): Likewise.
(aarch64_split_atomic_op): Likewise.
(aarch64_expand_sync): Remove function prototype.
(aarch64_output_sync_insn): Likewise.
(aarch64_output_sync_lock_release): Likewise.
(aarch64_sync_loop_insns): Likewise.
(struct aarch64_sync_generator): Remove.
(enum aarch64_sync_generator_tag): Likewise.
* config/aarch64/aarch64.c
(aarch64_legitimize_sync_memory): Remove function.
(aarch64_emit): Likewise.
(aarch64_insn_count): Likewise.
(aarch64_output_asm_insn): Likewise.
(aarch64_load_store_suffix): Likewise.
(aarch64_output_sync_load): Likewise.
(aarch64_output_sync_store): Likewise.
(aarch64_output_op2): Likewise.
(aarch64_output_op3): Likewise.
(aarch64_output_sync_loop): Likewise.
(aarch64_get_sync_operand): Likewise.
(aarch64_process_output_sync_insn): Likewise.
(aarch64_output_sync_insn): Likewise.
(aarch64_output_sync_lock_release): Likewise.
(aarch64_sync_loop_insns): Likewise.
(aarch64_call_generator): Likewise.
(aarch64_expand_sync): Likewise.
(* emit_f): Remove variable.
(aarch64_insn_count): Likewise.
(FETCH_SYNC_OPERAND): Likewise.
(aarch64_emit_load_exclusive): New function.
(aarch64_emit_store_exclusive): Likewise.
(aarch64_emit_unlikely_jump): Likewise.
(aarch64_expand_compare_and_swap): Likewise.
(aarch64_split_compare_and_swap): Likewise.
(aarch64_split_atomic_op): Likewise.
* config/aarch64/iterators.md
(atomic_sfx): New mode attribute.
(atomic_optab): New code attribute.
(atomic_op_operand): Likewise.
(atomic_op_str): Likewise.
(syncop): Rename to atomic_op.
* config/aarch64/sync.md: Delete.
* config/aarch64/atomics.md: New file.

gcc/testsuite
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: New testcase.
* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
* gcc.target/aarch64/atomic-op-char.c: Likewise.
* gcc.target/aarch64/atomic-op-consume.c: Likewise.
* gcc.target/aarch64/atomic-op-imm.c: Likewise.
* gcc.target/aarch64/atomic-op-int.c: Likewise.
* gcc.target/aarch64/atomic-op-long.c: Likewise.
* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
* gcc.target/aarch64/atomic-op-release.c: Likewise.
* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
* gcc.target/aarch64/atomic-op-short.c: Likewise.

From-SVN: r193651

11 years agore PR debug/55094 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2224)
Jakub Jelinek [Tue, 20 Nov 2012 08:38:11 +0000 (09:38 +0100)]
re PR debug/55094 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2224)

PR middle-end/55094
* builtins.c (expand_builtin_trap): Add REG_ARGS_SIZE note
on the trap insn for !ACCUMULATE_OUTGOING_ARGS.
* cfgcleanup.c (outgoing_edges_match): Don't look at debug insns
on the first old_insns_match_p call.  For !ACCUMULATE_OUTGOING_ARGS
fail if the last real insn doesn't have REG_ARGS_SIZE note.

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

From-SVN: r193649

11 years agore PR bootstrap/55370 (Bad libgcc.map)
Jakub Jelinek [Tue, 20 Nov 2012 08:36:31 +0000 (09:36 +0100)]
re PR bootstrap/55370 (Bad libgcc.map)

PR bootstrap/55370
* libgcc-std.ver.in: Add GCC_4.8.0 and %inherit for it.

From-SVN: r193648

11 years agore PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer -fsched2-use...
Jakub Jelinek [Tue, 20 Nov 2012 08:34:43 +0000 (09:34 +0100)]
re PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer -fsched2-use-superblocks -fstack-protector -ftree-slp-vectorize)

PR rtl-optimization/54921
* cselib.h (fp_setter_insn): New prototype.
* cselib.c (fp_setter_insn): New function.
(cselib_process_insn): If frame_pointer_needed,
call cselib_invalidate_rtx (stack_pointer_rtx) after
processing a frame pointer setter.
* var-tracking.c (fp_setter): Removed.
(vt_initialize): Use fp_setter_insn instead of fp_setter.

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

From-SVN: r193647

11 years agors6000.md (movdf_hardfloat32): Reorder move constraints so that the traditional float...
Michael Meissner [Tue, 20 Nov 2012 00:55:58 +0000 (00:55 +0000)]
rs6000.md (movdf_hardfloat32): Reorder move constraints so that the traditional floating point loads...

2012-11-19  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.md (movdf_hardfloat32): Reorder move
constraints so that the traditional floating point loads, stores,
and moves are done first, then the VSX loads, stores, and moves,
and finally the GPR loads, stores, and moves so that reload
chooses FPRs over GPRs, and uses the traditional load/store
instructions which provide an offset.
(movdf_hardfloat64): Likewise.

From-SVN: r193645

11 years agoarray_allocator.h: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
Jonathan Wakely [Tue, 20 Nov 2012 00:24:18 +0000 (00:24 +0000)]
array_allocator.h: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.

* include/ext/array_allocator.h: Replace uses of
__GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.

From-SVN: r193644

11 years agoDaily bump.
GCC Administrator [Tue, 20 Nov 2012 00:18:39 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193643

11 years agore PR middle-end/55359 (ICE in simplify_subreg accessing an unaligned subvector)
Richard Sandiford [Mon, 19 Nov 2012 23:28:04 +0000 (23:28 +0000)]
re PR middle-end/55359 (ICE in simplify_subreg accessing an unaligned subvector)

gcc/
PR middle-end/55359
* simplify-rtx.c (simplify_subreg): Return null for invalid offsets.

gcc/testsuite/
* gcc.target/i386/pr55359.c: New test.

From-SVN: r193640

11 years agotypedefs.cc: Check rebind and improve propagate_on_container_move_assignment check.
Jonathan Wakely [Mon, 19 Nov 2012 22:35:11 +0000 (22:35 +0000)]
typedefs.cc: Check rebind and improve propagate_on_container_move_assignment check.

* testsuite/20_util/allocator/requirements/typedefs.cc: Check rebind
and improve propagate_on_container_move_assignment check.

From-SVN: r193639

11 years agostl_algo.h (reverse_copy): Update comment per DR 2074.
Jonathan Wakely [Mon, 19 Nov 2012 22:28:00 +0000 (22:28 +0000)]
stl_algo.h (reverse_copy): Update comment per DR 2074.

* include/bits/stl_algo.h (reverse_copy): Update comment per DR 2074.
* include/bits/unordered_map.h: Apply DR 2005 resolution.
* doc/xml/manual/status_cxx2011.xml: Update per DR 2048.
* include/bits/allocator.h (allocator): Apply DR 2103 resolution.
* include/ext/array_allocator.h: Likewise.
* include/ext/bitmap_allocator.h: Likewise.
* include/ext/malloc_allocator.h: Likewise.
* include/ext/mt_allocator.h: Likewise.
* include/ext/new_allocator.h: Likewise.
* include/ext/pool_allocator.h: Likewise.
* include/ext/throw_allocator.h: Likewise.
* include/ext/alloc_traits.h (__allocator_always_compares_equal): Add
additional specializations.
* include/std/functional: Add comment about DR resolution.
* include/std/future: Likewise.
* include/std/scoped_allocator: Likewise.
* include/std/thread: Likewise.
* testsuite/20_util/allocator/requirements/typedefs.cc: New.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.

From-SVN: r193638

11 years ago* trans-mem.c (execute_tm_mark): Release bb_regions.
Aldy Hernandez [Mon, 19 Nov 2012 22:17:58 +0000 (22:17 +0000)]
* trans-mem.c (execute_tm_mark): Release bb_regions.

From-SVN: r193637

11 years agohashtable.h: Improve comments.
Jonathan Wakely [Mon, 19 Nov 2012 21:33:52 +0000 (21:33 +0000)]
hashtable.h: Improve comments.

* include/bits/hashtable.h: Improve comments.
* include/bits/hashtable_policy.h: Likewise.

From-SVN: r193636

11 years agothread_local-order1.C: Add dg-require-cxa-atexit.
Eric Botcazou [Mon, 19 Nov 2012 18:57:31 +0000 (18:57 +0000)]
thread_local-order1.C: Add dg-require-cxa-atexit.

* g++.dg/tls/thread_local-order1.C: Add dg-require-cxa-atexit.
* g++.dg/tls/thread_local3g.C: Likewise.
* g++.dg/tls/thread_local4g.C: Likewise.
* g++.dg/tls/thread_local5g.C: Likewise.
* g++.dg/tls/thread_local6g.C: Likewise.
* g++.dg/tls/thread_local-cse.C: XFAIL on Solaris 9.
* g++.dg/tls/thread_local2.C: Likewise.
* g++.dg/tls/thread_local2g.C: Likewise.
* g++.dg/tls/thread_local6.C: Likewise.

From-SVN: r193634

11 years agotrans-mem (collect_bb2reg): Stop scanning at irrevocable
Aldy Hernandez [Mon, 19 Nov 2012 18:43:40 +0000 (18:43 +0000)]
trans-mem (collect_bb2reg): Stop scanning at irrevocable

* trans-mem (collect_bb2reg): Stop scanning at irrevocable
* blocks.
(get_bb_regions_instrumented): Add new traverse_clone argument and
use it.
(expand_regions_1): Same.
(expand_region): Same.
(execute_tm_mark): Pass new argument to expand_regions.
(expand_block_edges): Pass new argument to
get_bb_regions_instrumented.
testsuite/
* g++.dg/tm/pr51516.C: Adjust for uninstrumented code path.
* gcc.dg/tm/clone-1.c: New test.

From-SVN: r193633

11 years ago* compare_tests: Add export LC_ALL=C to make sort happier.
Mike Stump [Mon, 19 Nov 2012 18:16:36 +0000 (18:16 +0000)]
* compare_tests: Add export LC_ALL=C to make sort happier.

From-SVN: r193631

11 years agogcc/
Sofiane Naci [Mon, 19 Nov 2012 18:10:09 +0000 (18:10 +0000)]
gcc/
* config/aarch64/aarch64.c
(aarch64_output_mi_thunk): Refactor to generate RTL patterns.

From-SVN: r193630

11 years agoAdd PR bootstrap/55384 to ChangeLog entry.
David Edelsohn [Mon, 19 Nov 2012 18:07:21 +0000 (13:07 -0500)]
Add PR bootstrap/55384 to ChangeLog entry.

From-SVN: r193629

11 years agore PR target/55276 (ppc: callee-saved vector registers not preserved)
David Edelsohn [Mon, 19 Nov 2012 16:58:31 +0000 (11:58 -0500)]
re PR target/55276 (ppc: callee-saved vector registers not preserved)

2012-11-19  Mans Rullgard  <mans@mansr.com>

        PR target/55276
        * config/rs6000/rs6000.c (rs6000_stack_info): Always set vrsave_mask
        for TARGET_ALTIVEC_ABI.  Zero vrsave_save_offset if
        !TARGET_ALTIVEC_VRSAVE.
        (rs6000_emit_prologue): For SAVE_INLINE_VLRs, check vrsave_size
        not vrsave_mask.

From-SVN: r193628

11 years agors6000.c (rs6000_stack_info): Always set vrsave_mask for TARGET_ALTIVEC_ABI.
Mans Rullgard [Mon, 19 Nov 2012 16:55:05 +0000 (16:55 +0000)]
rs6000.c (rs6000_stack_info): Always set vrsave_mask for TARGET_ALTIVEC_ABI.

2012-11-19  Mans Rullgard  <mans@mansr.com>

        * config/rs6000/rs6000.c (rs6000_stack_info): Always set vrsave_mask
        for TARGET_ALTIVEC_ABI.  Zero vrsave_save_offset if
        !TARGET_ALTIVEC_VRSAVE.
        (rs6000_emit_prologue): For SAVE_INLINE_VLRs, check vrsave_size
        not vrsave_mask.

From-SVN: r193627

11 years agore PR translation/53764 (Typo in translatable string: "literalto")
Ian Lance Taylor [Mon, 19 Nov 2012 16:28:04 +0000 (16:28 +0000)]
re PR translation/53764 (Typo in translatable string: "literalto")

PR translation/53764
compiler: Fix typo in error message.

Reported by Roland Stigge.

From-SVN: r193626

11 years ago* system.h (vec_free): Undef.
David Edelsohn [Mon, 19 Nov 2012 14:47:11 +0000 (14:47 +0000)]
* system.h (vec_free): Undef.

From-SVN: r193625

11 years agore PR c++/55368 (Comma before semicolon in struct definition is not rejected)
Paolo Carlini [Mon, 19 Nov 2012 14:41:26 +0000 (14:41 +0000)]
re PR c++/55368 (Comma before semicolon in struct definition is not rejected)

/cp
2012-11-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55368
* parser.c (cp_parser_member_declaration): Emit an error in case
of stray comma at end of member declaration.

/testsuite
2012-11-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55368
* g++.dg/parse/struct-5.C: New.

From-SVN: r193624

11 years ago* class.c (one_inheriting_sig): Don't inherit base copy ctors.
Jason Merrill [Mon, 19 Nov 2012 14:05:59 +0000 (09:05 -0500)]
* class.c (one_inheriting_sig): Don't inherit base copy ctors.

From-SVN: r193623

11 years agore PR c++/55262 ([C++0x] g++.dg/cpp0x/inh-ctor10.C ICEs with -g)
Jason Merrill [Mon, 19 Nov 2012 14:05:48 +0000 (09:05 -0500)]
re PR c++/55262 ([C++0x] g++.dg/cpp0x/inh-ctor10.C ICEs with -g)

PR c++/55262
* method.c (implicitly_declare_fn): Set DECL_PARM_INDEX on
the parms of an inheriting ctor.

From-SVN: r193622

11 years agore PR c++/55261 ([C++0x] ICE (SIGSEGV) when inheriting implicit constructor)
Jason Merrill [Mon, 19 Nov 2012 14:05:36 +0000 (09:05 -0500)]
re PR c++/55261 ([C++0x] ICE (SIGSEGV) when inheriting implicit constructor)

PR c++/55261
* class.c (add_implicitly_declared_members): Use
lookup_fnfields_slot to get the base constructors.

From-SVN: r193621

11 years agore PR middle-end/54630 (GCC 4.8 --enable-languages=c build fails: Undefined symbols...
Jakub Jelinek [Mon, 19 Nov 2012 13:44:15 +0000 (14:44 +0100)]
re PR middle-end/54630 (GCC 4.8 --enable-languages=c build fails: Undefined symbols: ___cxa_guard_acquire and ___cxa_guard_release)

PR middle-end/54630
* tree-ssa-coalesce.c (coalesce_ssa_name): Remove static
keyword from ssa_name_hash var.

* class.c (fixed_type_or_null_ref_ht): New variable.
(fixed_type_or_null): Use it instead of local static ht.

From-SVN: r193620

11 years agolibtool-version: Bump soversion.
Matthias Klose [Mon, 19 Nov 2012 11:49:48 +0000 (11:49 +0000)]
libtool-version: Bump soversion.

2012-11-19  Matthias Klose  <doko@ubuntu.com>

        * libtool-version: Bump soversion.

From-SVN: r193619

11 years agomd.texi: Document define_subst.
Maxim Kuznetsov [Mon, 19 Nov 2012 10:19:20 +0000 (10:19 +0000)]
md.texi: Document define_subst.

        * doc/md.texi: Document define_subst.
        * gensupport.c (MAX_OPERANDS): New define.
        (operand_data): New.
        (match_operand_entries_in_pattern): New.
        (used_operands_numbers): New.
        (subst_true): New.
        (subst_false): New.
        (define_subst_queue): New.
        (define_subst_tail): New.
        (define_subst_attr_queue): New.
        (define_subst_attr_tail): New.
        (has_subst_attribute): New.
        (subst_pattern_match): New.
        (get_alternatives_number): New.
        (alter_output_for_subst_insn): New.
        (alter_attrs_for_subst_insn): New.
        (process_substs_on_one_elem): New.
        (subst_dup): New.
        (process_define_subst): New.
        (duplicate_alternatives): New.
        (duplicate_each_alternative): New.
        (constraints_handler_t): New typedef.
        (alter_constraints): New.
        (adjust_operands_numbers): New.
        (replace_duplicating_operands_in_pattern): New.
        (remove_from_queue): New.
        (process_rtx): Handle define_subst and define_subst_attr.
        (change_subst_attribute): New.
        (alter_predicate_for_insn): Fix formatting.
        (alter_attrs_for_insn): Likewise.
        (alter_output_for_insn): Likewise.
        (mark_operands_from_match_dup): New.
        (mark_operands_used_in_match_dup): New.
        (find_first_unused_number_of_operand): New.
        (renumerate_operands_in_pattern): New.
        (generate_match_dup): New.
        (check_define_attr_duplicates): New.
        (init_rtx_reader_args_cb): Add checking for duplicated attrs and
        processing of define_subst.
        (read_md_rtx): Handle define_subst.
        * read-rtl.c (struct subst_attr_to_iter_mapping): New.
        (substs): New global.
        (apply_subst_iterator): New.
        (bind_subst_iter_and_attr): New.
        (find_subst_iter_by_attr): New.
        (map_attr_string): Handle subst-iterators.
        (add_condition_to_rtx): Handle define_subst.
        (apply_iterators): Likewise.
        (initialize_iterators): Likewise.
        (add_define_attr_for_define_subst): New.
        (add_define_subst_attr): New.
        (read_subst_mapping): New.
        (read_rtx): Handle define_subst_attr.
        (read_rtx_code): Add subst-attributes recognition during reading of
        strings.
        * rtl.def (DEFINE_EXPAND): Add vector of attributes.
        (DEFINE_SUBST): New.
        (DEFINE_SUBST_ATTR): New.

Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r193618

11 years agore PR rtl-optimization/55315 (comparing address to constant is folded in cse)
Tom de Vries [Mon, 19 Nov 2012 09:35:54 +0000 (09:35 +0000)]
re PR rtl-optimization/55315 (comparing address to constant is folded in cse)

2012-11-19  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/55315

* gcc.target/mips/pr55315.c: New test.

From-SVN: r193617

11 years agore PR rtl-optimization/55315 (comparing address to constant is folded in cse)
Tom de Vries [Mon, 19 Nov 2012 09:35:48 +0000 (09:35 +0000)]
re PR rtl-optimization/55315 (comparing address to constant is folded in cse)

2012-11-19  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/55315

* rtlanal.c (nonzero_address_p): Don't assume a nonzero address plus a
const is a nonzero address.

From-SVN: r193616

11 years agoreflect: Fix invalid sharing in valueInterface.
Ian Lance Taylor [Mon, 19 Nov 2012 05:34:08 +0000 (05:34 +0000)]
reflect: Fix invalid sharing in valueInterface.

From-SVN: r193614

11 years agoThis patch addresses the bogus "Invocation mismatch" messages seen in parallel profil...
Teresa Johnson [Mon, 19 Nov 2012 05:20:59 +0000 (05:20 +0000)]
This patch addresses the bogus "Invocation mismatch" messages seen in parallel profiledbootstrap builds of gcc.

This patch addresses the bogus "Invocation mismatch" messages seen in parallel
profiledbootstrap builds of gcc. See PR bootstrap/55051 for a discussion of
why this is occurring and why this checking is inaccurate. Leave it in when
!GCOV_LOCKED, to warn about concurrent update issues requiring locking.

2012-11-18  Teresa Johnson  <tejohnson@google.com>

PR bootstrap/55051
* libgcov.c (gcov_exit): Remove merged program summary
comparison unless !GCOV_LOCKED.

From-SVN: r193612

11 years agoextend.texi: Use @smallexample consistently.
Sandra Loosemore [Mon, 19 Nov 2012 03:55:32 +0000 (22:55 -0500)]
extend.texi: Use @smallexample consistently.

2012-11-18  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi: Use @smallexample consistently.  Add @noindent
when continuing a sentence or paragraph past an example.  Change
tabs to spaces in examples.

From-SVN: r193611

11 years agoDaily bump.
GCC Administrator [Mon, 19 Nov 2012 00:19:24 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r193610