r210344 - in /branches/ibm/gcc-4_8-branch: gcc/...

bergner@gcc.gnu.org bergner@gcc.gnu.org
Mon May 12 23:08:00 GMT 2014


Author: bergner
Date: Mon May 12 23:08:22 2014
New Revision: 210344

URL: http://gcc.gnu.org/viewcvs?rev=210344&root=gcc&view=rev
Log:
	Reapply the old IBM 4.8 branch patches that are not upstream.

gcc/
	Back port mainline subversion id 209025.
	2014-04-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/60735
	* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): If we have
	software floating point or no floating point registers, do not
	allow any type in the FPRs.  Eliminate a test for SPE SIMD types
	in GPRs that occurs after we tested for GPRs that would never be
	true.

	Back port from main line:
	2014-03-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/constraints.md (wD constraint): New constraint to
	match the constant integer to get the top DImode/DFmode out of a
	vector in a VSX register.

	* config/rs6000/predicates.md (vsx_scalar_64bit): New predicate to
	match the constant integer to get the top DImode/DFmode out of a
	vector in a VSX register.

	* config/rs6000/rs6000.c (rs6000_debug_reg_global): If
	-mdebug=reg, print value of VECTOR_ELEMENT_SCALAR_64BIT.

	* config/rs6000/rs6000.h (VECTOR_ELEMENT_SCALAR_64BIT): Macro to
	define the top 64-bit vector element.

	* config/rs6000/vsx.md (vsx_extract_<mode>, V2DI/V2DF modes):
	Optimize vec_extract of 64-bit values, where the value being
	extracted is in the top word, where we can use scalar
	instructions.  Add direct move and store support.  Combine the big
	endian/little endian vector select load support into a single insn.
	(vsx_extract_<mode>_internal1): Likewise.
	(vsx_extract_<mode>_internal2): Likewise.
	(vsx_extract_<mode>_load): Likewise.
	(vsx_extract_<mode>_store): Likewise.
	(vsx_extract_<mode>_zero): Delete, big and little endian insns are
	combined into vsx_extract_<mode>_load.
	(vsx_extract_<mode>_one_le): Likewise.

	* doc/md.texi (PowerPC and IBM RS6000 constraints): Document wD
	constraint.

	* gcc.target/powerpc/vsx-extract-1.c: New test to test VSX
	vec_select optimizations.
	* gcc.target/powerpc/vsx-extract-2.c: Likewise.
	* gcc.target/powerpc/vsx-extract-3.c: Likewise.

	PR target/60672
	* gcc.target/powerpc/pr60676.c: New file, make sure xxsldwi and
	xxpermdi builtins are supported.

	Backport from mainline
	2013-08-01  Fabien Chêne  <fabien@gcc.gnu.org>

	PR c++/54537
	* include/tr1/cmath: Remove pow(double,double) overload, remove a
	duplicated comment about DR 550. Add a comment to explain the issue.
	* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.

gcc/testsuite/

	Back port from mainline
	2013-08-01  Fabien Chêne  <fabien@gcc.gnu.org>
		    Peter Bergner  <bergner@vnet.ibm.com>

	PR c++/54537
	* g++.dg/overload/using3.C: New.
	* g++.dg/overload/using2.C: Adjust.
	* g++.dg/lookup/using9.C: Likewise.

gcc/cp/
	Back port from mainline
	2013-08-01  Fabien Chêne  <fabien@gcc.gnu.org>

	PR c++/54537
	* cp-tree.h: Check OVL_USED with OVERLOAD_CHECK.
	* name-lookup.c (do_nonmember_using_decl): Make sure we have an
	OVERLOAD before calling OVL_USED. Call diagnose_name_conflict
	instead of issuing an error without mentioning the conflicting
	declaration.

libgcc/
	* config/rs6000/ibm-ldouble.c (pack_ldouble): New function.
	(__gcc_qadd): Use it.
	(__gcc_qmul): Likewise.
	(__gcc_qdiv): Likewise.
	(__gcc_qneg): Likewise.
	(__gcc_stoq): Likewise.
	(__gcc_dtoq): Likewise.


Added:
    branches/ibm/gcc-4_8-branch/libstdc++-v3/testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc
Modified:
    branches/ibm/gcc-4_8-branch/libstdc++-v3/include/tr1/cmath

Changes in other areas also in this revision:
Added:
    branches/ibm/gcc-4_8-branch/gcc/cp/ChangeLog.ibm
    branches/ibm/gcc-4_8-branch/gcc/testsuite/g++.dg/overload/using3.C
    branches/ibm/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/pr60676.c
    branches/ibm/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/vsx-extract-1.c
    branches/ibm/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/vsx-extract-2.c
    branches/ibm/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/vsx-extract-3.c
    branches/ibm/gcc-4_8-branch/libgcc/ChangeLog.ibm
Modified:
    branches/ibm/gcc-4_8-branch/gcc/ChangeLog.ibm
    branches/ibm/gcc-4_8-branch/gcc/config/rs6000/constraints.md
    branches/ibm/gcc-4_8-branch/gcc/config/rs6000/predicates.md
    branches/ibm/gcc-4_8-branch/gcc/config/rs6000/rs6000.c
    branches/ibm/gcc-4_8-branch/gcc/config/rs6000/rs6000.h
    branches/ibm/gcc-4_8-branch/gcc/config/rs6000/vsx.md
    branches/ibm/gcc-4_8-branch/gcc/cp/cp-tree.h
    branches/ibm/gcc-4_8-branch/gcc/cp/name-lookup.c
    branches/ibm/gcc-4_8-branch/gcc/doc/md.texi
    branches/ibm/gcc-4_8-branch/gcc/testsuite/ChangeLog.ibm
    branches/ibm/gcc-4_8-branch/gcc/testsuite/g++.dg/lookup/using9.C
    branches/ibm/gcc-4_8-branch/gcc/testsuite/g++.dg/overload/using2.C
    branches/ibm/gcc-4_8-branch/libgcc/config/rs6000/ibm-ldouble.c



More information about the Libstdc++-cvs mailing list