Merge remote-tracking branch 'gnu/gcc-4_8-branch' into 4.8.3
Merge remote-tracking branch 'gnu/gcc-4_8-branch' into 4.8.3
Merge remote-tracking branch 'gnu/gcc-4_8-branch' into 4.8.3
	PR libstdc++/60497
	* include/std/tuple (get): Qualify calls to prevent ADL.
	* testsuite/20_util/tuple/60497.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209842 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209846 138bc75d-0d04-0410-961f-82ee72b054a4
	* configure.ac: Tweak GAS check for LEON instructions on SPARC.
	* configure: Regenerate.
	* config/sparc/sparc.opt (muser-mode): New option.
	* config/sparc/sync.md (atomic_compare_and_swap<mode>_1): Do not enable
	for LEON3.
	(atomic_compare_and_swap_leon3_1): New instruction for LEON3.
	* doc/invoke.texi (SPARC options): Document -muser-mode.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209852 138bc75d-0d04-0410-961f-82ee72b054a4
	* typeck.c (build_reinterpret_cast_1): Pass proper argument to
	warn() in pedantic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209870 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/rs6000/sync.md (AINT mode_iterator): Move definition.
	(loadsync_<mode>): Change mode.
	(load_quadpti, store_quadpti): New.
	(atomic_load<mode>, atomic_store<mode>): Add support for TI mode.
	* config/rs6000/rs6000.md (unspec enum): Add UNSPEC_LSQ.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209877 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209885 138bc75d-0d04-0410-961f-82ee72b054a4
Merge remote-tracking branch 'gnu/gcc-4_8-branch' into 4.8.3
	* config/rs6000/rs6000.md (addti3, subti3): New.

	* gcc.target/powerpc/ti_math1.c: New.
	* gcc.target/powerpc/ti_math2.c: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209913 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209920 138bc75d-0d04-0410-961f-82ee72b054a4
[gcc]
2014-04-30  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from mainline
	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-30  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from mainline
	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/branches/gcc-4_8-branch@209956 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@209964 138bc75d-0d04-0410-961f-82ee72b054a4
Merge remote-tracking branch 'gnu/gcc-4_8-branch' into 4.8.3
Merge remote-tracking branch 'uber/4.8.3' into 4.8.3