2014-04-24  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/43622
gcc/cp/
	* rtti.c (emit_support_tinfos): Do not iterate on
	registered_builtin_types (partial revert).
libstdc++/
	* config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
	* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209748 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Enable TBL for big-endian.

gcc/ChangeLog:
2014-04-11  Alan Lawrence  <alan.lawrence@arm.com>

	* config/aarch64/aarch64.c (aarch64_evpc_tbl): Enable for bigendian.

gcc/testsuite/ChangeLog:
2014-04-11  Alan Lawrence  <alan.lawrence@arm.com>

	* lib/target-supports.exp (check_effective_target_vect_perm): Return
	true for aarch64_be.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209749 138bc75d-0d04-0410-961f-82ee72b054a4
fixup sh bustage after r209483

When making pass::execute functions take a function * argument I missed
the sh_treg_combine pass, so fix that here.

gcc/
	* config/sh/sh_treg_combine.c (sh_treg_combine::execute): Take
	function * argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209751 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Jincheng Miao  <jincheng.miao@gmail.com>

	* zh_CN.po: Fix typo for -mfentry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209752 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Dimitris Papavasiliou  <dpapavas@gmail.com>

	    * flag-types.h (enum ivar_visibility): Add.

c-family:
	    * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.

objc:
	* objc-act.c (objc_ivar_visibility, objc_default_ivar_visibility): Add.
	(objc_init): Initialize objc_default_ivar_visibility.
	(objc_start_class_interface): Use objc_default_ivar_visibility.
	(objc_start_class_implementation): Likewise.
	(objc_lookup_ivar): Implement -fno-local-ivars.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209753 138bc75d-0d04-0410-961f-82ee72b054a4
Link to bug report.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209754 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
	Do _M_alt before _M_next.
	* testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209756 138bc75d-0d04-0410-961f-82ee72b054a4
add recored to gcc/testsuite/ChangeLog for PR c++/57958


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209757 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/60822
	* config/m68k/m68k.md (extendplussidi): Don't allow memory for
	operand 1.

2014-04-24  Jeff Law  <law@redhat.com>

	PR target/60822
	* gcc.c-torture/pr60822.c: New test.
	* gcc.c-torture/pr60822.x: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209759 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree.h (OMP_CLAUSE_LINEAR_GIMPLE_SEQ): Define.
	* gimplify.c (omp_is_private): Change last argument's type to int.
	Only diagnose lastprivate if the simd argument is 1, only diagnose
	linear if the simd argument is 2.
	(gimplify_omp_for): Adjust omp_is_private callers.  When adding
	lastprivate or private, add the clause to OMP_FOR_CLAUSES.  Pass
	GOVD_EXPLICIT to omp_add_variable.  For simd with collapse == 1
	create OMP_CLAUSE_LINEAR rather than OMP_CLAUSE_PRIVATE for var.
	If var != decl and decl is in OMP_CLAUSE_LINEAR, gimplify decl
	increment to OMP_CLAUSE_LINEAR_GIMPLE_SEQ.
	* omp-low.c (scan_sharing_clauses, lower_lastprivate_clauses): Handle
	OMP_CLAUSE_LINEAR_GIMPLE_SEQ.
	* tree-nested.c (convert_nonlocal_omp_clauses,
	convert_local_omp_clauses): Handle OMP_CLAUSE_LINEAR.

	* testsuite/libgomp.c/simd-7.c: New test.
	* testsuite/libgomp.c/simd-8.c: New test.
	* testsuite/libgomp.c/simd-9.c: New test.
	* testsuite/libgomp.c/loop-16.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209760 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/c/
	* c-parser.c (c_parser_omp_atomic): Allow seq_cst before
	atomic-clause, allow comma in between atomic-clause and
	seq_cst.
gcc/cp/
	* parser.c (cp_parser_omp_atomic): Allow seq_cst before
	atomic-clause, allow comma in between atomic-clause and
	seq_cst.
gcc/testsuite/
	* c-c++-common/gomp/atomic-16.c: Remove all dg-error directives.
	Replace load with read and store with write.
libgomp/
	* testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
	atomic type clauses in any order and optional comma in between.
	* testsuite/libgomp.c++/atomic-15.C: Likewise.
	* testsuite/libgomp.c/atomic-17.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209762 138bc75d-0d04-0410-961f-82ee72b054a4
        * c-parser.c (c_parser_sizeof_expression): Reorganize slightly to
        avoid goto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209765 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Vishnu K S  <Vishnu.k_s@atmel.com>

	* gcc/config/avr/avr.c: Add comment on why -fdelete-null-pointer-checks
	is disabled.

2014-04-24  Vishnu K S  <Vishnu.k_s@atmel.com>

	* gcc/testsuite/gcc.dg/tree-ssa/isolate-1.c: Skip test if
	keeps_null_pointer_checks.
	* gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c: Ditto
	* gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c: Ditto
	* gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c: Ditto
	* gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c: Ditto

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209767 138bc75d-0d04-0410-961f-82ee72b054a4
[gcc]
2014-04-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* doc/extend.texi (PowerPC Built-in Functions): Document new
	powerpc extended divide, bcd, pack/unpack 128-bit, builtin
	functions.
	(PowerPC AltiVec/VSX Built-in Functions): Likewise.

	* config/rs6000/predicates.md (const_0_to_3_operand): New
	predicate to match 0..3 integer constants.

	* config/rs6000/rs6000-builtin.def (BU_DFP_MISC_1): Add new macros
	to support adding miscellaneous builtin functions.
	(BU_DFP_MISC_2): Likewise.
	(BU_P7_MISC_1): Likewise.
	(BU_P7_MISC_2): Likewise.
	(BU_P8V_MISC_3): Likewise.
	(BU_MISC_1): Likewise.
	(BU_MISC_2): Likewise.
	(DIVWE): Add extended divide builtin functions.
	(DIVWEO): Likewise.
	(DIVWEU): Likewise.
	(DIVWEUO): Likewise.
	(DIVDE): Likewise.
	(DIVDEO): Likewise.
	(DIVDEU): Likewise.
	(DIVDEUO): Likewise.
	(DXEX): Add decimal floating-point builtin functions.
	(DXEXQ): Likewise.
	(DDEDPD): Likewise.
	(DDEDPDQ): Likewise.
	(DENBCD): Likewise.
	(DENBCDQ): Likewise.
	(DIEX): Likewise.
	(DIEXQ): Likewise.
	(DSCLI): Likewise.
	(DSCLIQ): Likewise.
	(DSCRI): Likewise.
	(DSCRIQ): Likewise.
	(CDTBCD): Add new BCD builtin functions.
	(CBCDTD): Likewise.
	(ADDG6S): Likewise.
	(BCDADD): Likewise.
	(BCDADD_LT): Likewise.
	(BCDADD_EQ): Likewise.
	(BCDADD_GT): Likewise.
	(BCDADD_OV): Likewise.
	(BCDSUB): Likewise.
	(BCDSUB_LT): Likewise.
	(BCDSUB_EQ): Likewise.
	(BCDSUB_GT): Likewise.
	(BCDSUB_OV): Likewise.
	(PACK_TD): Add new pack/unpack 128-bit type builtin functions.
	(UNPACK_TD): Likewise.
	(PACK_TF): Likewise.
	(UNPACK_TF): Likewise.
	(UNPACK_TF_0): Likewise.
	(UNPACK_TF_1): Likewise.
	(PACK_V1TI): Likewise.
	(UNPACK_V1TI): Likewise.

	* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Add
	support for decimal floating point builtin functions.
	(rs6000_expand_ternop_builtin): Add checks for the new builtin
	functions that take constant arguments.
	(rs6000_invalid_builtin): Add decimal floating point builtin
	support.
	(rs6000_init_builtins): Setup long double, _Decimal64, and
	_Decimal128 types for new builtin functions.
	(builtin_function_type): Set the unsigned flags appropriately for
	the new builtin functions.
	(rs6000_opt_masks): Add support for decimal floating point builtin
	functions.

	* config/rs6000/rs6000.h (RS6000_BTM_DFP): Add support for decimal
	floating point builtin functions.
	(RS6000_BTM_COMMON): Likewise.
	(RS6000_BTI_long_double): Likewise.
	(RS6000_BTI_dfloat64): Likewise.
	(RS6000_BTI_dfloat128): Likewise.
	(long_double_type_internal_node): Likewise.
	(dfloat64_type_internal_node): Likewise.
	(dfloat128_type_internal_node): Likewise.

	* config/rs6000/altivec.h (UNSPEC_BCDADD): Add support for ISA
	2.07 bcd arithmetic instructions.
	(UNSPEC_BCDSUB): Likewise.
	(UNSPEC_BCD_OVERFLOW): Likewise.
	(UNSPEC_BCD_ADD_SUB): Likewise.
	(bcd_add_sub): Likewise.
	(BCD_TEST): Likewise.
	(bcd<bcd_add_sub>): Likewise.
	(bcd<bcd_add_sub>_test): Likewise.
	(bcd<bcd_add_sub>_test2): Likewise.
	(bcd<bcd_add_sub>_<code>): Likewise.
	(peephole2 for combined bcd ops): Likewise.

	* config/rs6000/dfp.md (UNSPEC_DDEDPD): Add support for new
	decimal floating point builtin functions.
	(UNSPEC_DENBCD): Likewise.
	(UNSPEC_DXEX): Likewise.
	(UNSPEC_DIEX): Likewise.
	(UNSPEC_DSCLI): Likewise.
	(UNSPEC_DSCRI): Likewise.
	(D64_D128): Likewise.
	(dfp_suffix): Likewise.
	(dfp_ddedpd_<mode>): Likewise.
	(dfp_denbcd_<mode>): Likewise.
	(dfp_dxex_<mode>): Likewise.
	(dfp_diex_<mode>): Likewise.
	(dfp_dscli_<mode>): Likewise.
	(dfp_dscri_<mode>): Likewise.

	* config/rs6000/rs6000.md (UNSPEC_ADDG6S): Add support for new BCD
	builtin functions.
	(UNSPEC_CDTBCD): Likewise.
	(UNSPEC_CBCDTD): Likewise.
	(UNSPEC_DIVE): Add support for new extended divide builtin
	functions.
	(UNSPEC_DIVEO): Likewise.
	(UNSPEC_DIVEU): Likewise.
	(UNSPEC_DIVEUO): Likewise.
	(UNSPEC_UNPACK_128BIT): Add support for new builtin functions to
	pack/unpack 128-bit types.
	(UNSPEC_PACK_128BIT): Likewise.
	(idiv_ldiv): New mode attribute to set the 32/64-bit divide type.
	(udiv<mode>3): Use idiv_ldiv mode attribute.
	(div<mode>3): Likewise.
	(addg6s): Add new BCD builtin functions.
	(cdtbcd): Likewise.
	(cbcdtd): Likewise.
	(UNSPEC_DIV_EXTEND): Add support for new extended divide
	instructions.
	(div_extend): Likewise.
	(div<div_extend>_<mode>"): Likewise.
	(FP128_64): Add support for new builtin functions to pack/unpack
	128-bit types.
	(unpack<mode>): Likewise.
	(unpacktf_0): Likewise.
	(unpacktf_1): Likewise.
	(unpack<mode>_dm): Likewise.
	(unpack<mode>_nodm): Likewise.
	(pack<mode>): Likewise.
	(unpackv1ti): Likewise.
	(packv1ti): Likewise.

[gcc/testsuite]
2014-04-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/pack01.c: New test to test the new pack and
	unpack builtin functionss for 128-bit types.
	* gcc.target/powerpc/pack02.c: Likewise.
	* gcc.target/powerpc/pack03.c: Likewise.
	* gcc.target/powerpc/extend-divide-1.c: New test to test extended
	divide builtin functionss.
	* gcc.target/powerpc/extend-divide-2.c: Likewise.
	* gcc.target/powerpc/bcd-1.c: New test for the new BCD builtin
	functions.
	* gcc.target/powerpc/bcd-2.c: Likewise.
	* gcc.target/powerpc/bcd-3.c: Likewise.
	* gcc.target/powerpc/dfp-builtin-1.c: New test for the new DFP
	builtin functionss.
	* gcc.target/powerpc/dfp-builtin-2.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209768 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209772 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-24  Cong Hou  <congh@google.com>

    PR tree-optimization/60896
    * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Pick up
    all statements in PATTERN_DEF_SEQ in recognized widen-mult pattern.
    (vect_mark_pattern_stmts): Set the def type of all statements in
    PATTERN_DEF_SEQ as vect_internal_def.

2014-04-24  Cong Hou  <congh@google.com>

    PR tree-optimization/60896
    * g++.dg/vect/pr60896.cc: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209773 138bc75d-0d04-0410-961f-82ee72b054a4
	* c.opt (Wshadow-ivar): Default to on.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209774 138bc75d-0d04-0410-961f-82ee72b054a4
	PR go/60931

runtime: Fix garbage collector issue with non 4kB system page size

The go garbage collector tracks memory in terms of 4kB pages.
Most of the code checks getpagesize() at runtime and does the
right thing.

On a 64kB ppc64 box I see SEGVs in long running processes
which has been diagnosed as a bug in scavengelist.
scavengelist does a madvise(MADV_DONTNEED) without rounding
the arguments to the system page size.  A strace of one of the
failures shows the problem:

madvise(0xc211030000, 4096, MADV_DONTNEED) = 0

The kernel rounds the length up to 64kB and we mark 60kB of
valid data as no longer needed.

Round start up to a system page and end down before calling
madvise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209777 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-25  Richard Biener  <rguenther@suse.de>

	PR ipa/60911
	* passes.c (apply_ipa_transforms): Inline into only caller ...
	(execute_one_pass): ... here.  Properly bring in function
	bodies for nodes we want to apply IPA transforms to.

	* gcc.dg/lto/pr60911_0.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209779 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-25  Richard Biener  <rguenther@suse.de>

	PR ipa/60912
	* tree-ssa-structalias.c (ipa_pta_execute): Compute direct
	call stmt use/clobber sets during stmt walk instead of
	walking the possibly incomplete set of caller edges.

	* g++.dg/opt/pr60912.C: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209780 138bc75d-0d04-0410-961f-82ee72b054a4